[epiphany] Replace "system" with system languages when setting spelling dictionaries



commit 9571561ecfea075e3443e5d7344be8f1ffa9e49e
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]