[libhandy] example: Stop using HdySwipeGroup
- From: Adrien Plazas <aplazas src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [libhandy] example: Stop using HdySwipeGroup
- Date: Thu, 6 May 2021 09:26:17 +0000 (UTC)
commit 7b1dc1e864b14a42471e7ce725cc82667afa7067
Author: Alexander Mikhaylenko <alexm gnome org>
Date: Wed May 5 23:47:59 2021 +0500
example: Stop using HdySwipeGroup
examples/hdy-demo-window.c | 11 +-
examples/hdy-demo-window.ui | 1995 +++++++++++++++++++++----------------------
2 files changed, 974 insertions(+), 1032 deletions(-)
---
diff --git a/examples/hdy-demo-window.c b/examples/hdy-demo-window.c
index 40df189a..7fe9424c 100644
--- a/examples/hdy-demo-window.c
+++ b/examples/hdy-demo-window.c
@@ -100,20 +100,12 @@ update (HdyDemoWindow *self)
{
const gchar *header_bar_name = "default";
- if (g_strcmp0 (gtk_stack_get_visible_child_name (self->stack), "deck") == 0)
- header_bar_name = "deck";
- else if (g_strcmp0 (gtk_stack_get_visible_child_name (self->stack), "search-bar") == 0)
+ if (g_strcmp0 (gtk_stack_get_visible_child_name (self->stack), "search-bar") == 0)
header_bar_name = "search-bar";
gtk_stack_set_visible_child_name (self->header_stack, header_bar_name);
}
-static void
-notify_deck_visible_child_cb (HdyDemoWindow *self)
-{
- update (self);
-}
-
static void
notify_visible_child_cb (GObject *sender,
GParamSpec *pspec,
@@ -513,7 +505,6 @@ hdy_demo_window_class_init (HdyDemoWindowClass *klass)
gtk_widget_class_bind_template_child (widget_class, HdyDemoWindow, avatar_contacts);
gtk_widget_class_bind_template_callback (widget_class, key_pressed_cb);
gtk_widget_class_bind_template_callback (widget_class, notify_visible_child_cb);
- gtk_widget_class_bind_template_callback (widget_class, notify_deck_visible_child_cb);
gtk_widget_class_bind_template_callback (widget_class, back_clicked_cb);
gtk_widget_class_bind_template_callback (widget_class, deck_back_clicked_cb);
gtk_widget_class_bind_template_callback (widget_class, notify_leaflet_transition_cb);
diff --git a/examples/hdy-demo-window.ui b/examples/hdy-demo-window.ui
index db34c928..20dc6fff 100644
--- a/examples/hdy-demo-window.ui
+++ b/examples/hdy-demo-window.ui
@@ -18,183 +18,147 @@
<property name="default_height">576</property>
<signal name="key-press-event" handler="key_pressed_cb" after="yes" swapped="no"/>
<child>
- <object class="HdyLeaflet" id="content_box">
+ <object class="HdyDeck" id="content_deck">
<property name="visible">True</property>
<property name="can_focus">False</property>
+ <property name="vexpand">True</property>
+ <property name="transition-type">over</property>
<property name="can-swipe-back">True</property>
- <property name="width-request">360</property>
<child>
- <object class="GtkBox">
+ <object class="HdyLeaflet" id="content_box">
<property name="visible">True</property>
- <property name="orientation">vertical</property>
+ <property name="can_focus">False</property>
+ <property name="can-swipe-back">True</property>
+ <property name="width-request">360</property>
<child>
- <object class="GtkRevealer" id="header_revealer">
+ <object class="GtkBox">
<property name="visible">True</property>
- <property name="transition-type">slide-down</property>
- <property name="reveal-child" bind-source="window_header_revealer_switch"
bind-property="state" bind-flags="sync-create | bidirectional"/>
+ <property name="orientation">vertical</property>
<child>
- <object class="HdyHeaderBar" id="header_bar">
+ <object class="GtkRevealer" id="header_revealer">
<property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="title" translatable="yes">Handy Demo</property>
- <property name="show_close_button">True</property>
+ <property name="transition-type">slide-down</property>
+ <property name="reveal-child" bind-source="window_header_revealer_switch"
bind-property="state" bind-flags="sync-create | bidirectional"/>
<child>
- <object class="GtkButton">
+ <object class="HdyHeaderBar" id="header_bar">
<property name="visible">True</property>
- <property name="can_focus">True</property>
- <signal name="clicked" handler="theme_variant_button_clicked_cb" swapped="yes"/>
+ <property name="can_focus">False</property>
+ <property name="title" translatable="yes">Handy Demo</property>
+ <property name="show_close_button">True</property>
<child>
- <object class="GtkImage" id="theme_variant_image">
+ <object class="GtkButton">
<property name="visible">True</property>
- <property name="can_focus">False</property>
+ <property name="can_focus">True</property>
+ <signal name="clicked" handler="theme_variant_button_clicked_cb" swapped="yes"/>
+ <child>
+ <object class="GtkImage" id="theme_variant_image">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ </object>
+ </child>
</object>
</child>
- </object>
- </child>
- <child>
- <object class="GtkMenuButton" id="menu_button">
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="focus_on_click">False</property>
- <property name="menu_model">primary_menu</property>
- <property name="use_popover">True</property>
<child>
- <object class="GtkImage">
+ <object class="GtkMenuButton" id="menu_button">
<property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="icon_name">open-menu-symbolic</property>
+ <property name="can_focus">True</property>
+ <property name="focus_on_click">False</property>
+ <property name="menu_model">primary_menu</property>
+ <property name="use_popover">True</property>
+ <child>
+ <object class="GtkImage">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="icon_name">open-menu-symbolic</property>
+ </object>
+ </child>
</object>
+ <packing>
+ <property name="pack_type">end</property>
+ </packing>
</child>
</object>
- <packing>
- <property name="pack_type">end</property>
- </packing>
</child>
</object>
</child>
- </object>
- </child>
- <child>
- <object class="GtkStackSidebar" id="sidebar">
- <property name="width_request">270</property>
- <property name="visible">True</property>
- <property name="vexpand">True</property>
- <property name="can_focus">False</property>
- <property name="stack">stack</property>
- </object>
- </child>
- </object>
- <packing>
- <property name="name">sidebar</property>
- </packing>
- </child>
- <child>
- <object class="GtkBox">
- <property name="visible">True</property>
- <property name="orientation">vertical</property>
- <child>
- <object class="GtkRevealer">
- <property name="visible">True</property>
- <property name="transition-type" bind-source="header_revealer"
bind-property="transition-type" bind-flags="bidirectional|sync-create"/>
- <property name="reveal-child" bind-source="header_revealer" bind-property="reveal-child"
bind-flags="bidirectional|sync-create"/>
<child>
- <object class="HdyWindowHandle" id="header_separator">
+ <object class="GtkStackSidebar" id="sidebar">
+ <property name="width_request">270</property>
<property name="visible">True</property>
- <child>
- <object class="GtkSeparator">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="orientation">vertical</property>
- <style>
- <class name="sidebar"/>
- </style>
- </object>
- </child>
+ <property name="vexpand">True</property>
+ <property name="can_focus">False</property>
+ <property name="stack">stack</property>
</object>
</child>
</object>
+ <packing>
+ <property name="name">sidebar</property>
+ </packing>
</child>
<child>
- <object class="GtkSeparator">
+ <object class="GtkBox">
<property name="visible">True</property>
- <property name="can_focus">False</property>
<property name="orientation">vertical</property>
- <property name="vexpand">True</property>
- <style>
- <class name="sidebar"/>
- </style>
- </object>
- </child>
- </object>
- <packing>
- <property name="navigatable">False</property>
- </packing>
- </child>
- <child>
- <object class="GtkBox" id="right_box">
- <property name="visible">True</property>
- <property name="orientation">vertical</property>
- <child>
- <object class="GtkRevealer">
- <property name="visible">True</property>
- <property name="transition-type" bind-source="header_revealer"
bind-property="transition-type" bind-flags="bidirectional|sync-create"/>
- <property name="reveal-child" bind-source="header_revealer" bind-property="reveal-child"
bind-flags="bidirectional|sync-create"/>
<child>
- <object class="GtkStack" id="header_stack">
+ <object class="GtkRevealer">
<property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="vexpand">False</property>
- <property name="transition-type" bind-source="stack" bind-property="transition-type"
bind-flags="sync-create"/>
+ <property name="transition-type" bind-source="header_revealer"
bind-property="transition-type" bind-flags="bidirectional|sync-create"/>
+ <property name="reveal-child" bind-source="header_revealer" bind-property="reveal-child"
bind-flags="bidirectional|sync-create"/>
<child>
- <object class="HdyHeaderBar" id="default_header_bar">
+ <object class="HdyWindowHandle" id="header_separator">
<property name="visible">True</property>
- <property name="expand">True</property>
- <property name="show_close_button">True</property>
<child>
- <object class="GtkButton" id="back">
+ <object class="GtkSeparator">
+ <property name="visible">True</property>
<property name="can_focus">False</property>
- <property name="receives_default">False</property>
- <property name="valign">center</property>
- <property name="use-underline">True</property>
- <property name="visible" bind-source="content_box" bind-property="folded"
bind-flags="sync-create"/>
- <signal name="clicked" handler="back_clicked_cb"/>
+ <property name="orientation">vertical</property>
<style>
- <class name="image-button"/>
+ <class name="sidebar"/>
</style>
- <child internal-child="accessible">
- <object class="AtkObject" id="a11y-back">
- <property name="accessible-name" translatable="yes">Back</property>
- </object>
- </child>
- <child>
- <object class="GtkImage" id="back_image">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="icon_name">go-previous-symbolic</property>
- <property name="icon_size">1</property>
- </object>
- </child>
</object>
</child>
</object>
- <packing>
- <property name="name">default</property>
- </packing>
</child>
+ </object>
+ </child>
+ <child>
+ <object class="GtkSeparator">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="orientation">vertical</property>
+ <property name="vexpand">True</property>
+ <style>
+ <class name="sidebar"/>
+ </style>
+ </object>
+ </child>
+ </object>
+ <packing>
+ <property name="navigatable">False</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkBox" id="right_box">
+ <property name="visible">True</property>
+ <property name="orientation">vertical</property>
+ <child>
+ <object class="GtkRevealer">
+ <property name="visible">True</property>
+ <property name="transition-type" bind-source="header_revealer"
bind-property="transition-type" bind-flags="bidirectional|sync-create"/>
+ <property name="reveal-child" bind-source="header_revealer" bind-property="reveal-child"
bind-flags="bidirectional|sync-create"/>
<child>
- <object class="HdyDeck" id="header_deck">
+ <object class="GtkStack" id="header_stack">
<property name="visible">True</property>
<property name="can_focus">False</property>
- <property name="vexpand">True</property>
- <property name="can-swipe-back">True</property>
- <property name="transition-type" bind-source="content_deck"
bind-property="transition-type" bind-flags="sync-create"/>
+ <property name="vexpand">False</property>
+ <property name="transition-type" bind-source="stack" bind-property="transition-type"
bind-flags="sync-create"/>
<child>
- <object class="HdyHeaderBar" id="deck_header_bar">
+ <object class="HdyHeaderBar" id="default_header_bar">
<property name="visible">True</property>
<property name="expand">True</property>
<property name="show_close_button">True</property>
<child>
- <object class="GtkButton" id="deck-back">
+ <object class="GtkButton" id="back">
<property name="can_focus">False</property>
<property name="receives_default">False</property>
<property name="valign">center</property>
@@ -205,12 +169,12 @@
<class name="image-button"/>
</style>
<child internal-child="accessible">
- <object class="AtkObject" id="a11y-deck-back">
+ <object class="AtkObject" id="a11y-back">
<property name="accessible-name" translatable="yes">Back</property>
</object>
</child>
<child>
- <object class="GtkImage">
+ <object class="GtkImage" id="back_image">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="icon_name">go-previous-symbolic</property>
@@ -220,25 +184,28 @@
</object>
</child>
</object>
+ <packing>
+ <property name="name">default</property>
+ </packing>
</child>
<child>
- <object class="HdyHeaderBar" id="deck_sub_header_bar">
+ <object class="HdyHeaderBar" id="search_bar_header_bar">
<property name="visible">True</property>
<property name="expand">True</property>
<property name="show_close_button">True</property>
<child>
- <object class="GtkButton" id="deck-sub-back">
+ <object class="GtkButton">
<property name="can_focus">False</property>
<property name="receives_default">False</property>
<property name="valign">center</property>
<property name="use-underline">True</property>
- <property name="visible">True</property>
- <signal name="clicked" handler="deck_back_clicked_cb"/>
+ <property name="visible" bind-source="content_box" bind-property="folded"
bind-flags="sync-create"/>
+ <signal name="clicked" handler="back_clicked_cb"/>
<style>
<class name="image-button"/>
</style>
<child internal-child="accessible">
- <object class="AtkObject" id="a11y-deck-sub-back">
+ <object class="AtkObject">
<property name="accessible-name" translatable="yes">Back</property>
</object>
</child>
@@ -252,144 +219,98 @@
</child>
</object>
</child>
- </object>
- </child>
- </object>
- <packing>
- <property name="name">deck</property>
- </packing>
- </child>
- <child>
- <object class="HdyHeaderBar" id="search_bar_header_bar">
- <property name="visible">True</property>
- <property name="expand">True</property>
- <property name="show_close_button">True</property>
- <child>
- <object class="GtkButton">
- <property name="can_focus">False</property>
- <property name="receives_default">False</property>
- <property name="valign">center</property>
- <property name="use-underline">True</property>
- <property name="visible" bind-source="content_box" bind-property="folded"
bind-flags="sync-create"/>
- <signal name="clicked" handler="back_clicked_cb"/>
- <style>
- <class name="image-button"/>
- </style>
- <child internal-child="accessible">
- <object class="AtkObject">
- <property name="accessible-name" translatable="yes">Back</property>
- </object>
- </child>
- <child>
- <object class="GtkImage">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="icon_name">go-previous-symbolic</property>
- <property name="icon_size">1</property>
- </object>
- </child>
- </object>
- </child>
- <child>
- <object class="GtkToggleButton">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="receives_default">False</property>
- <property name="valign">center</property>
- <property name="use-underline">True</property>
- <property name="active" bind-source="search_bar"
bind-property="search-mode-enabled" bind-flags="sync-create|bidirectional"/>
- <style>
- <class name="image-button"/>
- </style>
- <child internal-child="accessible">
- <object class="AtkObject" id="a11y-search">
- <property name="accessible-name" translatable="yes">Search</property>
- </object>
- </child>
<child>
- <object class="GtkImage" id="search_image">
+ <object class="GtkToggleButton">
<property name="visible">True</property>
<property name="can_focus">False</property>
- <property name="icon_name">edit-find-symbolic</property>
- <property name="icon_size">1</property>
+ <property name="receives_default">False</property>
+ <property name="valign">center</property>
+ <property name="use-underline">True</property>
+ <property name="active" bind-source="search_bar"
bind-property="search-mode-enabled" bind-flags="sync-create|bidirectional"/>
+ <style>
+ <class name="image-button"/>
+ </style>
+ <child internal-child="accessible">
+ <object class="AtkObject" id="a11y-search">
+ <property name="accessible-name" translatable="yes">Search</property>
+ </object>
+ </child>
+ <child>
+ <object class="GtkImage" id="search_image">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="icon_name">edit-find-symbolic</property>
+ <property name="icon_size">1</property>
+ </object>
+ </child>
</object>
+ <packing>
+ <property name="pack_type">end</property>
+ </packing>
</child>
</object>
<packing>
- <property name="pack_type">end</property>
+ <property name="name">search-bar</property>
</packing>
</child>
</object>
- <packing>
- <property name="name">search-bar</property>
- </packing>
</child>
</object>
</child>
- </object>
- </child>
- <child>
- <object class="GtkStack" id="stack">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="vhomogeneous">False</property>
- <signal name="notify::visible-child" handler="notify_visible_child_cb" after="yes"
swapped="no"/>
- <child>
- <object class="HdyStatusPage">
- <property name="visible">True</property>
- <property name="icon-name">gnome-smartphone-symbolic</property>
- <property name="title" translatable="yes">Welcome to Handy Demo</property>
- <property name="description" translatable="yes">This is a tour of the features the
library has to offer.</property>
- </object>
- <packing>
- <property name="name">welcome</property>
- <property name="title" translatable="yes">Welcome</property>
- </packing>
- </child>
<child>
- <object class="HdyStatusPage">
+ <object class="GtkStack" id="stack">
<property name="visible">True</property>
- <property name="icon-name">widget-leaflet-symbolic</property>
- <property name="title" translatable="yes">Leaflet</property>
- <property name="description" translatable="yes">A widget showing either all its children
or only one, depending on the available space. This window is using a leaflet, you can control it with the
settings below.</property>
+ <property name="can_focus">False</property>
+ <property name="vhomogeneous">False</property>
+ <signal name="notify::visible-child" handler="notify_visible_child_cb" after="yes"
swapped="no"/>
+ <child>
+ <object class="HdyStatusPage">
+ <property name="visible">True</property>
+ <property name="icon-name">gnome-smartphone-symbolic</property>
+ <property name="title" translatable="yes">Welcome to Handy Demo</property>
+ <property name="description" translatable="yes">This is a tour of the features the
library has to offer.</property>
+ </object>
+ <packing>
+ <property name="name">welcome</property>
+ <property name="title" translatable="yes">Welcome</property>
+ </packing>
+ </child>
<child>
- <object class="HdyClamp">
+ <object class="HdyStatusPage">
<property name="visible">True</property>
+ <property name="icon-name">widget-leaflet-symbolic</property>
+ <property name="title" translatable="yes">Leaflet</property>
+ <property name="description" translatable="yes">A widget showing either all its
children or only one, depending on the available space. This window is using a leaflet, you can control it
with the settings below.</property>
<child>
- <object class="GtkListBox">
+ <object class="HdyClamp">
<property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="expand">True</property>
- <property name="selection-mode">none</property>
- <style>
- <class name="content"/>
- </style>
<child>
- <object class="HdyComboRow" id="leaflet_transition_row">
- <property name="subtitle" translatable="yes">The type of transition to use
when the leaflet adapts its size or when changing the visible child</property>
- <property name="title" translatable="yes">Transition type</property>
+ <object class="GtkListBox">
<property name="visible">True</property>
- <signal name="notify::selected-index" handler="notify_leaflet_transition_cb"
swapped="no"/>
+ <property name="can_focus">False</property>
+ <property name="expand">True</property>
+ <property name="selection-mode">none</property>
+ <style>
+ <class name="content"/>
+ </style>
+ <child>
+ <object class="HdyComboRow" id="leaflet_transition_row">
+ <property name="subtitle" translatable="yes">The type of transition to
use when the leaflet adapts its size or when changing the visible child</property>
+ <property name="title" translatable="yes">Transition type</property>
+ <property name="visible">True</property>
+ <signal name="notify::selected-index"
handler="notify_leaflet_transition_cb" swapped="no"/>
+ </object>
+ </child>
</object>
</child>
</object>
</child>
</object>
+ <packing>
+ <property name="name">leaflet</property>
+ <property name="title" translatable="yes">Leaflet</property>
+ </packing>
</child>
- </object>
- <packing>
- <property name="name">leaflet</property>
- <property name="title" translatable="yes">Leaflet</property>
- </packing>
- </child>
- <child>
- <object class="HdyDeck" id="content_deck">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="vexpand">True</property>
- <property name="transition-type">over</property>
- <property name="can-swipe-back">True</property>
- <signal name="notify::visible-child" handler="notify_deck_visible_child_cb" after="yes"
swapped="yes"/>
<child>
<object class="HdyStatusPage">
<property name="visible">True</property>
@@ -436,328 +357,153 @@
</object>
</child>
</object>
- </child>
- <child>
- <object class="GtkScrolledWindow">
- <property name="visible">True</property>
- <property name="hscrollbar-policy">never</property>
- <child>
- <object class="GtkBox">
- <property name="orientation">vertical</property>
- <property name="valign">center</property>
- <property name="visible">True</property>
- <property name="margin">12</property>
- <property name="spacing">12</property>
- <child>
- <object class="GtkLabel">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="halign">center</property>
- <property name="label" translatable="yes">Go back</property>
- <property name="justify">center</property>
- <property name="wrap">True</property>
- <property name="wrap-mode">word-char</property>
- <style>
- <class name="title"/>
- <class name="large-title"/>
- </style>
- </object>
- </child>
- <child>
- <object class="GtkImage">
- <property name="icon-name">gesture-touchscreen-swipe-back-symbolic</property>
- <property name="pixel-size">128</property>
- <property name="visible">True</property>
- <style>
- <class name="dim-label"/>
- </style>
- </object>
- </child>
- <child>
- <object class="GtkImage">
- <property name="icon-name">gesture-touchpad-swipe-back-symbolic</property>
- <property name="pixel-size">128</property>
- <property name="visible">True</property>
- <style>
- <class name="dim-label"/>
- </style>
- </object>
- </child>
- </object>
- </child>
- </object>
<packing>
- <property name="name">sub</property>
+ <property name="name">deck</property>
+ <property name="title" translatable="yes">Deck</property>
</packing>
</child>
- </object>
- <packing>
- <property name="name">deck</property>
- <property name="title" translatable="yes">Deck</property>
- </packing>
- </child>
- <child>
- <object class="HdyStatusPage">
- <property name="visible">True</property>
- <property name="icon-name">widget-keypad-symbolic</property>
- <property name="title" translatable="yes">Keypad</property>
- <property name="description" translatable="yes">A number keypad.</property>
<child>
- <object class="HdyClamp">
+ <object class="HdyStatusPage">
<property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="maximum-size">300</property>
- <property name="tightening-threshold">300</property>
+ <property name="icon-name">widget-keypad-symbolic</property>
+ <property name="title" translatable="yes">Keypad</property>
+ <property name="description" translatable="yes">A number keypad.</property>
<child>
- <object class="GtkBox" id="box_keypad">
+ <object class="HdyClamp">
<property name="visible">True</property>
<property name="can_focus">False</property>
- <property name="valign">center</property>
- <property name="hexpand">True</property>
- <property name="orientation">vertical</property>
- <property name="spacing">12</property>
+ <property name="maximum-size">300</property>
+ <property name="tightening-threshold">300</property>
<child>
- <object class="GtkListBox" id="keypad_listbox">
+ <object class="GtkBox" id="box_keypad">
<property name="visible">True</property>
<property name="can_focus">False</property>
- <property name="expand">True</property>
- <property name="selection-mode">none</property>
- <style>
- <class name="content"/>
- </style>
+ <property name="valign">center</property>
+ <property name="hexpand">True</property>
+ <property name="orientation">vertical</property>
+ <property name="spacing">12</property>
<child>
- <object class="HdyActionRow">
+ <object class="GtkListBox" id="keypad_listbox">
<property name="visible">True</property>
<property name="can_focus">False</property>
- <property name="title" translatable="yes">Show letters</property>
- <property name="activatable_widget">keypad_letters_visible</property>
- <child>
- <object class="GtkSwitch" id="keypad_letters_visible">
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="state">True</property>
- <property name="valign">center</property>
+ <property name="expand">True</property>
+ <property name="selection-mode">none</property>
+ <style>
+ <class name="content"/>
+ </style>
+ <child>
+ <object class="HdyActionRow">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="title" translatable="yes">Show letters</property>
+ <property name="activatable_widget">keypad_letters_visible</property>
+ <child>
+ <object class="GtkSwitch" id="keypad_letters_visible">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="state">True</property>
+ <property name="valign">center</property>
+ </object>
+ </child>
</object>
</child>
- </object>
- </child>
- <child>
- <object class="HdyActionRow">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="title" translatable="yes">Show symbols</property>
- <property name="activatable_widget">keypad_symbols_visible</property>
<child>
- <object class="GtkSwitch" id="keypad_symbols_visible">
+ <object class="HdyActionRow">
<property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="state">True</property>
- <property name="valign">center</property>
+ <property name="can_focus">False</property>
+ <property name="title" translatable="yes">Show symbols</property>
+ <property name="activatable_widget">keypad_symbols_visible</property>
+ <child>
+ <object class="GtkSwitch" id="keypad_symbols_visible">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="state">True</property>
+ <property name="valign">center</property>
+ </object>
+ </child>
</object>
</child>
</object>
</child>
- </object>
- </child>
- <child>
- <object class="GtkEntry" id="entry_keypad">
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- </object>
- </child>
- <child>
- <object class="HdyKeypad" id="keypad">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="halign">center</property>
- <property name="entry">entry_keypad</property>
- <property name="symbols-visible" bind-source="keypad_symbols_visible"
bind-property="state" bind-flags="sync-create | bidirectional"/>
- <property name="letters-visible" bind-source="keypad_letters_visible"
bind-property="state" bind-flags="sync-create | bidirectional"/>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">True</property>
- <property name="pack_type">end</property>
- <property name="position">1</property>
- </packing>
- </child>
- </object>
- </child>
- </object>
- </child>
- </object>
- <packing>
- <property name="name">keypad</property>
- <property name="title" translatable="yes">Keypad</property>
- </packing>
- </child>
- <child>
- <object class="HdyStatusPage">
- <property name="visible">True</property>
- <property name="icon-name">widget-clamp-symbolic</property>
- <property name="title" translatable="yes">Clamp</property>
- <property name="description" translatable="yes">This page is clamped to smoothly grow up
to a maximum width.</property>
- <child>
- <object class="HdyClamp">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="halign">fill</property>
- <property name="valign">fill</property>
- <property name="expand">True</property>
- <property name="maximum-size" bind-source="clamp_maximum_size_adjustment"
bind-property="value" bind-flags="sync-create"/>
- <property name="tightening-threshold"
bind-source="clamp_tightening_threshold_adjustment" bind-property="value" bind-flags="sync-create"/>
- <child>
- <object class="GtkListBox" id="clamp_listbox">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="expand">True</property>
- <property name="selection-mode">none</property>
- <style>
- <class name="content"/>
- </style>
- <child>
- <object class="HdyActionRow">
- <property name="can_focus">False</property>
- <property name="title" translatable="yes">Maximum width</property>
- <property name="visible">True</property>
<child>
- <object class="GtkSpinButton">
- <property name="adjustment">clamp_maximum_size_adjustment</property>
- <property name="valign">center</property>
+ <object class="GtkEntry" id="entry_keypad">
<property name="visible">True</property>
+ <property name="can_focus">True</property>
</object>
</child>
- </object>
- </child>
- <child>
- <object class="HdyActionRow">
- <property name="can_focus">False</property>
- <property name="title" translatable="yes">Tightening threshold</property>
- <property name="visible">True</property>
<child>
- <object class="GtkSpinButton">
- <property
name="adjustment">clamp_tightening_threshold_adjustment</property>
- <property name="valign">center</property>
+ <object class="HdyKeypad" id="keypad">
<property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="halign">center</property>
+ <property name="entry">entry_keypad</property>
+ <property name="symbols-visible" bind-source="keypad_symbols_visible"
bind-property="state" bind-flags="sync-create | bidirectional"/>
+ <property name="letters-visible" bind-source="keypad_letters_visible"
bind-property="state" bind-flags="sync-create | bidirectional"/>
</object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ <property name="pack_type">end</property>
+ <property name="position">1</property>
+ </packing>
</child>
</object>
</child>
</object>
</child>
</object>
+ <packing>
+ <property name="name">keypad</property>
+ <property name="title" translatable="yes">Keypad</property>
+ </packing>
</child>
- </object>
- <packing>
- <property name="name">clamp</property>
- <property name="title" translatable="yes">Clamp</property>
- </packing>
- </child>
- <child>
- <object class="HdyStatusPage">
- <property name="visible">True</property>
- <property name="icon-name">widget-list-symbolic</property>
- <property name="title" translatable="yes">Lists</property>
- <property name="description" translatable="yes">Rows and helpers for
GtkListBox.</property>
<child>
- <object class="HdyClamp">
+ <object class="HdyStatusPage">
<property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="halign">fill</property>
- <property name="valign">fill</property>
- <property name="expand">True</property>
- <property name="maximum-size">400</property>
- <property name="tightening-threshold">300</property>
+ <property name="icon-name">widget-clamp-symbolic</property>
+ <property name="title" translatable="yes">Clamp</property>
+ <property name="description" translatable="yes">This page is clamped to smoothly
grow up to a maximum width.</property>
<child>
- <object class="GtkListBox" id="lists_listbox">
+ <object class="HdyClamp">
<property name="visible">True</property>
<property name="can_focus">False</property>
+ <property name="halign">fill</property>
+ <property name="valign">fill</property>
<property name="expand">True</property>
- <property name="selection-mode">none</property>
- <style>
- <class name="content"/>
- </style>
- <child>
- <object class="HdyActionRow">
- <property name="icon-name">row-preferences-symbolic</property>
- <property name="subtitle" translatable="yes">They also have a subtitle and
an icon</property>
- <property name="title" translatable="yes">Rows have a title</property>
- <property name="visible">True</property>
- </object>
- </child>
+ <property name="maximum-size" bind-source="clamp_maximum_size_adjustment"
bind-property="value" bind-flags="sync-create"/>
+ <property name="tightening-threshold"
bind-source="clamp_tightening_threshold_adjustment" bind-property="value" bind-flags="sync-create"/>
<child>
- <object class="HdyActionRow">
- <property name="activatable_widget">frobnicate</property>
- <property name="title" translatable="yes">Rows can have action
widgets</property>
+ <object class="GtkListBox" id="clamp_listbox">
<property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="expand">True</property>
+ <property name="selection-mode">none</property>
+ <style>
+ <class name="content"/>
+ </style>
<child>
- <object class="GtkButton" id="frobnicate">
- <property name="can_focus">True</property>
- <property name="halign">end</property>
- <property name="label" translatable="yes">Frobnicate</property>
- <property name="valign">center</property>
- <property name="visible">True</property>
- <style>
- <class name="list-button"/>
- </style>
- </object>
- </child>
- </object>
- </child>
- <child>
- <object class="HdyActionRow">
- <property name="activatable_widget">radio_button_1</property>
- <property name="title" translatable="yes">Rows can have prefix
widgets</property>
- <property name="visible">True</property>
- <child type="prefix">
- <object class="GtkRadioButton" id="radio_button_1">
- <property name="can_focus">False</property>
- <property name="valign">center</property>
- <property name="visible">True</property>
- </object>
- </child>
- </object>
- </child>
- <child>
- <object class="HdyActionRow">
- <property name="activatable_widget">radio_button_2</property>
- <property name="title" translatable="yes">Rows can have prefix
widgets</property>
- <property name="visible">True</property>
- <child type="prefix">
- <object class="GtkRadioButton" id="radio_button_2">
+ <object class="HdyActionRow">
<property name="can_focus">False</property>
- <property name="group">radio_button_1</property>
- <property name="valign">center</property>
+ <property name="title" translatable="yes">Maximum width</property>
<property name="visible">True</property>
+ <child>
+ <object class="GtkSpinButton">
+ <property name="adjustment">clamp_maximum_size_adjustment</property>
+ <property name="valign">center</property>
+ <property name="visible">True</property>
+ </object>
+ </child>
</object>
</child>
- </object>
- </child>
- <child>
- <object class="HdyComboRow" id="combo_row">
- <property name="title" translatable="yes">Combo row</property>
- <property name="visible">True</property>
- </object>
- </child>
- <child>
- <object class="HdyComboRow" id="enum_combo_row">
- <property name="subtitle" translatable="yes">This combo row was created from
an enumeration</property>
- <property name="title" translatable="yes">Enumeration combo row</property>
- <property name="visible">True</property>
- </object>
- </child>
- <child>
- <object class="HdyExpanderRow" id="expander_row">
- <property name="title" translatable="yes">Expander row</property>
- <property name="visible">True</property>
<child>
- <object class="GtkListBoxRow">
- <property name="activatable">False</property>
+ <object class="HdyActionRow">
+ <property name="can_focus">False</property>
+ <property name="title" translatable="yes">Tightening threshold</property>
<property name="visible">True</property>
<child>
- <object class="GtkLabel">
- <property name="label" translatable="yes">Hello, world!</property>
- <property name="margin">12</property>
+ <object class="GtkSpinButton">
+ <property
name="adjustment">clamp_tightening_threshold_adjustment</property>
+ <property name="valign">center</property>
<property name="visible">True</property>
</object>
</child>
@@ -765,155 +511,277 @@
</child>
</object>
</child>
+ </object>
+ </child>
+ </object>
+ <packing>
+ <property name="name">clamp</property>
+ <property name="title" translatable="yes">Clamp</property>
+ </packing>
+ </child>
+ <child>
+ <object class="HdyStatusPage">
+ <property name="visible">True</property>
+ <property name="icon-name">widget-list-symbolic</property>
+ <property name="title" translatable="yes">Lists</property>
+ <property name="description" translatable="yes">Rows and helpers for
GtkListBox.</property>
+ <child>
+ <object class="HdyClamp">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="halign">fill</property>
+ <property name="valign">fill</property>
+ <property name="expand">True</property>
+ <property name="maximum-size">400</property>
+ <property name="tightening-threshold">300</property>
<child>
- <object class="HdyExpanderRow" id="action_expander_row">
- <property name="title" translatable="yes">Expander row with an
action</property>
+ <object class="GtkListBox" id="lists_listbox">
<property name="visible">True</property>
- <child type="action">
- <object class="GtkButton">
- <property name="visible">True</property>
- <property name="valign">center</property>
- <style>
- <class name="list-button"/>
- </style>
- <child>
- <object class="GtkImage">
- <property name="visible">True</property>
- <property name="icon-name">row-copy-symbolic</property>
- </object>
- </child>
- </object>
- </child>
+ <property name="can_focus">False</property>
+ <property name="expand">True</property>
+ <property name="selection-mode">none</property>
+ <style>
+ <class name="content"/>
+ </style>
<child>
<object class="HdyActionRow">
- <property name="title" translatable="yes">A nested row</property>
+ <property name="icon-name">row-preferences-symbolic</property>
+ <property name="subtitle" translatable="yes">They also have a subtitle
and an icon</property>
+ <property name="title" translatable="yes">Rows have a title</property>
<property name="visible">True</property>
</object>
</child>
<child>
<object class="HdyActionRow">
- <property name="title" translatable="yes">Another nested row</property>
- <property name="visible">True</property>
- </object>
- </child>
- </object>
- </child>
- <child>
- <object class="HdyExpanderRow">
- <property name="title" translatable="yes">Expander row with a
prefix</property>
- <property name="visible">True</property>
- <child type="prefix">
- <object class="GtkButton">
+ <property name="activatable_widget">frobnicate</property>
+ <property name="title" translatable="yes">Rows can have action
widgets</property>
<property name="visible">True</property>
- <property name="valign">center</property>
- <style>
- <class name="list-button"/>
- </style>
<child>
- <object class="GtkImage">
+ <object class="GtkButton" id="frobnicate">
+ <property name="can_focus">True</property>
+ <property name="halign">end</property>
+ <property name="label" translatable="yes">Frobnicate</property>
+ <property name="valign">center</property>
<property name="visible">True</property>
- <property name="icon-name">row-shutdown-symbolic</property>
+ <style>
+ <class name="list-button"/>
+ </style>
</object>
</child>
</object>
</child>
<child>
<object class="HdyActionRow">
- <property name="title" translatable="yes">A nested row</property>
+ <property name="activatable_widget">radio_button_1</property>
+ <property name="title" translatable="yes">Rows can have prefix
widgets</property>
<property name="visible">True</property>
+ <child type="prefix">
+ <object class="GtkRadioButton" id="radio_button_1">
+ <property name="can_focus">False</property>
+ <property name="valign">center</property>
+ <property name="visible">True</property>
+ </object>
+ </child>
</object>
</child>
<child>
<object class="HdyActionRow">
- <property name="title" translatable="yes">Another nested row</property>
- <property name="visible">True</property>
- </object>
- </child>
- </object>
- </child>
- <child>
- <object class="HdyExpanderRow">
- <property name="title" translatable="yes">Expander row with a prefix and
icon</property>
- <property name="visible">True</property>
- <property name="icon-name">row-forbidden-symbolic</property>
- <child type="prefix">
- <object class="GtkButton">
+ <property name="activatable_widget">radio_button_2</property>
+ <property name="title" translatable="yes">Rows can have prefix
widgets</property>
<property name="visible">True</property>
- <property name="valign">center</property>
- <style>
- <class name="list-button"/>
- </style>
- <child>
- <object class="GtkImage">
+ <child type="prefix">
+ <object class="GtkRadioButton" id="radio_button_2">
+ <property name="can_focus">False</property>
+ <property name="group">radio_button_1</property>
+ <property name="valign">center</property>
<property name="visible">True</property>
- <property name="icon-name">row-shutdown-symbolic</property>
</object>
</child>
</object>
</child>
<child>
- <object class="HdyActionRow">
- <property name="title" translatable="yes">A nested row</property>
+ <object class="HdyComboRow" id="combo_row">
+ <property name="title" translatable="yes">Combo row</property>
<property name="visible">True</property>
</object>
</child>
<child>
- <object class="HdyActionRow">
- <property name="title" translatable="yes">Another nested row</property>
+ <object class="HdyComboRow" id="enum_combo_row">
+ <property name="subtitle" translatable="yes">This combo row was created
from an enumeration</property>
+ <property name="title" translatable="yes">Enumeration combo
row</property>
<property name="visible">True</property>
</object>
</child>
- </object>
- </child>
- <child>
- <object class="HdyExpanderRow" id="enable_expander_row">
- <property name="show_enable_switch">True</property>
- <property name="title" translatable="yes">Toggleable expander row</property>
- <property name="visible">True</property>
<child>
- <object class="HdyActionRow">
- <property name="title" translatable="yes">A nested row</property>
+ <object class="HdyExpanderRow" id="expander_row">
+ <property name="title" translatable="yes">Expander row</property>
<property name="visible">True</property>
+ <child>
+ <object class="GtkListBoxRow">
+ <property name="activatable">False</property>
+ <property name="visible">True</property>
+ <child>
+ <object class="GtkLabel">
+ <property name="label" translatable="yes">Hello,
world!</property>
+ <property name="margin">12</property>
+ <property name="visible">True</property>
+ </object>
+ </child>
+ </object>
+ </child>
</object>
</child>
<child>
- <object class="HdyActionRow">
- <property name="title" translatable="yes">Another nested row</property>
- <property name="visible">True</property>
- </object>
- </child>
- </object>
- </child>
- <child>
- <object class="HdyExpanderRow" id="action_switch_expander_row">
- <property name="show_enable_switch">True</property>
- <property name="title" translatable="yes">Toggleable expander row with an
action</property>
- <property name="visible">True</property>
- <child type="action">
- <object class="GtkButton">
+ <object class="HdyExpanderRow" id="action_expander_row">
+ <property name="title" translatable="yes">Expander row with an
action</property>
<property name="visible">True</property>
- <property name="valign">center</property>
- <style>
- <class name="list-button"/>
- </style>
+ <child type="action">
+ <object class="GtkButton">
+ <property name="visible">True</property>
+ <property name="valign">center</property>
+ <style>
+ <class name="list-button"/>
+ </style>
+ <child>
+ <object class="GtkImage">
+ <property name="visible">True</property>
+ <property name="icon-name">row-copy-symbolic</property>
+ </object>
+ </child>
+ </object>
+ </child>
<child>
- <object class="GtkImage">
+ <object class="HdyActionRow">
+ <property name="title" translatable="yes">A nested row</property>
+ <property name="visible">True</property>
+ </object>
+ </child>
+ <child>
+ <object class="HdyActionRow">
+ <property name="title" translatable="yes">Another nested
row</property>
<property name="visible">True</property>
- <property name="icon-name">row-copy-symbolic</property>
</object>
</child>
</object>
</child>
<child>
- <object class="HdyActionRow">
- <property name="title" translatable="yes">A nested row</property>
+ <object class="HdyExpanderRow">
+ <property name="title" translatable="yes">Expander row with a
prefix</property>
<property name="visible">True</property>
+ <child type="prefix">
+ <object class="GtkButton">
+ <property name="visible">True</property>
+ <property name="valign">center</property>
+ <style>
+ <class name="list-button"/>
+ </style>
+ <child>
+ <object class="GtkImage">
+ <property name="visible">True</property>
+ <property name="icon-name">row-shutdown-symbolic</property>
+ </object>
+ </child>
+ </object>
+ </child>
+ <child>
+ <object class="HdyActionRow">
+ <property name="title" translatable="yes">A nested row</property>
+ <property name="visible">True</property>
+ </object>
+ </child>
+ <child>
+ <object class="HdyActionRow">
+ <property name="title" translatable="yes">Another nested
row</property>
+ <property name="visible">True</property>
+ </object>
+ </child>
</object>
</child>
<child>
- <object class="HdyActionRow">
- <property name="title" translatable="yes">Another nested row</property>
+ <object class="HdyExpanderRow">
+ <property name="title" translatable="yes">Expander row with a prefix and
icon</property>
<property name="visible">True</property>
+ <property name="icon-name">row-forbidden-symbolic</property>
+ <child type="prefix">
+ <object class="GtkButton">
+ <property name="visible">True</property>
+ <property name="valign">center</property>
+ <style>
+ <class name="list-button"/>
+ </style>
+ <child>
+ <object class="GtkImage">
+ <property name="visible">True</property>
+ <property name="icon-name">row-shutdown-symbolic</property>
+ </object>
+ </child>
+ </object>
+ </child>
+ <child>
+ <object class="HdyActionRow">
+ <property name="title" translatable="yes">A nested row</property>
+ <property name="visible">True</property>
+ </object>
+ </child>
+ <child>
+ <object class="HdyActionRow">
+ <property name="title" translatable="yes">Another nested
row</property>
+ <property name="visible">True</property>
+ </object>
+ </child>
+ </object>
+ </child>
+ <child>
+ <object class="HdyExpanderRow" id="enable_expander_row">
+ <property name="show_enable_switch">True</property>
+ <property name="title" translatable="yes">Toggleable expander
row</property>
+ <property name="visible">True</property>
+ <child>
+ <object class="HdyActionRow">
+ <property name="title" translatable="yes">A nested row</property>
+ <property name="visible">True</property>
+ </object>
+ </child>
+ <child>
+ <object class="HdyActionRow">
+ <property name="title" translatable="yes">Another nested
row</property>
+ <property name="visible">True</property>
+ </object>
+ </child>
+ </object>
+ </child>
+ <child>
+ <object class="HdyExpanderRow" id="action_switch_expander_row">
+ <property name="show_enable_switch">True</property>
+ <property name="title" translatable="yes">Toggleable expander row with
an action</property>
+ <property name="visible">True</property>
+ <child type="action">
+ <object class="GtkButton">
+ <property name="visible">True</property>
+ <property name="valign">center</property>
+ <style>
+ <class name="list-button"/>
+ </style>
+ <child>
+ <object class="GtkImage">
+ <property name="visible">True</property>
+ <property name="icon-name">row-copy-symbolic</property>
+ </object>
+ </child>
+ </object>
+ </child>
+ <child>
+ <object class="HdyActionRow">
+ <property name="title" translatable="yes">A nested row</property>
+ <property name="visible">True</property>
+ </object>
+ </child>
+ <child>
+ <object class="HdyActionRow">
+ <property name="title" translatable="yes">Another nested
row</property>
+ <property name="visible">True</property>
+ </object>
+ </child>
</object>
</child>
</object>
@@ -921,445 +789,445 @@
</object>
</child>
</object>
+ <packing>
+ <property name="name">lists</property>
+ <property name="title" translatable="yes">Lists</property>
+ </packing>
</child>
- </object>
- <packing>
- <property name="name">lists</property>
- <property name="title" translatable="yes">Lists</property>
- </packing>
- </child>
- <child>
- <object class="GtkOverlay">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <child type="overlay">
- <object class="HdySearchBar" id="search_bar">
+ <child>
+ <object class="GtkOverlay">
<property name="visible">True</property>
<property name="can_focus">False</property>
- <property name="halign">fill</property>
- <property name="valign">start</property>
- <property name="hexpand">True</property>
- <property name="show-close-button">True</property>
- <child>
- <object class="HdyClamp">
+ <child type="overlay">
+ <object class="HdySearchBar" id="search_bar">
<property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="halign">fill</property>
+ <property name="valign">start</property>
<property name="hexpand">True</property>
+ <property name="show-close-button">True</property>
<child>
- <object class="GtkSearchEntry" id="search_entry">
+ <object class="HdyClamp">
<property name="visible">True</property>
<property name="hexpand">True</property>
+ <child>
+ <object class="GtkSearchEntry" id="search_entry">
+ <property name="visible">True</property>
+ <property name="hexpand">True</property>
+ </object>
+ </child>
</object>
</child>
</object>
</child>
- </object>
- </child>
- <child>
- <object class="HdyStatusPage">
- <property name="visible">True</property>
- <property name="icon-name">widget-search-symbolic</property>
- <property name="title" translatable="yes">Search bar</property>
- <property name="description" translatable="yes">A search bar that gives your search
entry all the space it needs.
+ <child>
+ <object class="HdyStatusPage">
+ <property name="visible">True</property>
+ <property name="icon-name">widget-search-symbolic</property>
+ <property name="title" translatable="yes">Search bar</property>
+ <property name="description" translatable="yes">A search bar that gives your
search entry all the space it needs.
-Try using it with a horizontally expanded clamp to make your search entry adaptive.</property>
- </object>
- </child>
- </object>
- <packing>
- <property name="name">search-bar</property>
- <property name="title" translatable="yes">Search bar</property>
- </packing>
- </child>
- <child>
- <object class="HdyStatusPage">
- <property name="visible">True</property>
- <property name="icon-name">widget-view-switcher-symbolic</property>
- <property name="title" translatable="yes">View Switcher</property>
- <property name="description" translatable="yes">Widgets to switch the window's
view.</property>
- <child>
- <object class="GtkButton">
- <property name="visible">True</property>
- <property name="label" translatable="yes">Run the demo</property>
- <property name="halign">center</property>
- <signal name="clicked" handler="view_switcher_demo_clicked_cb" swapped="no"/>
+ Try using it with a horizontally expanded clamp to make your search entry adaptive.</property>
+ </object>
+ </child>
</object>
+ <packing>
+ <property name="name">search-bar</property>
+ <property name="title" translatable="yes">Search bar</property>
+ </packing>
</child>
- </object>
- <packing>
- <property name="name">view-switcher</property>
- <property name="title" translatable="yes">View Switcher</property>
- </packing>
- </child>
- <child>
- <object class="GtkBox" id="carousel_box">
- <property name="visible">True</property>
- <property name="orientation">vertical</property>
<child>
- <object class="GtkBox" id="carousel_empty_box">
+ <object class="HdyStatusPage">
<property name="visible">True</property>
+ <property name="icon-name">widget-view-switcher-symbolic</property>
+ <property name="title" translatable="yes">View Switcher</property>
+ <property name="description" translatable="yes">Widgets to switch the window's
view.</property>
+ <child>
+ <object class="GtkButton">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Run the demo</property>
+ <property name="halign">center</property>
+ <signal name="clicked" handler="view_switcher_demo_clicked_cb" swapped="no"/>
+ </object>
+ </child>
</object>
+ <packing>
+ <property name="name">view-switcher</property>
+ <property name="title" translatable="yes">View Switcher</property>
+ </packing>
</child>
<child>
- <object class="HdyCarousel" id="carousel">
+ <object class="GtkBox" id="carousel_box">
<property name="visible">True</property>
- <property name="allow-scroll-wheel" bind-source="carousel_scroll_wheel"
bind-property="active" bind-flags="sync-create|bidirectional"/>
- <property name="allow-long-swipes" bind-source="carousel_long_swipes"
bind-property="active" bind-flags="sync-create|bidirectional"/>
+ <property name="orientation">vertical</property>
<child>
- <object class="HdyStatusPage">
+ <object class="GtkBox" id="carousel_empty_box">
<property name="visible">True</property>
- <property name="icon-name">widget-carousel-symbolic</property>
- <property name="title" translatable="yes">Carousel</property>
- <property name="description" translatable="yes">A widget for paginated
scrolling.</property>
</object>
</child>
<child>
- <object class="HdyClamp">
+ <object class="HdyCarousel" id="carousel">
<property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="halign">fill</property>
- <property name="valign">fill</property>
- <property name="margin-bottom">32</property>
- <property name="margin-start">12</property>
- <property name="margin-end">12</property>
- <property name="expand">True</property>
- <property name="maximum-size">400</property>
- <property name="tightening-threshold">300</property>
+ <property name="allow-scroll-wheel" bind-source="carousel_scroll_wheel"
bind-property="active" bind-flags="sync-create|bidirectional"/>
+ <property name="allow-long-swipes" bind-source="carousel_long_swipes"
bind-property="active" bind-flags="sync-create|bidirectional"/>
+ <child>
+ <object class="HdyStatusPage">
+ <property name="visible">True</property>
+ <property name="icon-name">widget-carousel-symbolic</property>
+ <property name="title" translatable="yes">Carousel</property>
+ <property name="description" translatable="yes">A widget for paginated
scrolling.</property>
+ </object>
+ </child>
<child>
- <object class="GtkListBox" id="carousel_listbox">
+ <object class="HdyClamp">
<property name="visible">True</property>
<property name="can_focus">False</property>
- <property name="valign">center</property>
- <property name="selection-mode">none</property>
- <style>
- <class name="content"/>
- </style>
- <child>
- <object class="HdyComboRow" id="carousel_orientation_row">
- <property name="title" translatable="yes">Orientation</property>
- <property name="visible">True</property>
- <signal name="notify::selected-index"
handler="notify_carousel_orientation_cb" swapped="no"/>
- </object>
- </child>
- <child>
- <object class="HdyComboRow" id="carousel_indicators_row">
- <property name="title" translatable="yes">Page Indicators</property>
- <property name="visible">True</property>
- <signal name="notify::selected-index"
handler="notify_carousel_indicators_cb" swapped="no"/>
- </object>
- </child>
+ <property name="halign">fill</property>
+ <property name="valign">fill</property>
+ <property name="margin-bottom">32</property>
+ <property name="margin-start">12</property>
+ <property name="margin-end">12</property>
+ <property name="expand">True</property>
+ <property name="maximum-size">400</property>
+ <property name="tightening-threshold">300</property>
<child>
- <object class="HdyActionRow">
+ <object class="GtkListBox" id="carousel_listbox">
<property name="visible">True</property>
- <property name="title" translatable="yes">Scroll wheel</property>
- <property name="activatable_widget">carousel_scroll_wheel</property>
+ <property name="can_focus">False</property>
+ <property name="valign">center</property>
+ <property name="selection-mode">none</property>
+ <style>
+ <class name="content"/>
+ </style>
<child>
- <object class="GtkSwitch" id="carousel_scroll_wheel">
+ <object class="HdyComboRow" id="carousel_orientation_row">
+ <property name="title" translatable="yes">Orientation</property>
<property name="visible">True</property>
- <property name="valign">center</property>
- <property name="active">True</property>
+ <signal name="notify::selected-index"
handler="notify_carousel_orientation_cb" swapped="no"/>
</object>
</child>
- </object>
- </child>
- <child>
- <object class="HdyActionRow">
- <property name="visible">True</property>
- <property name="title" translatable="yes">Long swipes</property>
- <property name="activatable_widget">carousel_long_swipes</property>
<child>
- <object class="GtkSwitch" id="carousel_long_swipes">
+ <object class="HdyComboRow" id="carousel_indicators_row">
+ <property name="title" translatable="yes">Page Indicators</property>
<property name="visible">True</property>
- <property name="valign">center</property>
+ <signal name="notify::selected-index"
handler="notify_carousel_indicators_cb" swapped="no"/>
+ </object>
+ </child>
+ <child>
+ <object class="HdyActionRow">
+ <property name="visible">True</property>
+ <property name="title" translatable="yes">Scroll wheel</property>
+ <property name="activatable_widget">carousel_scroll_wheel</property>
+ <child>
+ <object class="GtkSwitch" id="carousel_scroll_wheel">
+ <property name="visible">True</property>
+ <property name="valign">center</property>
+ <property name="active">True</property>
+ </object>
+ </child>
+ </object>
+ </child>
+ <child>
+ <object class="HdyActionRow">
+ <property name="visible">True</property>
+ <property name="title" translatable="yes">Long swipes</property>
+ <property name="activatable_widget">carousel_long_swipes</property>
+ <child>
+ <object class="GtkSwitch" id="carousel_long_swipes">
+ <property name="visible">True</property>
+ <property name="valign">center</property>
+ </object>
+ </child>
</object>
</child>
</object>
</child>
</object>
</child>
- </object>
- </child>
- <child>
- <object class="GtkBox">
- <property name="visible">True</property>
- <property name="orientation">vertical</property>
- <property name="can_focus">False</property>
- <property name="halign">center</property>
- <property name="valign">center</property>
- <property name="vexpand">True</property>
- <property name="hexpand">True</property>
- <property name="spacing">24</property>
- <child>
- <object class="GtkLabel">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="label" translatable="yes">Another page</property>
- <property name="justify">center</property>
- <property name="wrap">True</property>
- <property name="wrap-mode">word-char</property>
- <style>
- <class name="title"/>
- <class name="large-title"/>
- </style>
- </object>
- </child>
<child>
- <object class="GtkButton">
+ <object class="GtkBox">
<property name="visible">True</property>
+ <property name="orientation">vertical</property>
<property name="can_focus">False</property>
- <property name="label" translatable="yes">_Return to the first
page</property>
- <property name="use-underline">True</property>
- <signal name="clicked" handler="carousel_return_clicked_cb" swapped="no"/>
- <style>
- <class name="suggested-action"/>
- </style>
+ <property name="halign">center</property>
+ <property name="valign">center</property>
+ <property name="vexpand">True</property>
+ <property name="hexpand">True</property>
+ <property name="spacing">24</property>
+ <child>
+ <object class="GtkLabel">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">Another page</property>
+ <property name="justify">center</property>
+ <property name="wrap">True</property>
+ <property name="wrap-mode">word-char</property>
+ <style>
+ <class name="title"/>
+ <class name="large-title"/>
+ </style>
+ </object>
+ </child>
+ <child>
+ <object class="GtkButton">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">_Return to the first
page</property>
+ <property name="use-underline">True</property>
+ <signal name="clicked" handler="carousel_return_clicked_cb"
swapped="no"/>
+ <style>
+ <class name="suggested-action"/>
+ </style>
+ </object>
+ </child>
</object>
</child>
</object>
</child>
- </object>
- </child>
- <child>
- <object class="GtkStack" id="carousel_indicators_stack">
- <property name="visible">True</property>
- <property name="homogeneous">False</property>
- <property name="margin">6</property>
<child>
- <object class="HdyCarouselIndicatorDots">
+ <object class="GtkStack" id="carousel_indicators_stack">
<property name="visible">True</property>
- <property name="carousel">carousel</property>
- <property name="orientation" bind-source="carousel" bind-property="orientation"
bind-flags="sync-create"/>
- </object>
- <packing>
- <property name="name">dots</property>
- </packing>
- </child>
- <child>
- <object class="HdyCarouselIndicatorLines">
- <property name="visible">True</property>
- <property name="carousel">carousel</property>
- <property name="orientation" bind-source="carousel" bind-property="orientation"
bind-flags="sync-create"/>
- </object>
- <packing>
- <property name="name">lines</property>
- </packing>
- </child>
- </object>
- </child>
- </object>
- <packing>
- <property name="name">carousel</property>
- <property name="title" translatable="yes">Carousel</property>
- </packing>
- </child>
- <child>
- <object class="GtkScrolledWindow">
- <property name="visible">True</property>
- <property name="hscrollbar-policy">never</property>
- <child>
- <object class="GtkBox">
- <property name="visible">True</property>
- <property name="orientation">vertical</property>
- <property name="can_focus">False</property>
- <property name="valign">start</property>
- <property name="expand">True</property>
- <style>
- <class name="avatar-page"/>
- </style>
- <child>
- <object class="GtkBox">
- <property name="visible">True</property>
- <property name="orientation">vertical</property>
- <property name="can_focus">False</property>
- <property name="expand">True</property>
- <child>
- <object class="HdyAvatar" id="avatar">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="valign">center</property>
- <property name="halign">center</property>
- <property name="size" bind-source="avatar_size" bind-property="value"
bind-flags="sync-create"></property>
- <property name="show-initials" bind-source="avatar_show_initials"
bind-property="state" bind-flags="sync-create"/>
- <property name="text" bind-source="avatar_text" bind-property="text"
bind-flags="sync-create"/>
- </object>
- <packing>
- <property name="expand">False</property>
- <property name="fill">True</property>
- </packing>
- </child>
- <child>
- <object class="GtkLabel">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="label" translatable="yes">Avatar</property>
- <property name="halign">center</property>
- <property name="xalign">0</property>
- <property name="wrap">True</property>
- <property name="wrap-mode">word-char</property>
- <property name="justify">center</property>
- <style>
- <class name="title"/>
- <class name="large-title"/>
- </style>
+ <property name="homogeneous">False</property>
+ <property name="margin">6</property>
+ <child>
+ <object class="HdyCarouselIndicatorDots">
+ <property name="visible">True</property>
+ <property name="carousel">carousel</property>
+ <property name="orientation" bind-source="carousel"
bind-property="orientation" bind-flags="sync-create"/>
</object>
<packing>
- <property name="expand">False</property>
- <property name="fill">True</property>
+ <property name="name">dots</property>
</packing>
</child>
<child>
- <object class="GtkLabel">
+ <object class="HdyCarouselIndicatorLines">
<property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="label" translatable="yes">A user avatar with generated
fallback.</property>
- <property name="justify">center</property>
- <property name="use_markup">true</property>
- <property name="wrap">True</property>
- <style>
- <class name="body"/>
- <class name="description"/>
- </style>
+ <property name="carousel">carousel</property>
+ <property name="orientation" bind-source="carousel"
bind-property="orientation" bind-flags="sync-create"/>
</object>
<packing>
- <property name="expand">False</property>
- <property name="fill">True</property>
+ <property name="name">lines</property>
</packing>
</child>
</object>
</child>
+ </object>
+ <packing>
+ <property name="name">carousel</property>
+ <property name="title" translatable="yes">Carousel</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkScrolledWindow">
+ <property name="visible">True</property>
+ <property name="hscrollbar-policy">never</property>
<child>
- <object class="HdyClamp">
+ <object class="GtkBox">
<property name="visible">True</property>
+ <property name="orientation">vertical</property>
<property name="can_focus">False</property>
- <property name="maximum-size">400</property>
- <property name="tightening-threshold">300</property>
+ <property name="valign">start</property>
+ <property name="expand">True</property>
+ <style>
+ <class name="avatar-page"/>
+ </style>
<child>
<object class="GtkBox">
<property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="valign">center</property>
- <property name="hexpand">True</property>
<property name="orientation">vertical</property>
- <property name="spacing">12</property>
+ <property name="can_focus">False</property>
+ <property name="expand">True</property>
<child>
- <object class="GtkListBox">
+ <object class="HdyAvatar" id="avatar">
<property name="visible">True</property>
<property name="can_focus">False</property>
- <property name="expand">True</property>
- <property name="selection-mode">none</property>
+ <property name="valign">center</property>
+ <property name="halign">center</property>
+ <property name="size" bind-source="avatar_size" bind-property="value"
bind-flags="sync-create"></property>
+ <property name="show-initials" bind-source="avatar_show_initials"
bind-property="state" bind-flags="sync-create"/>
+ <property name="text" bind-source="avatar_text" bind-property="text"
bind-flags="sync-create"/>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">Avatar</property>
+ <property name="halign">center</property>
+ <property name="xalign">0</property>
+ <property name="wrap">True</property>
+ <property name="wrap-mode">word-char</property>
+ <property name="justify">center</property>
<style>
- <class name="content"/>
+ <class name="title"/>
+ <class name="large-title"/>
</style>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
+ <child>
+ <object class="GtkLabel">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="label" translatable="yes">A user avatar with generated
fallback.</property>
+ <property name="justify">center</property>
+ <property name="use_markup">true</property>
+ <property name="wrap">True</property>
+ <style>
+ <class name="body"/>
+ <class name="description"/>
+ </style>
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">True</property>
+ </packing>
+ </child>
+ </object>
+ </child>
+ <child>
+ <object class="HdyClamp">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="maximum-size">400</property>
+ <property name="tightening-threshold">300</property>
+ <child>
+ <object class="GtkBox">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="valign">center</property>
+ <property name="hexpand">True</property>
+ <property name="orientation">vertical</property>
+ <property name="spacing">12</property>
<child>
- <object class="HdyActionRow">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="title" translatable="yes">Text</property>
- <child>
- <object class="GtkEntry" id="avatar_text">
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="valign">center</property>
- </object>
- </child>
- </object>
- </child>
- <child>
- <object class="HdyActionRow">
+ <object class="GtkListBox">
<property name="visible">True</property>
<property name="can_focus">False</property>
- <property name="title" translatable="yes">Show initials</property>
- <property name="activatable_widget">avatar_show_initials</property>
+ <property name="expand">True</property>
+ <property name="selection-mode">none</property>
+ <style>
+ <class name="content"/>
+ </style>
<child>
- <object class="GtkSwitch" id="avatar_show_initials">
+ <object class="HdyActionRow">
<property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="valign">center</property>
- <property name="state">True</property>
+ <property name="can_focus">False</property>
+ <property name="title" translatable="yes">Text</property>
+ <child>
+ <object class="GtkEntry" id="avatar_text">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="valign">center</property>
+ </object>
+ </child>
</object>
</child>
- </object>
- </child>
- <child>
- <object class="HdyActionRow">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="title" translatable="yes">File</property>
<child>
- <object class="GtkFileChooserButton" id="avatar_filechooser">
+ <object class="HdyActionRow">
<property name="visible">True</property>
<property name="can_focus">False</property>
- <property name="valign">center</property>
- <property name="title" translatable="yes"/>
- <signal name="file-set" swapped="yes"
handler="avatar_file_set_cb"/>
- <property name="filter">avatar_file_filter</property>
+ <property name="title" translatable="yes">Show
initials</property>
+ <property
name="activatable_widget">avatar_show_initials</property>
+ <child>
+ <object class="GtkSwitch" id="avatar_show_initials">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="valign">center</property>
+ <property name="state">True</property>
+ </object>
+ </child>
</object>
</child>
<child>
- <object class="GtkButton">
+ <object class="HdyActionRow">
<property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="valign">center</property>
- <signal name="clicked" swapped="yes"
handler="avatar_file_remove_cb"/>
+ <property name="can_focus">False</property>
+ <property name="title" translatable="yes">File</property>
<child>
- <object class="GtkImage">
+ <object class="GtkFileChooserButton" id="avatar_filechooser">
<property name="visible">True</property>
<property name="can_focus">False</property>
- <property name="icon_name">avatar-delete-symbolic</property>
- <property name="icon_size">1</property>
+ <property name="valign">center</property>
+ <property name="title" translatable="yes"/>
+ <signal name="file-set" swapped="yes"
handler="avatar_file_set_cb"/>
+ <property name="filter">avatar_file_filter</property>
+ </object>
+ </child>
+ <child>
+ <object class="GtkButton">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="valign">center</property>
+ <signal name="clicked" swapped="yes"
handler="avatar_file_remove_cb"/>
+ <child>
+ <object class="GtkImage">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property
name="icon_name">avatar-delete-symbolic</property>
+ <property name="icon_size">1</property>
+ </object>
+ </child>
</object>
</child>
</object>
</child>
- </object>
- </child>
- <child>
- <object class="HdyActionRow">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="title" translatable="yes">Size</property>
<child>
- <object class="GtkSpinButton" id="avatar_size">
+ <object class="HdyActionRow">
<property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="valign">center</property>
- <property name="numeric">True</property>
- <property name="adjustment">avatar_adjustment</property>
+ <property name="can_focus">False</property>
+ <property name="title" translatable="yes">Size</property>
+ <child>
+ <object class="GtkSpinButton" id="avatar_size">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="valign">center</property>
+ <property name="numeric">True</property>
+ <property name="adjustment">avatar_adjustment</property>
+ </object>
+ </child>
</object>
</child>
- </object>
- </child>
- <child>
- <object class="HdyActionRow">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="title" translatable="yes">Export to file</property>
<child>
- <object class="GtkButton" id="avatar_save_file">
+ <object class="HdyActionRow">
<property name="visible">True</property>
- <property name="valign">center</property>
- <signal name="clicked" swapped="yes"
handler="avatar_save_to_file_cb"/>
+ <property name="can_focus">False</property>
+ <property name="title" translatable="yes">Export to
file</property>
<child>
- <object class="GtkImage">
+ <object class="GtkButton" id="avatar_save_file">
<property name="visible">True</property>
- <property name="icon_name">avatar-save-symbolic</property>
- <property name="icon_size">1</property>
+ <property name="valign">center</property>
+ <signal name="clicked" swapped="yes"
handler="avatar_save_to_file_cb"/>
+ <child>
+ <object class="GtkImage">
+ <property name="visible">True</property>
+ <property
name="icon_name">avatar-save-symbolic</property>
+ <property name="icon_size">1</property>
+ </object>
+ </child>
</object>
</child>
</object>
</child>
</object>
</child>
- </object>
- </child>
- <child>
- <object class="GtkListBox" id="avatar_contacts">
- <property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="expand">True</property>
- <property name="selection-mode">none</property>
- <style>
- <class name="content"/>
- </style>
+ <child>
+ <object class="GtkListBox" id="avatar_contacts">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="expand">True</property>
+ <property name="selection-mode">none</property>
+ <style>
+ <class name="content"/>
+ </style>
+ </object>
+ </child>
</object>
</child>
</object>
@@ -1367,83 +1235,83 @@ Try using it with a horizontally expanded clamp to make your search entry adapti
</object>
</child>
</object>
+ <packing>
+ <property name="name">avatar</property>
+ <property name="title" translatable="yes">Avatar</property>
+ </packing>
</child>
- </object>
- <packing>
- <property name="name">avatar</property>
- <property name="title" translatable="yes">Avatar</property>
- </packing>
- </child>
- <child>
- <object class="HdyStatusPage">
- <property name="visible">True</property>
- <property name="icon-name">widget-window-symbolic</property>
- <property name="title" translatable="yes">Window</property>
- <property name="description" translatable="yes">A freeform window.
-
-It allows to have headerbar in content area, incl. above content, and round corners on the bottom. This
window is an example, try hiding the titlebar.</property>
<child>
- <object class="HdyClamp">
+ <object class="HdyStatusPage">
<property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="halign">fill</property>
- <property name="valign">fill</property>
- <property name="expand">True</property>
- <property name="maximum-size">400</property>
- <property name="tightening-threshold">300</property>
+ <property name="icon-name">widget-window-symbolic</property>
+ <property name="title" translatable="yes">Window</property>
+ <property name="description" translatable="yes">A freeform window.
+
+ It allows to have headerbar in content area, incl. above content, and round corners on the bottom. This
window is an example, try hiding the titlebar.</property>
<child>
- <object class="GtkBox">
+ <object class="HdyClamp">
<property name="visible">True</property>
- <property name="orientation">vertical</property>
<property name="can_focus">False</property>
- <property name="valign">start</property>
+ <property name="halign">fill</property>
+ <property name="valign">fill</property>
<property name="expand">True</property>
+ <property name="maximum-size">400</property>
+ <property name="tightening-threshold">300</property>
<child>
- <object class="GtkListBox">
+ <object class="GtkBox">
<property name="visible">True</property>
+ <property name="orientation">vertical</property>
<property name="can_focus">False</property>
+ <property name="valign">start</property>
<property name="expand">True</property>
- <property name="selection-mode">none</property>
- <style>
- <class name="content"/>
- </style>
<child>
- <object class="HdyActionRow">
+ <object class="GtkListBox">
<property name="visible">True</property>
<property name="can_focus">False</property>
- <property name="title" translatable="yes">Show titlebar</property>
- <property
name="activatable_widget">window_header_revealer_switch</property>
+ <property name="expand">True</property>
+ <property name="selection-mode">none</property>
+ <style>
+ <class name="content"/>
+ </style>
<child>
- <object class="GtkSwitch" id="window_header_revealer_switch">
+ <object class="HdyActionRow">
<property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="state">True</property>
- <property name="valign">center</property>
+ <property name="can_focus">False</property>
+ <property name="title" translatable="yes">Show titlebar</property>
+ <property
name="activatable_widget">window_header_revealer_switch</property>
+ <child>
+ <object class="GtkSwitch" id="window_header_revealer_switch">
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="state">True</property>
+ <property name="valign">center</property>
+ </object>
+ </child>
</object>
</child>
</object>
</child>
- </object>
- </child>
- <child>
- <object class="HdyWindowHandle">
- <property name="visible">True</property>
- <property name="margin-top">12</property>
<child>
- <object class="GtkListBox">
+ <object class="HdyWindowHandle">
<property name="visible">True</property>
- <property name="can_focus">False</property>
- <property name="expand">True</property>
- <property name="selection-mode">none</property>
- <style>
- <class name="content"/>
- </style>
+ <property name="margin-top">12</property>
<child>
- <object class="HdyActionRow">
+ <object class="GtkListBox">
<property name="visible">True</property>
<property name="can_focus">False</property>
- <property name="title" translatable="yes">This row acts as a
titlebar</property>
- <property name="subtitle" translatable="yes">Try dragging or right
clicking it.</property>
+ <property name="expand">True</property>
+ <property name="selection-mode">none</property>
+ <style>
+ <class name="content"/>
+ </style>
+ <child>
+ <object class="HdyActionRow">
+ <property name="visible">True</property>
+ <property name="can_focus">False</property>
+ <property name="title" translatable="yes">This row acts as a
titlebar</property>
+ <property name="subtitle" translatable="yes">Try dragging or
right clicking it.</property>
+ </object>
+ </child>
</object>
</child>
</object>
@@ -1453,59 +1321,148 @@ It allows to have headerbar in content area, incl. above content, and round corn
</object>
</child>
</object>
+ <packing>
+ <property name="name">window</property>
+ <property name="title" translatable="yes">Window</property>
+ </packing>
+ </child>
+ <child>
+ <object class="HdyStatusPage">
+ <property name="visible">True</property>
+ <property name="icon-name">widget-flap-symbolic</property>
+ <property name="title" translatable="yes">Flap</property>
+ <property name="description" translatable="yes">A widget showing a flap next to or
above the content.</property>
+ <child>
+ <object class="GtkButton">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Run the demo</property>
+ <property name="halign">center</property>
+ <signal name="clicked" handler="flap_demo_clicked_cb" swapped="no"/>
+ </object>
+ </child>
+ </object>
+ <packing>
+ <property name="name">flap</property>
+ <property name="title" translatable="yes">Flap</property>
+ </packing>
+ </child>
+ <child>
+ <object class="HdyStatusPage">
+ <property name="visible">True</property>
+ <property name="icon-name">widget-tab-view-symbolic</property>
+ <property name="title" translatable="yes">Tab View</property>
+ <property name="description" translatable="yes">A modern tab widget.</property>
+ <child>
+ <object class="GtkButton">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Run the demo</property>
+ <property name="halign">center</property>
+ <signal name="clicked" handler="tab_view_demo_clicked_cb" swapped="no"/>
+ </object>
+ </child>
+ </object>
+ <packing>
+ <property name="name">tab-view</property>
+ <property name="title" translatable="yes">Tab View</property>
+ </packing>
</child>
</object>
- <packing>
- <property name="name">window</property>
- <property name="title" translatable="yes">Window</property>
- </packing>
</child>
+ </object>
+ <packing>
+ <property name="name">content</property>
+ </packing>
+ </child>
+ </object>
+ </child>
+ <child>
+ <object class="GtkBox">
+ <property name="visible">True</property>
+ <property name="orientation">vertical</property>
+ <child>
+ <object class="HdyHeaderBar" id="deck_sub_header_bar">
+ <property name="visible">True</property>
+ <property name="show_close_button">True</property>
<child>
- <object class="HdyStatusPage">
+ <object class="GtkButton" id="deck-sub-back">
+ <property name="can_focus">False</property>
+ <property name="receives_default">False</property>
+ <property name="valign">center</property>
+ <property name="use-underline">True</property>
<property name="visible">True</property>
- <property name="icon-name">widget-flap-symbolic</property>
- <property name="title" translatable="yes">Flap</property>
- <property name="description" translatable="yes">A widget showing a flap next to or above
the content.</property>
+ <signal name="clicked" handler="deck_back_clicked_cb"/>
+ <style>
+ <class name="image-button"/>
+ </style>
+ <child internal-child="accessible">
+ <object class="AtkObject" id="a11y-deck-sub-back">
+ <property name="accessible-name" translatable="yes">Back</property>
+ </object>
+ </child>
<child>
- <object class="GtkButton">
+ <object class="GtkImage">
<property name="visible">True</property>
- <property name="label" translatable="yes">Run the demo</property>
- <property name="halign">center</property>
- <signal name="clicked" handler="flap_demo_clicked_cb" swapped="no"/>
+ <property name="can_focus">False</property>
+ <property name="icon_name">go-previous-symbolic</property>
+ <property name="icon_size">1</property>
</object>
</child>
</object>
- <packing>
- <property name="name">flap</property>
- <property name="title" translatable="yes">Flap</property>
- </packing>
</child>
+ </object>
+ </child>
+ <child>
+ <object class="GtkScrolledWindow">
+ <property name="visible">True</property>
+ <property name="hscrollbar-policy">never</property>
+ <property name="vexpand">True</property>
<child>
- <object class="HdyStatusPage">
+ <object class="GtkBox">
+ <property name="orientation">vertical</property>
+ <property name="valign">center</property>
<property name="visible">True</property>
- <property name="icon-name">widget-tab-view-symbolic</property>
- <property name="title" translatable="yes">Tab View</property>
- <property name="description" translatable="yes">A modern tab widget.</property>
+ <property name="margin">12</property>
+ <property name="spacing">12</property>
<child>
- <object class="GtkButton">
+ <object class="GtkLabel">
<property name="visible">True</property>
- <property name="label" translatable="yes">Run the demo</property>
+ <property name="can_focus">False</property>
<property name="halign">center</property>
- <signal name="clicked" handler="tab_view_demo_clicked_cb" swapped="no"/>
+ <property name="label" translatable="yes">Go back</property>
+ <property name="justify">center</property>
+ <property name="wrap">True</property>
+ <property name="wrap-mode">word-char</property>
+ <style>
+ <class name="title"/>
+ <class name="large-title"/>
+ </style>
+ </object>
+ </child>
+ <child>
+ <object class="GtkImage">
+ <property name="icon-name">gesture-touchscreen-swipe-back-symbolic</property>
+ <property name="pixel-size">128</property>
+ <property name="visible">True</property>
+ <style>
+ <class name="dim-label"/>
+ </style>
+ </object>
+ </child>
+ <child>
+ <object class="GtkImage">
+ <property name="icon-name">gesture-touchpad-swipe-back-symbolic</property>
+ <property name="pixel-size">128</property>
+ <property name="visible">True</property>
+ <style>
+ <class name="dim-label"/>
+ </style>
</object>
</child>
</object>
- <packing>
- <property name="name">tab-view</property>
- <property name="title" translatable="yes">Tab View</property>
- </packing>
</child>
</object>
</child>
</object>
- <packing>
- <property name="name">content</property>
- </packing>
</child>
</object>
</child>
@@ -1528,12 +1485,6 @@ It allows to have headerbar in content area, incl. above content, and round corn
<headerbar name="deck_sub_header_bar"/>
</headerbars>
</object>
- <object class="HdySwipeGroup" id="deck_swipe_group">
- <swipeables>
- <swipeable name="header_deck"/>
- <swipeable name="content_deck"/>
- </swipeables>
- </object>
<object class="GtkAdjustment" id="clamp_maximum_size_adjustment">
<property name="lower">0</property>
<property name="upper">10000</property>
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]