[epiphany/gnome-3-4] Replace "system" with system languages when setting spelling dictionaries



commit f15997b3bda27735c0f2f91e48c1f13925814b5e
Author: Martin Robinson <mrobinson igalia com>
Date:   Fri Apr 20 10:30:32 2012 -0700

    Replace "system" with system languages when setting spelling dictionaries
    
    The string "system" is used as a placeholder for the default system
    languages in the preference listing of  spelling dictionaries. Before
    sending this to WebKit to set the spelling dictionaries, we should
    fill in the actual default system languages.

 embed/ephy-embed-prefs.c |   19 +++++++++++++++++++
 1 files changed, 19 insertions(+), 0 deletions(-)
---
diff --git a/embed/ephy-embed-prefs.c b/embed/ephy-embed-prefs.c
index b1073e3..e16c066 100644
--- a/embed/ephy-embed-prefs.c
+++ b/embed/ephy-embed-prefs.c
@@ -386,6 +386,24 @@ webkit_pref_callback_gnome_fonts (GSettings *ephy_settings,
 }
 
 static void
+replace_system_language_with_concrete_language_string (char **languages)
+{
+  int i;
+
+  for (i = 0; i < g_strv_length (languages); i++) {
+    if (g_str_equal (languages[i], "system")) {
+      char **sys_langs;
+
+      g_free (languages[i]);
+      sys_langs = ephy_langs_get_languages ();
+      languages[i] = g_strjoinv (", ", sys_langs);
+
+      g_strfreev (sys_langs);
+    }
+  }
+}
+
+static void
 webkit_pref_callback_enable_spell_checking (GSettings *settings,
                                             char *key,
                                             gpointer data)
@@ -398,6 +416,7 @@ webkit_pref_callback_enable_spell_checking (GSettings *settings,
 
   if (value) {
     languages = g_settings_get_strv (settings, EPHY_PREFS_WEB_LANGUAGE);
+    replace_system_language_with_concrete_language_string (languages);
     langs = g_strjoinv (",", languages);
     g_strdelimit (langs, "-", '_');
     g_strfreev (languages);



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