[epiphany] ephy-embed-prefs: Port preferred languages to WebKit2



commit 815e51df8f3c080aaab113257f6eabb8392f9684
Author: Carlos Garcia Campos <cgarcia igalia com>
Date:   Thu Aug 23 12:09:04 2012 +0200

    ephy-embed-prefs: Port preferred languages to WebKit2
    
    https://bugzilla.gnome.org/show_bug.cgi?id=679685

 embed/ephy-embed-prefs.c |   22 +++++++++++++---------
 1 files changed, 13 insertions(+), 9 deletions(-)
---
diff --git a/embed/ephy-embed-prefs.c b/embed/ephy-embed-prefs.c
index 554d6d5..2c93463 100644
--- a/embed/ephy-embed-prefs.c
+++ b/embed/ephy-embed-prefs.c
@@ -283,6 +283,7 @@ webkit_pref_callback_font_family (GSettings *settings,
   g_free (value);
 }
 
+#ifndef HAVE_WEBKIT2
 /* Part of this code taken from libsoup (soup-session.c) */
 static gchar *
 build_accept_languages_header (GArray *languages)
@@ -325,6 +326,7 @@ build_accept_languages_header (GArray *languages)
 
   return langs_str;
 }
+#endif
 
 /* Based on Christian Persch's code from gecko backend of epiphany
    (old transform_accept_languages_list() function) */
@@ -333,18 +335,15 @@ webkit_pref_callback_accept_languages (GSettings *settings,
                                        char *key,
                                        gpointer data)
 {
-#ifdef HAVE_WEBKIT2
-  /* TODO: Languages */
-#else
+#ifndef HAVE_WEBKIT2
   SoupSession *session;
+  char *webkit_pref = data;
+  char *langs_str;
+#endif
   GArray *array;
   char **languages;
-  char *langs_str;
-  char *webkit_pref;
   int i;
 
-  webkit_pref = data;
-
   languages = g_settings_get_strv (settings, key);
 
   array = g_array_new (TRUE, FALSE, sizeof (char *));
@@ -360,16 +359,21 @@ webkit_pref_callback_accept_languages (GSettings *settings,
 
   ephy_langs_sanitise (array);
 
+#ifdef HAVE_WEBKIT2
+  webkit_web_context_set_preferred_languages (webkit_web_context_get_default (),
+                                              (const char * const *)array->data);
+#else
   langs_str = build_accept_languages_header (array);
 
   /* Update Soup session */
   session = webkit_get_default_session ();
   g_object_set (G_OBJECT (session), webkit_pref, langs_str, NULL);
 
-  g_strfreev (languages);
   g_free (langs_str);
-  g_array_free (array, TRUE);
 #endif
+
+  g_strfreev (languages);
+  g_array_free (array, TRUE);
 }
 
 



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