Title: [99275] trunk/Tools
Revision
99275
Author
[email protected]
Date
2011-11-04 06:37:12 -0700 (Fri, 04 Nov 2011)

Log Message

[GTK] Use web view title as window title in MiniBrowser
https://bugs.webkit.org/show_bug.cgi?id=71544

Reviewed by Philippe Normand.

* MiniBrowser/gtk/BrowserWindow.c:
(webViewURIChanged): Removed extra space.
(webViewTitleChanged): Set window title using
webkit_web_view_get_title().
(browser_window_init): Set initial default window title.
(browserWindowConstructed): Connect to WebView notify::title
signal.

Modified Paths

Diff

Modified: trunk/Tools/ChangeLog (99274 => 99275)


--- trunk/Tools/ChangeLog	2011-11-04 13:19:58 UTC (rev 99274)
+++ trunk/Tools/ChangeLog	2011-11-04 13:37:12 UTC (rev 99275)
@@ -1,3 +1,18 @@
+2011-11-04  Carlos Garcia Campos  <[email protected]>
+
+        [GTK] Use web view title as window title in MiniBrowser
+        https://bugs.webkit.org/show_bug.cgi?id=71544
+
+        Reviewed by Philippe Normand.
+
+        * MiniBrowser/gtk/BrowserWindow.c:
+        (webViewURIChanged): Removed extra space.
+        (webViewTitleChanged): Set window title using
+        webkit_web_view_get_title().
+        (browser_window_init): Set initial default window title.
+        (browserWindowConstructed): Connect to WebView notify::title
+        signal.
+
 2011-11-04  Tor Arne Vestbø  <[email protected]>
 
         [Qt] Refactor and clean up the qmake build system

Modified: trunk/Tools/MiniBrowser/gtk/BrowserWindow.c (99274 => 99275)


--- trunk/Tools/MiniBrowser/gtk/BrowserWindow.c	2011-11-04 13:19:58 UTC (rev 99274)
+++ trunk/Tools/MiniBrowser/gtk/BrowserWindow.c	2011-11-04 13:37:12 UTC (rev 99275)
@@ -49,6 +49,7 @@
     GtkWindowClass parent;
 };
 
+static const char *defaultWindowTitle = "WebKitGTK+ MiniBrwoser";
 static gint windowCount = 0;
 
 G_DEFINE_TYPE(BrowserWindow, browser_window, GTK_TYPE_WINDOW)
@@ -81,11 +82,17 @@
     webkit_web_view_go_forward(window->webView);
 }
 
-static void webViewURIChanged(WebKitWebView *webView,  GParamSpec *pspec, BrowserWindow *window)
+static void webViewURIChanged(WebKitWebView *webView, GParamSpec *pspec, BrowserWindow *window)
 {
     gtk_entry_set_text(GTK_ENTRY(window->uriEntry), webkit_web_view_get_uri(webView));
 }
 
+static void webViewTitleChanged(WebKitWebView *webView, GParamSpec *pspec, BrowserWindow *window)
+{
+    const char *title = webkit_web_view_get_title(webView);
+    gtk_window_set_title(GTK_WINDOW(window), title ? title : defaultWindowTitle);
+}
+
 static gboolean resetEntryProgress(GtkEntry *entry)
 {
     gtk_entry_set_progress_fraction(entry, 0);
@@ -206,6 +213,7 @@
 {
     g_atomic_int_inc(&windowCount);
 
+    gtk_window_set_title(GTK_WINDOW(window), defaultWindowTitle);
     gtk_window_set_default_size(GTK_WINDOW(window), 800, 600);
 
     window->uriEntry = gtk_entry_new();
@@ -256,6 +264,7 @@
 
     g_signal_connect(window->webView, "notify::uri", G_CALLBACK(webViewURIChanged), window);
     g_signal_connect(window->webView, "notify::estimated-load-progress", G_CALLBACK(webViewLoadProgressChanged), window);
+    g_signal_connect(window->webView, "notify::title", G_CALLBACK(webViewTitleChanged), window);
 
     WebKitBackForwardList *backForwadlist = webkit_web_view_get_back_forward_list(window->webView);
     g_signal_connect(backForwadlist, "changed", G_CALLBACK(backForwadlistChanged), window);
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes

Reply via email to