application-main-window: Sync the pane size request

Bind each pane's elements minimum size requests via size groups.
This commit is contained in:
Adrien Plazas 2020-01-16 13:52:03 +01:00 committed by Julian Sparber
parent 7d4a61d431
commit edfb1a2cf3
2 changed files with 38 additions and 0 deletions

View file

@ -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",

View file

@ -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>