From af2fcfac9d9c4618d4f32ce34b51f869497aa8e5 Mon Sep 17 00:00:00 2001 From: Daniel Carl Date: Mon, 31 Dec 2012 16:12:06 +0100 Subject: [PATCH] Show hovered link url in urlbar. --- src/main.c | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/src/main.c b/src/main.c index 0b16424..fe3d6f3 100644 --- a/src/main.c +++ b/src/main.c @@ -48,6 +48,7 @@ static gboolean vp_new_window_policy_cb( WebKitWebNavigationAction* navig, WebKitWebPolicyDecision* policy, gpointer data); static WebKitWebView* vp_create_new_webview_cb(WebKitWebView* webview, WebKitWebFrame* frame, gpointer data); static void vp_create_new_webview_uri_cb(WebKitWebView* view, GParamSpec param_spec); +static void vp_hover_link_cb(WebKitWebView* webview, const gchar* titl, const char* link, gpointer data); /* functions */ static gboolean vp_process_input(const char* input); @@ -622,6 +623,7 @@ static void vp_setup_signals(void) "signal::button-release-event", G_CALLBACK(vp_button_relase_cb), NULL, "signal::new-window-policy-decision-requested", G_CALLBACK(vp_new_window_policy_cb), NULL, "signal::create-web-view", G_CALLBACK(vp_create_new_webview_cb), NULL, + "signal::hovering-over-link", G_CALLBACK(vp_hover_link_cb), NULL, NULL ); @@ -713,6 +715,17 @@ static void vp_create_new_webview_uri_cb(WebKitWebView* view, GParamSpec param_s vp_load_uri(&a); } +static void vp_hover_link_cb(WebKitWebView* webview, const gchar* titl, const char* link, gpointer data) +{ + if (link) { + gchar* message = g_strdup_printf("Link: %s", link); + gtk_label_set_text(GTK_LABEL(vp.gui.statusbar.left), message); + g_free(message); + } else { + vp_update_urlbar(webkit_web_view_get_uri(webview)); + } +} + int main(int argc, char* argv[]) { static gchar* winid = NULL; -- 2.20.1