From 5582264464683fb4907decebd703666ad4debc86 Mon Sep 17 00:00:00 2001 From: 0xMRTT <0xMRTT@proton.me> Date: Mon, 21 Aug 2023 00:37:47 +0200 Subject: [PATCH] fix: shortcuts multiple windows (#23) --- src/gtk/help-overlay.blp | 5 +++++ src/main.py | 10 +++++++--- 2 files changed, 12 insertions(+), 3 deletions(-) diff --git a/src/gtk/help-overlay.blp b/src/gtk/help-overlay.blp index fcf925c..61f5e53 100644 --- a/src/gtk/help-overlay.blp +++ b/src/gtk/help-overlay.blp @@ -25,6 +25,11 @@ ShortcutsWindow help_overlay { action-name: "app.quit"; } + ShortcutsShortcut { + title: C_("shortcut window", "Close current window"); + action-name: "app.close"; + } + ShortcutsShortcut { title: C_("shortcut window", "Ask"); action-name: "app.ask"; diff --git a/src/main.py b/src/main.py index 5a90782..c4aff5f 100644 --- a/src/main.py +++ b/src/main.py @@ -65,11 +65,12 @@ class BavarderApplication(Adw.Application): super().__init__(application_id='io.github.Bavarder.Bavarder', flags=Gio.ApplicationFlags.DEFAULT_FLAGS) self.create_action("quit", self.on_quit, ["q"]) + self.create_action("close", self.on_close, ["w"]) self.create_action('about', self.on_about_action) self.create_action('preferences', self.on_preferences_action, ['comma']) self.create_action('new_chat', self.on_new_chat_action, ["n"]) self.create_action('ask', self.on_ask, ["Return"]) - self.create_action('new_window', self.on_new_window, ["w"]) + self.create_action('new_window', self.on_new_window, ["n"]) self.data_path = os.path.join(user_data_dir, "bavarder") @@ -143,9 +144,12 @@ class BavarderApplication(Adw.Application): def on_quit(self, action, *args, **kwargs): """Called when the user activates the Quit action.""" + self.save() + self.quit() + + def on_close(self, action, *args, **kwargs): if self.number_of_win == 1: - self.save() - self.quit() + self.on_quit(action, *args, **kwargs) else: self.win.destroy() self.number_of_win -= 1