[devhelp/webkit2-for-3.4: 2/9] assistant: Use data uris for css and javascript instead of local uris



commit 956be5b9ea2ec03abb40204a84be1b922418046e
Author: Carlos Garcia Campos <cgarcia igalia com>
Date:   Fri Feb 10 11:04:42 2012 +0100

    assistant: Use data uris for css and javascript instead of local uris
    
    This is required by WebKit2 where all local uris used in
    html loaded with load_html() must be in the same directory of the
    base_uri passed to load_html().

 src/dh-assistant-view.c |   21 +++++++++++++++------
 1 files changed, 15 insertions(+), 6 deletions(-)
---
diff --git a/src/dh-assistant-view.c b/src/dh-assistant-view.c
index fc147ee..796f97e 100644
--- a/src/dh-assistant-view.c
+++ b/src/dh-assistant-view.c
@@ -274,7 +274,9 @@ dh_assistant_view_set_link (DhAssistantView *view,
                 gboolean     break_line;
                 const gchar *function;
                 gchar       *stylesheet;
+                gchar       *stylesheet_uri;
                 gchar       *javascript;
+                gchar       *javascript_uri;
                 gchar       *html;
 
                 buf = g_strndup (start, end-start);
@@ -311,16 +313,23 @@ dh_assistant_view_set_link (DhAssistantView *view,
                                                           "assistant",
                                                           "assistant.css",
                                                           NULL);
+                stylesheet_uri = dh_util_create_data_uri_for_filename (stylesheet,
+                                                                       "text/css");
+                g_free (stylesheet);
+
                 javascript = dh_util_build_data_filename ("devhelp",
                                                           "assistant",
                                                           "assistant.js",
                                                           NULL);
+                javascript_uri = dh_util_create_data_uri_for_filename (javascript,
+                                                                       "application/javascript");
+                g_free (javascript);
 
                 html = g_strdup_printf (
                         "<html>"
                         "<head>"
-                        "<link rel=\"stylesheet\" type=\"text/css\" href=\"file://%s\"/>"
-                        "<script src=\"file://%s\"></script>"
+                        "<link rel=\"stylesheet\" type=\"text/css\" href=\"%s\"/>"
+                        "<script src=\"%s\"></script>"
                         "</head>"
                         "<body %s>"
                         "<div class=\"title\">%s: <a href=\"%s\">%s</a></div>"
@@ -328,8 +337,8 @@ dh_assistant_view_set_link (DhAssistantView *view,
                         "<div class=\"content\">%s</div>"
                         "</body>"
                         "</html>",
-                        stylesheet,
-                        javascript,
+                        stylesheet_uri,
+                        javascript_uri,
                         function,
                         dh_link_get_type_as_string (link),
                         dh_link_get_uri (link),
@@ -339,8 +348,8 @@ dh_assistant_view_set_link (DhAssistantView *view,
                         buf);
                 g_free (buf);
 
-                g_free (stylesheet);
-                g_free (javascript);
+                g_free (stylesheet_uri);
+                g_free (javascript_uri);
 
                 priv->snippet_loaded = FALSE;
                 webkit_web_view_load_string (



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]