diff --git a/briar-gtk/briar_gtk/actions/window.py b/briar-gtk/briar_gtk/actions/window.py index 10e2e497fd74288223bd80eb254d64a6e2c9e110..c6908c43fc6a815a1c0b423bb9fa48953c966562 100644 --- a/briar-gtk/briar_gtk/actions/window.py +++ b/briar-gtk/briar_gtk/actions/window.py @@ -64,34 +64,34 @@ class WindowActions(Actions): # pylint: disable=unused-argument def _back_to_sidebar(self, action, parameter): - if isinstance(self.widget.current_controller, MainWindowController): - self.widget.current_controller.close_private_chat() + if isinstance(self.widget.main_window_controller, MainWindowController): + self.widget.main_window_controller.close_private_chat() # pylint: disable=unused-argument def _delete_all_messages_dialog(self, action, parameter): - self.widget.current_controller.open_delete_all_messages_dialog() + self.widget.main_window_controller.open_delete_all_messages_dialog() # pylint: disable=unused-argument def _delete_contact_dialog(self, action, parameter): - self.widget.current_controller.open_delete_contact_dialog() + self.widget.main_window_controller.open_delete_contact_dialog() # pylint: disable=unused-argument def _change_alias_contact_dialog(self, action, parameter): - self.widget.current_controller.open_change_contact_alias_dialog() + self.widget.main_window_controller.open_change_contact_alias_dialog() # pylint: disable=unused-argument def _open_about_page(self, action, parameter): - self.widget.current_controller.open_about_page() + self.widget.main_window_controller.open_about_page() # pylint: disable=unused-argument def _open_add_contact(self, action, parameter): - self.widget.show_add_contact_container() + self.widget.show_add_contact_view() # pylint: disable=unused-argument def _open_main_window(self, action, parameter): - self.widget.show_main_container() + self.widget.show_main_window_view() # pylint: disable=unused-argument def _open_private_chat(self, action, contact_id): - self.widget.current_controller.open_private_chat( + self.widget.main_window_controller.open_private_chat( contact_id.get_int32()) diff --git a/briar-gtk/briar_gtk/views/add_contact.py b/briar-gtk/briar_gtk/views/add_contact.py index 8486f4f37b40bab9c76609c3b0e1d4526dee8566..f4cce0176f2adcf5c521185d937ebe6bf3d0a0b7 100644 --- a/briar-gtk/briar_gtk/views/add_contact.py +++ b/briar-gtk/briar_gtk/views/add_contact.py @@ -63,7 +63,7 @@ class AddContactView(Gtk.Overlay): return alias_error_label.hide() self._add_contact() - APP().window.show_main_container() + APP().window.show_main_window_view() def _setup_view(self): self._add_from_resource(self.ADD_CONTACT_UI) diff --git a/briar-gtk/briar_gtk/views/login.py b/briar-gtk/briar_gtk/views/login.py index 94b5c9853fe7c28fc18bc6e216ce81d6dfa65963..980bf9f90b02bade58e20cee616f74b630ee60e3 100644 --- a/briar-gtk/briar_gtk/views/login.py +++ b/briar-gtk/briar_gtk/views/login.py @@ -80,7 +80,7 @@ class LoginView(Gtk.Overlay): def _login_completed(self, succeeded): function = self._login_failed if succeeded: - function = self._window.show_main_container + function = self._window.show_main_window_view GLib.idle_add(function) def _login_failed(self): diff --git a/briar-gtk/briar_gtk/views/registration.py b/briar-gtk/briar_gtk/views/registration.py index b9f4208a9b4038183241b02bf64a98abcb8a9efc..63aa3004359c80ca902781739aa294ee7f20e48e 100644 --- a/briar-gtk/briar_gtk/views/registration.py +++ b/briar-gtk/briar_gtk/views/registration.py @@ -142,7 +142,7 @@ class RegistrationView(Gtk.Overlay): def _registration_completed(self, succeeded): function = self._registration_failed if succeeded: - function = self._window.show_main_container + function = self._window.show_main_window_view GLib.idle_add(function) def _registration_failed(self): diff --git a/briar-gtk/briar_gtk/window.py b/briar-gtk/briar_gtk/window.py index 776aba6abd231e7a19e018490521ca275ddeda64..335824932d185de57590a5378308411155bd7822 100644 --- a/briar-gtk/briar_gtk/window.py +++ b/briar-gtk/briar_gtk/window.py @@ -22,18 +22,21 @@ class Window(Gtk.ApplicationWindow): DEFAULT_WINDOW_SIZE = (900, 600) def __init__(self): + self.main_window_controller = None self._initialize_gtk_application_window() WindowActions(self) self._setup_content() self._setup_focus_listener() - def show_main_container(self): - self.current_container.destroy() - self._setup_main_container() + def show_main_window_view(self): + self._current_view.destroy() + self._setup_main_window_view() - def show_add_contact_container(self): - self.current_container.destroy() - self._setup_add_contact_container() + def show_add_contact_view(self): + self._current_view.destroy() + if self.main_window_controller is not None: + self.main_window_controller = None + self._setup_add_contact_view() # pylint: disable=arguments-differ,unused-argument def do_delete_event(self, event): @@ -70,7 +73,7 @@ class Window(Gtk.ApplicationWindow): def _setup_content(self): self._resize_window(self.DEFAULT_WINDOW_SIZE) - self._setup_startup_container() + self._setup_startup_view() def _setup_focus_listener(self): self.connect("focus-in-event", self._on_focus_change) @@ -93,25 +96,24 @@ class Window(Gtk.ApplicationWindow): isinstance(size[0], int) and\ isinstance(size[1], int) - def _setup_container(self, container): - self.current_container = container - self.current_container.show_all() - self.add(self.current_container) + def _setup_view(self, view): + self._current_view = view + self._current_view.show_all() + self.add(self._current_view) - def _setup_startup_container(self): - self._setup_container(StartupView(self)) + def _setup_startup_view(self): + self._setup_view(StartupView(self)) - def _setup_main_container(self): + def _setup_main_window_view(self): builder = self._setup_builder() main_window_view = MainWindowView(builder, self) - main_window_controller = MainWindowController( + self.main_window_controller = MainWindowController( main_window_view, builder) - self._setup_container(main_window_view) + self._setup_view(main_window_view) builder.get_object("chat_menu_button").hide() # TODO: Make default - self.current_controller = main_window_controller - def _setup_add_contact_container(self): - self._setup_container(AddContactView()) + def _setup_add_contact_view(self): + self._setup_view(AddContactView()) def _setup_builder(self): builder = Gtk.Builder.new() diff --git a/briar-gtk/tests/briar_gtk/test_window.py b/briar-gtk/tests/briar_gtk/test_window.py index 157ca231b8593ce4659f72f28f9fec2139c376ed..821c9b77e421de9af104db2613a85e71d872c117 100644 --- a/briar-gtk/tests/briar_gtk/test_window.py +++ b/briar-gtk/tests/briar_gtk/test_window.py @@ -21,7 +21,7 @@ def test_startup_container_at_init(mocker, startup_container, window_actions, window = Window() startup_container.assert_called_once_with(window) - window.current_container.show_all.assert_called_once() + window._current_view.show_all.assert_called_once() def test_window_actions_at_init(mocker, startup_container, window_actions, @@ -35,13 +35,13 @@ def test_window_add_at_init(mocker, startup_container, window_actions, window_add, window_resize): window = Window() - window_add.assert_called_once_with(window.current_container) + window_add.assert_called_once_with(window._current_view) def test_show_main_container(main_window_container, mocker, startup_container, window_actions, window_add, window_resize): - Window().show_main_container() + Window().show_main_window_view() main_window_container.assert_called_once() @@ -51,9 +51,9 @@ def test_show_main_shown(main_window_container, mocker, window_add, window_resize): window = Window() - window.show_main_container() + window.show_main_window_view() - window.current_container.show_all.assert_called_once() + window._current_view.show_all.assert_called_once() def test_show_main_add(main_window_container, mocker, @@ -62,9 +62,9 @@ def test_show_main_add(main_window_container, mocker, window = Window() window_add = mocker.patch(MODULE % "Window.add") - window.show_main_container() + window.show_main_window_view() - window_add.assert_called_once_with(window.current_container) + window_add.assert_called_once_with(window._current_view) def test_show_main_destroy_old(main_window_container, mocker, @@ -72,9 +72,9 @@ def test_show_main_destroy_old(main_window_container, mocker, window_add, window_resize): window = Window() current_container_mock = mocker.MagicMock() - window.current_container = current_container_mock + window._current_view = current_container_mock - window.show_main_container() + window.show_main_window_view() current_container_mock.destroy.assert_called_once()