[gnome-initial-setup] language: Ensure that the locale region matches user's selected language



commit 442c9e0d599cd349a016c9b81ae4e57818ead780
Author: Mario Sanchez Prada <mario endlessm com>
Date:   Mon Sep 28 18:31:51 2015 +0100

    language: Ensure that the locale region matches user's selected language
    
    Always reset the org.gnome.system.locale.region GSetting property when
    running g-i-s, to ensure that the language used for region-dependant
    format strings is consistent with the language selected by the user.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=754522

 .../pages/language/gis-language-page.c             |   12 +++++++++++-
 1 files changed, 11 insertions(+), 1 deletions(-)
---
diff --git a/gnome-initial-setup/pages/language/gis-language-page.c 
b/gnome-initial-setup/pages/language/gis-language-page.c
index 9bf3250..3c807f8 100644
--- a/gnome-initial-setup/pages/language/gis-language-page.c
+++ b/gnome-initial-setup/pages/language/gis-language-page.c
@@ -26,6 +26,9 @@
 
 #define PAGE_ID "language"
 
+#define GNOME_SYSTEM_LOCALE_DIR "org.gnome.system.locale"
+#define REGION_KEY "region"
+
 #include "config.h"
 #include "language-resources.h"
 #include "gis-welcome-widget.h"
@@ -113,8 +116,9 @@ language_changed (CcLanguageChooser  *chooser,
                   GisLanguagePage    *page)
 {
   GisLanguagePagePrivate *priv = gis_language_page_get_instance_private (page);
-  ActUser *user;
   GisDriver *driver;
+  GSettings *region_settings;
+  ActUser *user;
 
   priv->new_locale_id = cc_language_chooser_get_language (chooser);
   driver = GIS_PAGE (page)->driver;
@@ -133,6 +137,12 @@ language_changed (CcLanguageChooser  *chooser,
                                       page);
       }
   }
+
+  /* Ensure we won't override the selected language for format strings */
+  region_settings = g_settings_new (GNOME_SYSTEM_LOCALE_DIR);
+  g_settings_reset (region_settings, REGION_KEY);
+  g_object_unref (region_settings);
+
   user = act_user_manager_get_user (act_user_manager_get_default (),
                                     g_get_user_name ());
   if (act_user_is_loaded (user))


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