added status bar containing the target url
[prss.git] / src / webbrowser.c
index 9204f57..ebbfce1 100644 (file)
@@ -22,6 +22,7 @@
 #include "webbrowser.h"
 
 static WebKitWebView *view;
+static GtkLabel *w_status;
 
 static gboolean new_window_requested_cbk(WebKitWebView *view,
                                         WebKitWebFrame *frame,
@@ -36,6 +37,17 @@ static gboolean new_window_requested_cbk(WebKitWebView *view,
        return TRUE;
 }
 
+static void hovering_over_link_cbk(WebKitWebView *web_view,
+                                  gchar *title,
+                                  gchar *uri,
+                                  gpointer user_data)
+{
+       if (uri)
+               gtk_label_set_label(w_status, uri);
+       else
+               gtk_label_set_label(w_status, "");
+}
+
 GtkWidget *web_get_widget()
 {
        if (!view) {
@@ -44,7 +56,10 @@ GtkWidget *web_get_widget()
                                 "new-window-policy-decision-requested",
                                 G_CALLBACK(new_window_requested_cbk),
                                 view);
-
+               g_signal_connect(view,
+                                "hovering-over-link",
+                                G_CALLBACK(hovering_over_link_cbk),
+                                NULL);
        }
 
        return GTK_WIDGET(view);
@@ -54,3 +69,8 @@ void web_load(const char *str)
 {
        webkit_web_view_load_string(view, str, NULL, "UTF-8", "file://");
 }
+
+void webbrowser_init(GtkLabel *status)
+{
+       w_status = status;
+}