fix: shortcuts multiple windows (#23)

This commit is contained in:
0xMRTT 2023-08-21 00:37:47 +02:00
parent 838cb0328f
commit 5582264464
2 changed files with 12 additions and 3 deletions

View File

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

View File

@ -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, ["<primary>q"])
self.create_action("close", self.on_close, ["<primary>w"])
self.create_action('about', self.on_about_action)
self.create_action('preferences', self.on_preferences_action, ['<primary>comma'])
self.create_action('new_chat', self.on_new_chat_action, ["<primary>n"])
self.create_action('ask', self.on_ask, ["Return"])
self.create_action('new_window', self.on_new_window, ["<primary>w"])
self.create_action('new_window', self.on_new_window, ["<primary><shift>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