Title: [99201] trunk/Tools
- Revision
- 99201
- Author
- [email protected]
- Date
- 2011-11-03 09:13:49 -0700 (Thu, 03 Nov 2011)
Log Message
[GTK] Show load progress information in MiniBrowser using WebKit2 GTK+ API
https://bugs.webkit.org/show_bug.cgi?id=71461
Reviewed by Martin Robinson.
* MiniBrowser/gtk/BrowserWindow.c:
(resetEntryProgress): Reset the entry progress after a while when
load has been completed.
(webViewLoadProgressChanged): Update location entry progress.
(browserWindowConstructed): Connect to WebView
notify::estimated-load-progress signal.
Modified Paths
Diff
Modified: trunk/Tools/ChangeLog (99200 => 99201)
--- trunk/Tools/ChangeLog 2011-11-03 16:10:42 UTC (rev 99200)
+++ trunk/Tools/ChangeLog 2011-11-03 16:13:49 UTC (rev 99201)
@@ -1,5 +1,19 @@
2011-11-03 Carlos Garcia Campos <[email protected]>
+ [GTK] Show load progress information in MiniBrowser using WebKit2 GTK+ API
+ https://bugs.webkit.org/show_bug.cgi?id=71461
+
+ Reviewed by Martin Robinson.
+
+ * MiniBrowser/gtk/BrowserWindow.c:
+ (resetEntryProgress): Reset the entry progress after a while when
+ load has been completed.
+ (webViewLoadProgressChanged): Update location entry progress.
+ (browserWindowConstructed): Connect to WebView
+ notify::estimated-load-progress signal.
+
+2011-11-03 Carlos Garcia Campos <[email protected]>
+
[GTK] Remove WebKit2 C API from MiniBrowser
https://bugs.webkit.org/show_bug.cgi?id=71459
Modified: trunk/Tools/MiniBrowser/gtk/BrowserWindow.c (99200 => 99201)
--- trunk/Tools/MiniBrowser/gtk/BrowserWindow.c 2011-11-03 16:10:42 UTC (rev 99200)
+++ trunk/Tools/MiniBrowser/gtk/BrowserWindow.c 2011-11-03 16:13:49 UTC (rev 99201)
@@ -72,6 +72,20 @@
gtk_entry_set_text(GTK_ENTRY(window->uriEntry), webkit_web_view_get_uri(webView));
}
+static gboolean resetEntryProgress(GtkEntry *entry)
+{
+ gtk_entry_set_progress_fraction(entry, 0);
+ return FALSE;
+}
+
+static void webViewLoadProgressChanged(WebKitWebView *webView, GParamSpec *pspec, BrowserWindow *window)
+{
+ gdouble progress = webkit_web_view_get_estimated_load_progress(webView);
+ gtk_entry_set_progress_fraction(GTK_ENTRY(window->uriEntry), progress);
+ if (progress == 1.0)
+ g_timeout_add(500, (GSourceFunc)resetEntryProgress, window->uriEntry);
+}
+
static void browserWindowFinalize(GObject *gObject)
{
G_OBJECT_CLASS(browser_window_parent_class)->finalize(gObject);
@@ -159,6 +173,7 @@
BrowserWindow *window = BROWSER_WINDOW(gObject);
g_signal_connect(window->webView, "notify::uri", G_CALLBACK(webViewURIChanged), window);
+ g_signal_connect(window->webView, "notify::estimated-load-progress", G_CALLBACK(webViewLoadProgressChanged), window);
gtk_box_pack_start(GTK_BOX(window->mainBox), GTK_WIDGET(window->webView), TRUE, TRUE, 0);
gtk_widget_show(GTK_WIDGET(window->webView));
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes