[gnome-taquin/arnaudb/wip/gtk4: 27/43] GtkStack is not subclassable anymore.
- From: Arnaud B. <arnaudb src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-taquin/arnaudb/wip/gtk4: 27/43] GtkStack is not subclassable anymore.
- Date: Thu, 30 Apr 2020 13:23:59 +0000 (UTC)
commit f8a35b8fed7cc8dc4ea2175cde3c13cc36ec40dd
Author: Arnaud Bonatti <arnaud bonatti gmail com>
Date: Sat Apr 18 15:58:41 2020 +0200
GtkStack is not subclassable anymore.
data/ui/base-view.ui | 28 ++++++++++++++++------------
src/base-view.vala | 15 +++++++++++----
2 files changed, 27 insertions(+), 16 deletions(-)
---
diff --git a/data/ui/base-view.ui b/data/ui/base-view.ui
index 324edb0..430a19e 100644
--- a/data/ui/base-view.ui
+++ b/data/ui/base-view.ui
@@ -17,21 +17,25 @@
-->
<interface>
<requires lib="gtk+" version="3.96"/>
- <template class="BaseView" parent="GtkStack">
- <property name="transition-type">over-down-up</property>
- <property name="transition-duration">300</property>
+ <template class="BaseView" parent="GtkWidget">
<child>
- <object class="GtkStackPage">
- <property name="name">main-view</property>
- <property name="child">
- <object class="GtkOverlay" id="notifications_overlay">
- <child>
- <object class="GtkGrid" id="main_grid">
- <property name="orientation">vertical</property>
+ <object class="GtkStack" id="stack">
+ <property name="transition-type">over-down-up</property>
+ <property name="transition-duration">300</property>
+ <child>
+ <object class="GtkStackPage">
+ <property name="name">main-view</property>
+ <property name="child">
+ <object class="GtkOverlay" id="notifications_overlay">
+ <child>
+ <object class="GtkGrid" id="main_grid">
+ <property name="orientation">vertical</property>
+ </object>
+ </child>
</object>
- </child>
+ </property>
</object>
- </property>
+ </child>
</object>
</child>
</template>
diff --git a/src/base-view.vala b/src/base-view.vala
index 5c3cb01..fc2f8e6 100644
--- a/src/base-view.vala
+++ b/src/base-view.vala
@@ -18,8 +18,9 @@
using Gtk;
[GtkTemplate (ui = "/org/gnome/Taquin/ui/base-view.ui")]
-private class BaseView : Stack, AdaptativeWidget
+private class BaseView : Widget, AdaptativeWidget
{
+ [GtkChild] private Stack stack;
[GtkChild] protected Grid main_grid;
internal virtual bool handle_copy_text (out string copy_text)
@@ -32,6 +33,12 @@ private class BaseView : Stack, AdaptativeWidget
internal virtual void close_popovers () {}
+ construct
+ {
+ BinLayout layout = new BinLayout ();
+ set_layout_manager (layout);
+ }
+
/*\
* * adaptative stuff
\*/
@@ -55,7 +62,7 @@ private class BaseView : Stack, AdaptativeWidget
if (in_window_about)
{
in_window_about = false;
- set_visible_child (notifications_overlay); // or set_visible_child_name ("main-view");
+ stack.set_visible_child (notifications_overlay); // or set_visible_child_name ("main-view");
}
else
assert_not_reached ();
@@ -92,7 +99,7 @@ private class BaseView : Stack, AdaptativeWidget
ref artists, ref authors, ref comments, ref copyright, ref documenters,
ref logo_icon_name, ref program_name, ref translator_credits, ref version, ref website, ref website_label);
about_list.set_window_size (saved_window_size);
about_list.show ();
- add (about_list);
+ stack.add (about_list);
about_list_created = true;
}
@@ -101,7 +108,7 @@ private class BaseView : Stack, AdaptativeWidget
requires (in_window_about == false)
{
about_list.reset ();
- set_visible_child (about_list);
+ stack.set_visible_child (about_list);
in_window_about = true;
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]