From a136a2f547ec303173e6db18847528dc9c7db1bd Mon Sep 17 00:00:00 2001 From: heliguy4599 Date: Sat, 12 Oct 2024 17:10:13 -0400 Subject: [PATCH] Add refresh and main menu shortcuts --- src/gtk/help-overlay.blp | 2 +- src/main.py | 43 ++++++++++++++++++++++----------------- src/main_window/window.py | 1 + 3 files changed, 26 insertions(+), 20 deletions(-) diff --git a/src/gtk/help-overlay.blp b/src/gtk/help-overlay.blp index dac10e0..d0eb7c0 100644 --- a/src/gtk/help-overlay.blp +++ b/src/gtk/help-overlay.blp @@ -22,7 +22,7 @@ ShortcutsWindow help_overlay { ShortcutsShortcut { title: _("Refresh"); - action-name: "app.refresh-list"; + action-name: "app.refresh"; } ShortcutsShortcut { diff --git a/src/main.py b/src/main.py index c7b0a20..5f8e5f8 100644 --- a/src/main.py +++ b/src/main.py @@ -41,9 +41,11 @@ class WarehouseApplication(Adw.Application): application_id="io.github.flattool.Warehouse", flags=Gio.ApplicationFlags.DEFAULT_FLAGS, ) - self.create_action("quit", lambda *_: self.quit(), ["q"]) self.create_action("about", self.on_about_action) self.create_action("preferences", self.on_preferences_action) + self.create_action("quit", lambda *_: self.quit(), ["q"]) + self.create_action("refresh", self.on_refresh_shortcut, ["r", "F5"]) + self.create_action("open-menu", lambda *_: self.props.active_window.main_menu.popup(), ["F10"]) self.is_dialog_open = False @@ -73,27 +75,30 @@ class WarehouseApplication(Adw.Application): app_id=self.get_application_id(), lang=lang, ) + + def on_refresh_shortcut(self, *args): + self.props.active_window.refresh_handler() - def file_callback(self, object, result): - window = self.props.active_window - try: - file = object.open_finish(result) - window.install_file(file.get_path()) - except GLib.GError: - pass + # def file_callback(self, object, result): + # window = self.props.active_window + # try: + # file = object.open_finish(result) + # window.install_file(file.get_path()) + # except GLib.GError: + # pass - def install_from_file(self, widget, _a): - window = self.props.active_window + # def install_from_file(self, widget, _a): + # window = self.props.active_window - filter = Gtk.FileFilter(name=_("Flatpaks")) - filter.add_suffix("flatpak") - filter.add_suffix("flatpakref") - filters = Gio.ListStore.new(Gtk.FileFilter) - filters.append(filter) - file_chooser = Gtk.FileDialog() - file_chooser.set_filters(filters) - file_chooser.set_default_filter(filter) - file_chooser.open(window, None, self.file_callback) + # filter = Gtk.FileFilter(name=_("Flatpaks")) + # filter.add_suffix("flatpak") + # filter.add_suffix("flatpakref") + # filters = Gio.ListStore.new(Gtk.FileFilter) + # filters.append(filter) + # file_chooser = Gtk.FileDialog() + # file_chooser.set_filters(filters) + # file_chooser.set_default_filter(filter) + # file_chooser.open(window, None, self.file_callback) def do_activate(self): """Called when the application is activated. diff --git a/src/main_window/window.py b/src/main_window/window.py index 498e4e9..e8fff49 100644 --- a/src/main_window/window.py +++ b/src/main_window/window.py @@ -43,6 +43,7 @@ class WarehouseWindow(Adw.ApplicationWindow): file_drop_view = gtc() stack = gtc() refresh_button = gtc() + main_menu = gtc() navigation_row_listbox = gtc() packages_row = gtc() remotes_row = gtc()