diff --git a/src/hike/providers/main.py b/src/hike/providers/main.py index da199e5..b080eed 100644 --- a/src/hike/providers/main.py +++ b/src/hike/providers/main.py @@ -57,12 +57,12 @@ def commands(self) -> CommandHits: The commands for the command palette. """ yield from self._maybe(Backward) - yield BookmarkLocation() + yield from self._maybe(BookmarkLocation) yield ChangeCommandLineLocation() yield ChangeNavigationSide() yield ChangeTheme() - yield CopyLocationToClipboard() - yield CopyMarkdownToClipboard() + yield from self._maybe(CopyLocationToClipboard) + yield from self._maybe(CopyMarkdownToClipboard) yield from self._maybe(Edit) yield from self._maybe(Forward) yield Help() @@ -72,8 +72,8 @@ def commands(self) -> CommandHits: yield JumpToHistory() yield JumpToLocalBrowser() yield Quit() - yield Reload() - yield SaveCopy() + yield from self._maybe(Reload) + yield from self._maybe(SaveCopy) yield SearchBookmarks() yield ToggleNavigation() diff --git a/src/hike/screens/main.py b/src/hike/screens/main.py index b934f8f..95e7cfc 100644 --- a/src/hike/screens/main.py +++ b/src/hike/screens/main.py @@ -329,6 +329,17 @@ def check_action(self, action: str, parameters: tuple[object, ...]) -> bool | No return self.query_one(Viewer).history.can_go_backward or None if action == Edit.action_name(): return self.query_one(Viewer).is_editable or None + if action in ( + command.action_name() + for command in ( + BookmarkLocation, + CopyLocationToClipboard, + CopyMarkdownToClipboard, + Reload, + SaveCopy, + ) + ): + return self.query_one(Viewer).location is not None return True @on(Reload)