diff options
author | Matthias Clasen <mclasen@redhat.com> | 2020-09-12 10:58:07 -0400 |
---|---|---|
committer | Matthias Clasen <mclasen@redhat.com> | 2020-09-12 10:58:07 -0400 |
commit | b5f3ac9718fd07165a6298672e5e71be53af3605 (patch) | |
tree | 70f255c2cf71a90663c2ff4e7afb19be6bb2df73 /tests | |
parent | 756c52ef08a3c4cc680f44caf93a6b3c2a44bb56 (diff) | |
download | gtk+-b5f3ac9718fd07165a6298672e5e71be53af3605.tar.gz |
Add a testcase for controls in headerbars
This is meant to help with figuring out entry
selection drag issues.
Diffstat (limited to 'tests')
-rw-r--r-- | tests/testheaderbar.c | 23 | ||||
-rw-r--r-- | tests/testheadercontrols.ui | 52 |
2 files changed, 75 insertions, 0 deletions
diff --git a/tests/testheaderbar.c b/tests/testheaderbar.c index b2a63c459b..16d16629bc 100644 --- a/tests/testheaderbar.c +++ b/tests/testheaderbar.c @@ -357,6 +357,28 @@ create_stacked_headerbar (GtkApplication *app) gtk_window_present (GTK_WINDOW (win)); } +/* controls */ +static void +create_controls (GtkApplication *app) +{ + GtkBuilder *builder; + GtkWidget *win; + const char *ui = "tests/testheadercontrols.ui"; + + if (!g_file_test (ui, G_FILE_TEST_EXISTS)) + { + g_warning ("Can't find %s", ui); + return; + } + + builder = gtk_builder_new_from_file (ui); + + win = (GtkWidget *)gtk_builder_get_object (builder, "window"); + gtk_window_set_application (GTK_WINDOW (win), app); + + gtk_window_present (GTK_WINDOW (win)); +} + /* technorama */ static const char css[] = @@ -517,6 +539,7 @@ struct { { "Fake headerbar", create_fake_headerbar }, { "Split headerbar", create_split_headerbar }, { "Stacked headerbar", create_stacked_headerbar }, + { "Headerbar with controls", create_controls }, { "Technorama", create_technorama }, }; int n_buttons = sizeof (buttons) / sizeof (buttons[0]); diff --git a/tests/testheadercontrols.ui b/tests/testheadercontrols.ui new file mode 100644 index 0000000000..4870f8e35c --- /dev/null +++ b/tests/testheadercontrols.ui @@ -0,0 +1,52 @@ +<?xml version="1.0" encoding="UTF-8"?> +<interface> + <object class="GtkWindow" id="window"> + <property name="default-width">600</property> + <property name="default-height">400</property> + <property name="icon-name">preferences-desktop-font</property> + <child type="titlebar"> + <object class="GtkHeaderBar" id="main-header"> + <property name="hexpand">1</property> + <child type="start"> + <object class="GtkBox"> + <child> + <object class="GtkButton"> + <property name="label">Yes!</property> + <property name="valign">center</property> + </object> + </child> + <child> + <object class="GtkCheckButton"> + <property name="label">Check</property> + <property name="valign">center</property> + </object> + </child> + </object> + </child> + <child type="title"> + <object class="GtkEntry"> + <property name="valign">center</property> + <property name="text">abcdef</property> + </object> + </child> + <child type="end"> + <object class="GtkBox"> + <child> + <object class="GtkScale"> + <property name="draw-value">0</property> + <property name="width-request">100</property> + <property name="adjustment"> + <object class="GtkAdjustment"> + <property name="lower">0</property> + <property name="upper">100</property> + <property name="value">33</property> + </object> + </property> + </object> + </child> + </object> + </child> + </object> + </child> + </object> +</interface> |