Skip to content

Add Vim style navigation to Menu, Clipboard, Emoji & Image-Picker - #8318

Open
Kylar514 wants to merge 1 commit into
basecamp:quattrofrom
Kylar514:menu-vim-motions
Open

Add Vim style navigation to Menu, Clipboard, Emoji & Image-Picker#8318
Kylar514 wants to merge 1 commit into
basecamp:quattrofrom
Kylar514:menu-vim-motions

Conversation

@Kylar514

Copy link
Copy Markdown

What

Adds control-modified vim navigation keys alongside the existing arrow-key handling in four launcher surfaces:

Panel New keys
Menu Ctrl+J/K select, Ctrl+L activate (like Right), Ctrl+H back (like Left, same empty-filter guard)
Clipboard Ctrl+J/K move selection
Emojis Ctrl+J/K row jumps, Ctrl+H/L within-row steps
Image picker Ctrl+H/L previous/next image

All new branches are gated on Qt.ControlModifier, so unmodified letters continue to reach each panel's search filter exactly as before. Existing arrow/PageUp/Home/End behavior is untouched.

Testing

  • test/shell.d/menu-test.sh, clipboard-test.sh, emojis-test.sh,
    image-picker-test.sh pass, including seven new assertions covering every
    added branch
  • Manually exercised against the running shell: navigation in all four
    panels, filter typing unaffected, dmenu mode intact

Copilot AI balanced review requested due to automatic review settings August 26, 2026 01:39

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds Ctrl-modified Vim navigation to four Quickshell launcher surfaces while preserving existing filtering and keyboard behavior.

Changes:

  • Adds Ctrl+H/J/K/L navigation to applicable panels.
  • Extends shell tests with seven shortcut assertions.
  • Retains existing arrow-key and search handling.

Tip

If you aren't ready for review, convert to a draft PR.
Click "Convert to draft" or run gh pr ready --undo.
Click "Ready for review" or run gh pr ready to reengage.

Reviewed changes

Copilot reviewed 8 out of 8 changed files in this pull request and generated no comments.

Show a summary per file
File Description
shell/plugins/menu/Menu.qml Adds Vim-style selection, activation, and back navigation.
shell/plugins/clipboard/Clipboard.qml Adds Ctrl+J/K selection navigation.
shell/plugins/emojis/Emojis.qml Adds Vim-style grid navigation.
shell/plugins/image-picker/ImagePicker.qml Adds Ctrl+H/L carousel navigation.
test/shell.d/menu-test.sh Covers menu shortcuts.
test/shell.d/clipboard-test.sh Covers clipboard shortcuts.
test/shell.d/emojis-test.sh Covers emoji shortcuts.
test/shell.d/image-picker-test.sh Covers image-picker shortcuts.

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants