fix: shortcuts multiple windows (#23)
Some checks failed
ci/woodpecker/push/woodpecker Pipeline failed
Some checks failed
ci/woodpecker/push/woodpecker Pipeline failed
This commit is contained in:
parent
838cb0328f
commit
5582264464
2 changed files with 12 additions and 3 deletions
|
@ -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";
|
||||
|
|
10
src/main.py
10
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, ["<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
|
||||
|
|
Loading…
Reference in a new issue