[geary: 6/20] application-main-window: Sync the pane size request




commit edfb1a2cf371ab743cbf804cbc4d34b7e4cfb8c6
Author: Adrien Plazas <kekun plazas laposte net>
Date:   Thu Jan 16 13:52:03 2020 +0100

    application-main-window: Sync the pane size request
    
    Bind each pane's elements minimum size requests via size groups.

 src/client/application/application-main-window.vala | 17 +++++++++++++++++
 ui/application-main-window.ui                       | 21 +++++++++++++++++++++
 2 files changed, 38 insertions(+)
---
diff --git a/src/client/application/application-main-window.vala 
b/src/client/application/application-main-window.vala
index 43289e335..4c6d1038d 100644
--- a/src/client/application/application-main-window.vala
+++ b/src/client/application/application-main-window.vala
@@ -328,6 +328,17 @@ public class Application.MainWindow :
     private Gtk.Box conversation_list_box;
     [GtkChild]
     private Gtk.ScrolledWindow conversation_list_scrolled;
+    [GtkChild]
+    private Gtk.SizeGroup folder_size_group;
+    [GtkChild]
+    private Gtk.SizeGroup folder_separator_size_group;
+    [GtkChild]
+    private Gtk.SizeGroup conversations_size_group;
+    [GtkChild]
+    private Gtk.SizeGroup conversations_separator_size_group;
+    [GtkChild]
+    private Gtk.SizeGroup conversation_size_group;
+
     [GtkChild]
     private Gtk.Overlay overlay;
 
@@ -1239,9 +1250,15 @@ public class Application.MainWindow :
         );
 
         this.conversations_paned.pack2(this.conversation_viewer, true, false);
+        this.conversation_size_group.add_widget(this.conversation_viewer);
 
         // Main toolbar
         this.main_toolbar = new MainToolbar(config);
+        this.main_toolbar.add_to_size_groups(this.folder_size_group,
+                                             this.folder_separator_size_group,
+                                             this.conversations_size_group,
+                                             this.conversations_separator_size_group,
+                                             this.conversation_size_group);
         this.main_toolbar.move_folder_menu.folder_selected.connect(on_move_conversation);
         this.main_toolbar.copy_folder_menu.folder_selected.connect(on_copy_conversation);
         this.main_toolbar.bind_property("search-open", this.search_bar, "search-mode-enabled",
diff --git a/ui/application-main-window.ui b/ui/application-main-window.ui
index 4a948294d..872f31bd3 100644
--- a/ui/application-main-window.ui
+++ b/ui/application-main-window.ui
@@ -138,4 +138,25 @@
       <class name="geary-main-window"/>
     </style>
   </template>
+  <object class="GtkSizeGroup" id="folder_size_group">
+    <property name="mode">horizontal</property>
+    <widgets>
+      <widget name="folder_box"/>
+    </widgets>
+  </object>
+  <object class="GtkSizeGroup" id="folder_separator_size_group">
+    <property name="mode">horizontal</property>
+  </object>
+  <object class="GtkSizeGroup" id="conversations_size_group">
+    <property name="mode">horizontal</property>
+    <widgets>
+      <widget name="conversation_list_box"/>
+    </widgets>
+  </object>
+  <object class="GtkSizeGroup" id="conversations_separator_size_group">
+    <property name="mode">horizontal</property>
+  </object>
+  <object class="GtkSizeGroup" id="conversation_size_group">
+    <property name="mode">horizontal</property>
+  </object>
 </interface>


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]