[gnome-initial-setup/gnome-3-8: 11/12] language: Make sure the initially selected language gets saved
- From: Rui Matos <rtcm src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-initial-setup/gnome-3-8: 11/12] language: Make sure the initially selected language gets saved
- Date: Mon, 17 Jun 2013 22:12:31 +0000 (UTC)
commit 41766ac96be7d9f81f7aaaf893cf38ea3b7fbe68
Author: Rui Matos <tiagomatos gmail com>
Date: Sat Jun 15 23:22:58 2013 +0200
language: Make sure the initially selected language gets saved
If users just clicked next without explicitly clicking a language row
they'd end up with an empty setting. To prevent that we can write out
the language selected by default on initialization.
https://bugzilla.gnome.org/show_bug.cgi?id=702166
.../pages/language/gis-language-page.c | 27 +++++++++++++------
1 files changed, 18 insertions(+), 9 deletions(-)
---
diff --git a/gnome-initial-setup/pages/language/gis-language-page.c
b/gnome-initial-setup/pages/language/gis-language-page.c
index 48233b4..095ae22 100644
--- a/gnome-initial-setup/pages/language/gis-language-page.c
+++ b/gnome-initial-setup/pages/language/gis-language-page.c
@@ -111,19 +111,13 @@ user_loaded (GObject *object,
}
static void
-language_changed (CcLanguageChooser *chooser,
- GParamSpec *pspec,
- GisLanguagePage *page)
+set_language (GisLanguagePage *page)
{
GisLanguagePagePrivate *priv = page->priv;
+ GisDriver *driver = GIS_PAGE (page)->driver;
ActUser *user;
- GisDriver *driver;
- priv->new_locale_id = cc_language_chooser_get_language (chooser);
- driver = GIS_PAGE (page)->driver;
-
- setlocale (LC_MESSAGES, priv->new_locale_id);
- gis_driver_locale_changed (driver);
+ priv->new_locale_id = cc_language_chooser_get_language (CC_LANGUAGE_CHOOSER (priv->language_chooser));
if (gis_driver_get_mode (driver) == GIS_DRIVER_MODE_NEW_USER) {
if (g_permission_get_allowed (priv->permission)) {
@@ -150,6 +144,19 @@ language_changed (CcLanguageChooser *chooser,
}
static void
+language_changed (CcLanguageChooser *chooser,
+ GParamSpec *pspec,
+ GisLanguagePage *page)
+{
+ GisLanguagePagePrivate *priv = page->priv;
+ GisDriver *driver = GIS_PAGE (page)->driver;
+
+ set_language (page);
+ setlocale (LC_MESSAGES, priv->new_locale_id);
+ gis_driver_locale_changed (driver);
+}
+
+static void
localed_proxy_ready (GObject *source,
GAsyncResult *res,
gpointer data)
@@ -208,6 +215,8 @@ gis_language_page_constructed (GObject *object)
g_object_unref (bus);
}
+ set_language (page);
+
gis_page_set_complete (GIS_PAGE (page), TRUE);
gtk_widget_show (GTK_WIDGET (page));
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]