Summary Files Commits Branches @commit @diff @stats
diff options
context:
space:
mode:
Commit61b316b14a139c3905f3ccf78e8caf2e5551e8d8 (patch)
Author
 Haelwenn (lanodan) Monnier <contact@hacktivis.me>
2019-01-07 17:52:58 +0100
Committer
 Haelwenn (lanodan) Monnier <contact@hacktivis.me>
2019-01-07 17:52:58 +0100
Files2fffddaf80b4ba2e5bd54d87d6adc5bbe4a1b127
goodwolf-61b316b14a139c3905f3ccf78e8caf2e5551e8d8.tar
goodwolf-61b316b14a139c3905f3ccf78e8caf2e5551e8d8.tar.gz
goodwolf-61b316b14a139c3905f3ccf78e8caf2e5551e8d8.zip
Parentedf42bcc6f542fbaff599f0a9b6c1b764970c5e7 (diff)
badwolf.c: Handle notify::title
1 files changed, 18 insertions, 0 deletions
-rw-r--r--badwolf.c18
diff --git a/badwolf.c b/badwolf.c
index 82e7acc..bec900a 100644
--- a/badwolf.c
+++ b/badwolf.c
@@ -52,6 +52,23 @@ static gboolean WebViewCb_notify__uri(WebKitWebView *webView, GParamSpec *pspec,
return TRUE;
}
+static gboolean WebViewCb_notify__title(WebKitWebView *webView, GParamSpec *pspec, gpointer user_data) {
+ const gchar *title;
+ struct Client *browser = (struct Client *)user_data;
+
+ title = webkit_web_view_get_title(browser->webView);
+
+ if (title == NULL)
+ title = webkit_web_view_get_uri(browser->webView);
+
+ if (title == NULL)
+ title = "BadWolf";
+
+ gtk_window_set_title(GTK_WINDOW(browser->main_window), title);
+
+ return TRUE;
+}
+
int main(int argc, char *argv[])
{
struct Client *browser = calloc(1, sizeof(struct Client));
@@ -76,6 +93,7 @@ int main(int argc, char *argv[])
g_signal_connect(browser->webView, "close", G_CALLBACK(WebViewCb_close), browser->main_window);
g_signal_connect(browser->webView, "web-process-terminated", G_CALLBACK(WebViewCb_web_process_terminated), NULL);
g_signal_connect(browser->webView, "notify::uri", G_CALLBACK(WebViewCb_notify__uri), browser);
+ g_signal_connect(browser->webView, "notify::title", G_CALLBACK(WebViewCb_notify__title), browser);
WebKitSettings *settings = webkit_web_view_get_settings(browser->webView);