[gnome-initial-setup] language-page: show/hide the checkmark instead of not creating it
- From: Jasper St. Pierre <jstpierre src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-initial-setup] language-page: show/hide the checkmark instead of not creating it
- Date: Wed, 13 Feb 2013 22:36:59 +0000 (UTC)
commit d6e562bb22817488077c4e668f7b415b151e5823
Author: Jasper St. Pierre <jstpierre mecheye net>
Date: Wed Feb 13 16:50:49 2013 -0500
language-page: show/hide the checkmark instead of not creating it
.../pages/language/gis-language-page.c | 21 ++++++++++++++-----
1 files changed, 15 insertions(+), 6 deletions(-)
---
diff --git a/gnome-initial-setup/pages/language/gis-language-page.c b/gnome-initial-setup/pages/language/gis-language-page.c
index e9ddbdd..f14805a 100644
--- a/gnome-initial-setup/pages/language/gis-language-page.c
+++ b/gnome-initial-setup/pages/language/gis-language-page.c
@@ -69,6 +69,7 @@ struct _GisLanguagePagePrivate
typedef struct {
GtkWidget *box;
+ GtkWidget *checkmark;
gchar *locale_id;
gchar *locale_name;
@@ -157,6 +158,15 @@ language_widget_free (gpointer data)
g_free (widget);
}
+static void
+language_widget_sync_show_checkmark (LanguageWidget *widget)
+{
+ gchar *current_locale_id = cc_common_language_get_current_language ();
+ gboolean should_be_visible = g_str_equal (widget->locale_id, current_locale_id);
+ gtk_widget_set_visible (widget->checkmark, should_be_visible);
+ g_free (current_locale_id);
+}
+
static GtkWidget *
language_widget_new (char *locale_id,
gboolean is_extra)
@@ -171,12 +181,11 @@ language_widget_new (char *locale_id,
widget->locale_name = locale_name;
widget->is_extra = is_extra;
- if (g_strcmp0 (locale_id, current_locale_id) == 0)
- {
- gtk_box_pack_start (GTK_BOX (widget->box),
- gtk_image_new_from_icon_name ("object-select-symbolic", GTK_ICON_SIZE_MENU),
- FALSE, FALSE, 0);
- }
+ widget->checkmark = gtk_image_new_from_icon_name ("object-select-symbolic", GTK_ICON_SIZE_MENU);
+ gtk_box_pack_start (GTK_BOX (widget->box), widget->checkmark,
+ FALSE, FALSE, 0);
+
+ language_widget_sync_show_checkmark (widget);
g_object_set_data_full (G_OBJECT (widget->box), "language-widget", widget,
language_widget_free);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]