diff options
author | Patrick McDermott <pj@pehjota.net> | 2017-09-29 04:28:58 (EDT) |
---|---|---|
committer | Patrick McDermott <pj@pehjota.net> | 2017-09-29 04:37:46 (EDT) |
commit | 3bc58cbad6e9ae2ff1a3b762653654572508571f (patch) | |
tree | e5e810a8949ec4fcd0d8df2038253083eb886cc1 | |
parent | bdbcce6141fdf67a1bd1a9015b683eec8954b11d (diff) | |
download | marquee-3bc58cbad6e9ae2ff1a3b762653654572508571f.zip marquee-3bc58cbad6e9ae2ff1a3b762653654572508571f.tar.gz marquee-3bc58cbad6e9ae2ff1a3b762653654572508571f.tar.bz2 |
MqTabBody: Try again to rewrite "about:" URIs
-rw-r--r-- | src/tab-body.c | 25 |
1 files changed, 23 insertions, 2 deletions
diff --git a/src/tab-body.c b/src/tab-body.c index 46d655c..04ffcd7 100644 --- a/src/tab-body.c +++ b/src/tab-body.c @@ -489,6 +489,25 @@ resource_load_started_cb(WebKitWebView *web_view, } } +static void +load_changed_cb(WebKitWebView *web_view, + WebKitLoadEvent __attribute__((unused)) load_event) +{ + const gchar *uri; + gchar *rw_uri; + WebKitURIRequest *request; + + uri = webkit_web_view_get_uri(web_view); + g_print("load-changed, uri = %s\n", uri); + + if (g_str_has_prefix(uri, "about:")) { + rw_uri = g_strconcat("mq-about:", uri + strlen("about:"), NULL); + request = webkit_uri_request_new(rw_uri); + g_free(rw_uri); + webkit_web_view_load_request(web_view, request); + } +} + MqTabBody * mq_tab_body_new(MqTab *tab, const gchar *uri) { @@ -514,8 +533,10 @@ mq_tab_body_new(MqTab *tab, const gchar *uri) G_CALLBACK(mouse_target_changed_cb), body); g_signal_connect(body->web_view, "button-press-event", G_CALLBACK(button_press_cb), body); - g_signal_connect(body->web_view, "resource-load-started", - G_CALLBACK(resource_load_started_cb), NULL); + //g_signal_connect(body->web_view, "resource-load-started", + // G_CALLBACK(resource_load_started_cb), NULL); + g_signal_connect(body->web_view, "load-changed", + G_CALLBACK(load_changed_cb), NULL); return body; } |