using Adw; using Gtk; public class MainWindow : Adw.ApplicationWindow { private ConversationListView conversation_list_view; private MessageListView message_list_view; public MainWindow () { Object (title: "Kordophone"); var split_view = new NavigationSplitView (); split_view.set_min_sidebar_width (400); set_content (split_view); conversation_list_view = new ConversationListView (); conversation_list_view.conversation_selected.connect (conversation_selected); var conversation_list_page = new NavigationPage (conversation_list_view, "Conversations"); split_view.sidebar = conversation_list_page; message_list_view = new MessageListView (new MessageListModel ("123")); var message_list_page = new NavigationPage (message_list_view, "Messages"); split_view.content = message_list_page; } private void conversation_selected(string? conversation_guid) { if (conversation_guid == null) { message_list_view.model = null; } else { message_list_view.model = new MessageListModel (conversation_guid); } } }