File devhelp-webkit.patch of Package devhelp

diff -Nurd -x'*~' devhelp-0.23.orig/src/dh-window.c devhelp-0.23/src/dh-window.c
--- devhelp-0.23.orig/src/dh-window.c	2008-11-28 10:56:04.000000000 -0500
+++ devhelp-0.23/src/dh-window.c	2009-07-08 03:36:23.000000000 -0400
@@ -133,6 +133,20 @@
 #define GET_PRIVATE(instance) G_TYPE_INSTANCE_GET_PRIVATE \
   (instance, DH_TYPE_WINDOW, DhWindowPriv);
 
+
+static void
+_webkit_web_view_open_compat (WebKitWebView *view,
+                              const gchar   *uri)
+{
+        gchar *real_uri;
+        if (g_path_is_absolute(uri))
+                real_uri = g_strdup_printf ("file://%s", uri);
+        else
+                real_uri = g_strdup (uri);
+        webkit_web_view_load_uri (view, real_uri);
+        g_free(real_uri);
+}
+
 static void
 window_activate_new_window (GtkAction *action,
                             DhWindow  *window)
@@ -803,7 +817,7 @@
                                          window);
 
         uri = dh_link_get_uri (link);
-        webkit_web_view_open (view, uri);
+        _webkit_web_view_open_compat (view, uri);
         g_free (uri);
 
         g_signal_handlers_unblock_by_func (view,
@@ -827,7 +841,7 @@
         view = window_get_active_web_view (window);
 
         uri = dh_link_get_uri (link);
-        webkit_web_view_open (view, uri);
+        _webkit_web_view_open_compat (view, uri);
         g_free (uri);
 
         window_check_history (window, view);
@@ -1093,7 +1107,7 @@
         }
 
         if (location) {
-                webkit_web_view_open (WEBKIT_WEB_VIEW (view), location);
+                _webkit_web_view_open_compat (WEBKIT_WEB_VIEW (view), location);
         } else {
                 webkit_web_view_open (WEBKIT_WEB_VIEW (view), "about:blank");
         }
@@ -1357,6 +1371,6 @@
         priv = window->priv;
 
         web_view = window_get_active_web_view (window);
-        webkit_web_view_open (web_view, uri);
+        _webkit_web_view_open_compat (web_view, uri);
         dh_book_tree_select_uri (DH_BOOK_TREE (priv->book_tree), uri);
 }
openSUSE Build Service is sponsored by