diff --git a/panels/common/cc-language-chooser.c b/panels/common/cc-language-chooser.c index f095602a4..38933d408 100644 --- a/panels/common/cc-language-chooser.c +++ b/panels/common/cc-language-chooser.c @@ -70,7 +70,7 @@ set_locale_id (GtkDialog *chooser, if (g_strcmp0 (locale_id, language) == 0) { gboolean is_extra; - gtk_widget_show (check); + gtk_widget_set_opacity (check, 1.0); /* make sure the selected language is shown */ is_extra = GPOINTER_TO_UINT (g_object_get_data (G_OBJECT (row), "is-extra")); @@ -79,7 +79,7 @@ set_locale_id (GtkDialog *chooser, egg_list_box_refilter (EGG_LIST_BOX (priv->language_list)); } } else { - gtk_widget_hide (check); + gtk_widget_set_opacity (check, 0.0); } } g_list_free (children); @@ -140,13 +140,21 @@ language_widget_new (const gchar *locale_id, widget = padded_label_new (locale_name, is_extra); + /* We add a check on each side of the label to keep it centered. */ check = gtk_image_new (); gtk_image_set_from_icon_name (GTK_IMAGE (check), "object-select-symbolic", GTK_ICON_SIZE_MENU); - gtk_widget_set_no_show_all (check, TRUE); + gtk_widget_set_opacity (check, 0.0); + g_object_set (check, "icon-size", GTK_ICON_SIZE_MENU, NULL); + gtk_box_pack_start (GTK_BOX (widget), check, FALSE, FALSE, 0); + gtk_box_reorder_child (GTK_BOX (widget), check, 0); + + check = gtk_image_new (); + gtk_image_set_from_icon_name (GTK_IMAGE (check), "object-select-symbolic", GTK_ICON_SIZE_MENU); + gtk_widget_set_opacity (check, 0.0); g_object_set (check, "icon-size", GTK_ICON_SIZE_MENU, NULL); gtk_box_pack_start (GTK_BOX (widget), check, FALSE, FALSE, 0); if (g_strcmp0 (locale_id, current_locale_id) == 0) - gtk_widget_show (check); + gtk_widget_set_opacity (check, 1.0); g_object_set_data (G_OBJECT (widget), "check", check); g_object_set_data_full (G_OBJECT (widget), "locale-id", g_strdup (locale_id), g_free);