diff options
Diffstat (limited to 'main/src/ui/main_window.vala')
| -rw-r--r-- | main/src/ui/main_window.vala | 27 |
1 files changed, 17 insertions, 10 deletions
diff --git a/main/src/ui/main_window.vala b/main/src/ui/main_window.vala index da6960ea..fc18d2bd 100644 --- a/main/src/ui/main_window.vala +++ b/main/src/ui/main_window.vala @@ -7,17 +7,19 @@ using Dino.Entities; namespace Dino.Ui { [GtkTemplate (ui = "/im/dino/Dino/main_window.ui")] -public class MainWindow : Adw.ApplicationWindow { +public class MainWindow : Gtk.ApplicationWindow { public signal void conversation_selected(Conversation conversation); [GtkChild] public unowned Stack stack; [GtkChild] public unowned Adw.NavigationSplitView navigation_split_view; - [GtkChild] public unowned MenuButton add_button; + [GtkChild] public unowned SearchEntry conversation_search_entry; [GtkChild] public unowned MenuButton menu_button; + [GtkChild] private unowned Box conversation_list_toolbar; [GtkChild] public unowned Adw.HeaderBar conversation_headerbar; + [GtkChild] public unowned Button conversation_title_button; [GtkChild] public unowned Adw.WindowTitle conversation_window_title; [GtkChild] public unowned ConversationView conversation_view; @@ -56,15 +58,25 @@ public class MainWindow : Adw.ApplicationWindow { this.add_css_class("devel"); } + var header_size_group = new SizeGroup(SizeGroupMode.VERTICAL); + header_size_group.add_widget(conversation_list_toolbar); + header_size_group.add_widget(conversation_headerbar); + ((Widget)this).realize.connect(restore_window_size); conversation_selector.init(stream_interactor); conversation_selector.conversation_selected.connect_after(() => { navigation_split_view.show_content = true; }); + conversation_search_entry.search_changed.connect(() => { + conversation_selector.set_search_text(conversation_search_entry.text); + }); + conversation_search_entry.stop_search.connect(() => { + conversation_search_entry.text = ""; + }); global_search = new GlobalSearch(stream_interactor); search_frame.set_child(global_search.get_widget()); - create_add_menu(add_button, menu_button); + create_menu(menu_button); stack.add_named(welcome_placeholder, "welcome_placeholder"); stack.add_named(accounts_placeholder, "accounts_placeholder"); @@ -137,13 +149,8 @@ public class MainWindow : Adw.ApplicationWindow { } } - private static void create_add_menu(MenuButton add_button, MenuButton menu_button) { - add_button.tooltip_text = Util.string_if_tooltips_active(_("Start Conversation")); - - Builder add_builder = new Builder.from_resource("/im/dino/Dino/menu_add.ui"); - MenuModel add_menu_model = add_builder.get_object("menu_add") as MenuModel; - add_button.set_menu_model(add_menu_model); - + private static void create_menu(MenuButton menu_button) { + menu_button.tooltip_text = Util.string_if_tooltips_active(_("Main Menu")); Builder menu_builder = new Builder.from_resource("/im/dino/Dino/menu_app.ui"); MenuModel menu_menu_model = menu_builder.get_object("menu_app") as MenuModel; menu_button.set_menu_model(menu_menu_model); |
