diff options
author | Patrick McDermott <pj@pehjota.net> | 2017-09-21 23:54:29 (EDT) |
---|---|---|
committer | Patrick McDermott <pj@pehjota.net> | 2017-09-21 23:54:29 (EDT) |
commit | f6c1261a62fa56c593a90ce36a3231671b773a19 (patch) | |
tree | 91ceb2a5a1f74d756a1d6a256a7b40136ff7d514 /src/tab.c | |
parent | 79fe0321de8239e6f7f366943e902df4c8394d21 (diff) | |
download | marquee-f6c1261a62fa56c593a90ce36a3231671b773a19.zip marquee-f6c1261a62fa56c593a90ce36a3231671b773a19.tar.gz marquee-f6c1261a62fa56c593a90ce36a3231671b773a19.tar.bz2 |
Move tab image callback from MqTabChrome to MqTab
Diffstat (limited to 'src/tab.c')
-rw-r--r-- | src/tab.c | 21 |
1 files changed, 19 insertions, 2 deletions
@@ -28,6 +28,13 @@ #include "tab-body.h" static void +update_tab_image(MqTab *tab) +{ + gtk_image_set_from_surface(GTK_IMAGE(tab->tab_image), + webkit_web_view_get_favicon(tab->web_view)); +} + +static void update_tab_label(MqTab *tab) { gtk_label_set_text(GTK_LABEL(tab->tab_label), @@ -36,6 +43,13 @@ update_tab_label(MqTab *tab) } static void +favicon_cb(WebKitWebView __attribute__((unused)) *web_view, + GParamSpec __attribute__((unused)) *paramspec, MqTab *tab) +{ + update_tab_image(tab); +} + +static void title_cb(WebKitWebView __attribute__((unused)) *web_view, GParamSpec __attribute__((unused)) *paramspec, MqTab *tab) { @@ -53,8 +67,11 @@ mq_tab_new(gchar *uri, GtkWidget *tab_image, GtkWidget *tab_label) tab->chrome = mq_tab_chrome_new(uri, tab_image, tab_label); tab->body = mq_tab_body_new(uri); tab->web_view = mq_tab_body_get_web_view(tab->body); - g_signal_connect(tab->web_view, "notify::title", G_CALLBACK(title_cb), - tab); + /* FIXME: Doesn't work? */ + g_signal_connect(tab->web_view, "notify::favicon", + G_CALLBACK(favicon_cb), tab); + g_signal_connect(tab->web_view, "notify::title", + G_CALLBACK(title_cb), tab); mq_tab_chrome_set_web_view(tab->chrome, tab->web_view); tab->container = gtk_grid_new(); |