Add scoped command palette #1

Merged
Fryuni merged 5 commits from command-pallete into forgejo 2026-09-13 18:21:04 +00:00
Owner

Summary

Add a keyboard-driven command palette for navigating Forgejo and searching within the current account or repository. This PR is intentionally for the Fryuni/forgejo fork's forgejo branch, not upstream.

Changes

  • Open a centered, full-screen-backed modal with Ctrl+K / Cmd+K or the navbar search button.
  • Pre-fill the current scope, show accessible pages for empty searches, and search only immediate child resources for nonempty queries.
  • Support typed resource filters and GitHub-style @, #, !, and / shortcuts; Tab enters a scope and empty Backspace moves up.
  • Search users, organizations, repositories, account/repository projects, issues, pull requests, file paths, branches, releases, and milestones where supported by the scope.
  • Enforce private/restricted account visibility, repository and unit permissions, globally disabled repository units, and draft-release visibility server-side.
  • Add responsive theme-aware styling, accessible keyboard navigation, focus restoration, request cancellation, and retry handling.
  • Add focused integration regressions for scope hierarchy, permission boundaries, and AppSubURL navigation links.

Ctrl/Cmd+K intentionally takes precedence over the Markdown editor's insert-link shortcut.

Testing

  • make frontend — passed.
  • npx tsc --noEmit — passed.
  • ESLint and Stylelint on changed frontend sources — passed.
  • make test-sqlite#TestCommandPalette — passed, including private repositories, issue-only team access, disabled units, restricted users, draft releases, and sub-URL links.
  • Live Chromium checks against the Forgejo fixture server: desktop/mobile layouts, light/dark themes, keyboard/mouse navigation, Enter/new-tab navigation, focus restoration, retry recovery, and stale-response cancellation.
  • Axe reported no accessibility violations in checked palette states.

This implementation was authored with a coding agent and is not intended for submission to upstream Forgejo.

## Summary Add a keyboard-driven command palette for navigating Forgejo and searching within the current account or repository. This PR is intentionally for the Fryuni/forgejo fork's `forgejo` branch, not upstream. ## Changes - Open a centered, full-screen-backed modal with Ctrl+K / Cmd+K or the navbar search button. - Pre-fill the current scope, show accessible pages for empty searches, and search only immediate child resources for nonempty queries. - Support typed resource filters and GitHub-style `@`, `#`, `!`, and `/` shortcuts; Tab enters a scope and empty Backspace moves up. - Search users, organizations, repositories, account/repository projects, issues, pull requests, file paths, branches, releases, and milestones where supported by the scope. - Enforce private/restricted account visibility, repository and unit permissions, globally disabled repository units, and draft-release visibility server-side. - Add responsive theme-aware styling, accessible keyboard navigation, focus restoration, request cancellation, and retry handling. - Add focused integration regressions for scope hierarchy, permission boundaries, and AppSubURL navigation links. Ctrl/Cmd+K intentionally takes precedence over the Markdown editor's insert-link shortcut. ## Testing - `make frontend` — passed. - `npx tsc --noEmit` — passed. - ESLint and Stylelint on changed frontend sources — passed. - `make test-sqlite#TestCommandPalette` — passed, including private repositories, issue-only team access, disabled units, restricted users, draft releases, and sub-URL links. - Live Chromium checks against the Forgejo fixture server: desktop/mobile layouts, light/dark themes, keyboard/mouse navigation, Enter/new-tab navigation, focus restoration, retry recovery, and stale-response cancellation. - Axe reported no accessibility violations in checked palette states. This implementation was authored with a coding agent and is not intended for submission to upstream Forgejo.
Fryuni merged commit e7b6fafc0e into forgejo 2026-09-13 18:21:04 +00:00
Fryuni deleted branch command-pallete 2026-09-13 18:21:04 +00:00
Fryuni referenced this pull request from a commit 2026-09-13 18:21:04 +00:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
Fryuni/forgejo!1
No description provided.