From 66be56f785fa896a2e68881d9828f50fecd5420d Mon Sep 17 00:00:00 2001 From: Heliguy Date: Sat, 28 Sep 2024 22:42:33 -0400 Subject: [PATCH] Focus name entry if search is disabled --- src/snapshot_page/new_snapshot_dialog.py | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/src/snapshot_page/new_snapshot_dialog.py b/src/snapshot_page/new_snapshot_dialog.py index 082d206..7b10ac1 100644 --- a/src/snapshot_page/new_snapshot_dialog.py +++ b/src/snapshot_page/new_snapshot_dialog.py @@ -142,8 +142,8 @@ class NewSnapshotDialog(Adw.Dialog): i += 1 row.check_button.set_active(True) - def set_packages(self, packages): - for package in packages: + def set_packages(self): + for package in self.packages: row = AppRow(package) row.set_activatable(False) self.selected_rows.append(row) @@ -152,6 +152,11 @@ class NewSnapshotDialog(Adw.Dialog): def enter_handler(self, *args): if self.create_button.get_sensitive(): self.create_button.activate() + + def present(self, *args, **kwargs): + super().present(*args, **kwargs) + if not self.search_button.get_visible(): + self.name_entry.grab_focus() def __init__(self, snapshot_page, loading_status, on_done=None, packages=None, **kwargs): super().__init__(**kwargs) @@ -164,6 +169,7 @@ class NewSnapshotDialog(Adw.Dialog): self.rows = [] self.selected_rows = [] self.workers = [] + self.packages = packages # Connections self.connect("closed", self.on_close) @@ -182,10 +188,10 @@ class NewSnapshotDialog(Adw.Dialog): self.search_entry.set_editable(False) self.search_button.set_visible(False) self.nav_page.set_title(_("New Snapshot")) + self.set_packages() + self.no_results.set_visible(False) if len(packages) == 1: self.name_entry.set_title(_("Name this Snapshot")) - self.set_packages(packages) - self.no_results.set_visible(False) else: self.nav_page.set_title(_("New Snapshots")) self.generate_list()