summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobert Ancell <robert.ancell@canonical.com>2018-07-02 16:25:55 +1200
committerGeorges Basile Stavracas Neto <georges.stavracas@gmail.com>2018-07-22 09:54:21 -0300
commit828024e225d7030989aa8ddfa2ba43fb5f7205a5 (patch)
treec768fda19151048beb2d4a5dd77c31dd066a9537
parent148e4c8fd0e8f452519c672fee8354b8b1724018 (diff)
downloadgnome-control-center-828024e225d7030989aa8ddfa2ba43fb5f7205a5.tar.gz
common: Make language chooser dialog match design
Update the chooser to: * Use a search bar at the top of the dialog, not the bottom * Have a larger window * Remove space from around listbox https://wiki.gnome.org/Design/SystemSettings/RegionAndLanguage Merges !129
-rw-r--r--panels/common/cc-language-chooser.c5
-rw-r--r--panels/common/cc-language-chooser.ui46
2 files changed, 23 insertions, 28 deletions
diff --git a/panels/common/cc-language-chooser.c b/panels/common/cc-language-chooser.c
index cf96aca25..6a188216c 100644
--- a/panels/common/cc-language-chooser.c
+++ b/panels/common/cc-language-chooser.c
@@ -42,6 +42,7 @@ struct _CcLanguageChooser {
GtkWidget *done_button;
GtkWidget *no_results;
GtkListBoxRow *more_item;
+ GtkWidget *search_bar;
GtkWidget *language_filter_entry;
GtkWidget *language_listbox;
gboolean showing_extra;
@@ -279,9 +280,8 @@ show_more (CcLanguageChooser *chooser, gboolean visible)
gtk_window_get_size (GTK_WINDOW (chooser), &width, &height);
gtk_widget_set_size_request (GTK_WIDGET (chooser), width, height);
- gtk_window_set_resizable (GTK_WINDOW (chooser), TRUE);
- gtk_widget_set_visible (chooser->language_filter_entry, visible);
+ gtk_search_bar_set_search_mode (GTK_SEARCH_BAR (chooser->search_bar), visible);
gtk_widget_grab_focus (visible ? chooser->language_filter_entry : chooser->language_listbox);
chooser->showing_extra = visible;
@@ -423,6 +423,7 @@ cc_language_chooser_class_init (CcLanguageChooserClass *klass)
gtk_widget_class_set_template_from_resource (widget_class, "/org/gnome/control-center/common/cc-language-chooser.ui");
gtk_widget_class_bind_template_child (widget_class, CcLanguageChooser, done_button);
+ gtk_widget_class_bind_template_child (widget_class, CcLanguageChooser, search_bar);
gtk_widget_class_bind_template_child (widget_class, CcLanguageChooser, language_filter_entry);
gtk_widget_class_bind_template_child (widget_class, CcLanguageChooser, language_listbox);
}
diff --git a/panels/common/cc-language-chooser.ui b/panels/common/cc-language-chooser.ui
index c8e63c134..2c351e9ba 100644
--- a/panels/common/cc-language-chooser.ui
+++ b/panels/common/cc-language-chooser.ui
@@ -5,7 +5,7 @@
<property name="title" translatable="yes">Language</property>
<property name="modal">True</property>
<property name="destroy_with_parent">True</property>
- <property name="resizable">False</property>
+ <property name="default_height">350</property>
<child type="action">
<object class="GtkButton" id="done_button">
<property name="label" translatable="yes">_Done</property>
@@ -31,43 +31,37 @@
<property name="visible">True</property>
<property name="orientation">vertical</property>
<property name="spacing">0</property>
+ <property name="border-width">0</property>
+ <child>
+ <object class="GtkSearchBar" id="search_bar">
+ <property name="visible">True</property>
+ <property name="hexpand">True</property>
+ <child>
+ <object class="GtkSearchEntry" id="language_filter_entry">
+ <property name="visible">True</property>
+ <property name="width_chars">30</property>
+ </object>
+ </child>
+ </object>
+ </child>
<child>
<object class="GtkScrolledWindow">
<property name="visible">True</property>
<property name="hscrollbar-policy">never</property>
<property name="vscrollbar-policy">automatic</property>
<property name="propagate-natural-height">True</property>
- <property name="shadow-type">in</property>
- <property name="margin-start">6</property>
- <property name="margin-end">6</property>
- <property name="margin-top">6</property>
- <property name="margin-bottom">6</property>
+ <property name="min-content-height">200</property>
<child>
- <object class="GtkViewport">
+ <object class="GtkListBox" id="language_listbox">
<property name="visible">True</property>
- <child>
- <object class="GtkListBox" id="language_listbox">
- <property name="visible">True</property>
- <property name="can-focus">True</property>
- <property name="vexpand">True</property>
- <property name="halign">fill</property>
- <property name="valign">fill</property>
- </object>
- </child>
+ <property name="can-focus">True</property>
+ <property name="vexpand">True</property>
+ <property name="halign">fill</property>
+ <property name="valign">fill</property>
</object>
</child>
</object>
</child>
- <child>
- <object class="GtkSearchEntry" id="language_filter_entry">
- <property name="visible">False</property>
- <property name="hexpand">True</property>
- <property name="margin-start">6</property>
- <property name="margin-end">6</property>
- <property name="margin-top">6</property>
- <property name="margin-bottom">6</property>
- </object>
- </child>
</object>
</child>
<action-widgets>