Skip to content

feat(canvas): keyboard spatial navigation + shortcuts UX#211

Merged
DeadWaveWave merged 5 commits intomainfrom
feat/foucs-moving
Apr 30, 2026
Merged

feat(canvas): keyboard spatial navigation + shortcuts UX#211
DeadWaveWave merged 5 commits intomainfrom
feat/foucs-moving

Conversation

@DeadWaveWave
Copy link
Copy Markdown
Owner

What

Adds keyboard spatial navigation on the workspace canvas (beam-first).

  • Node navigation: Cmd/Ctrl + Option/Alt + Arrow
  • Space navigation: Cmd/Ctrl + Option/Alt + Shift + Arrow

Behavior

  • Captures these shortcuts even when focus is inside terminal/editor inputs.
  • Space navigation clears node selection + editing focus and keeps focus on canvas.
  • Node navigation focuses the target node's primary editor.
  • Node navigation works across spaces and activates the target space as needed.
  • Space navigation anchor is reused only while the last navigated space overlaps the viewport center 40% band; otherwise it recomputes from the current view.

Settings UX

  • Keybindings render as keycaps (more scannable than plain text).
  • Spatial navigation keybindings are grouped into a compact D-pad preview with a "Customize..." expander.

Verification

  • pnpm check
  • pnpm test -- --run
  • pnpm test:e2e tests/e2e/shortcuts.spec.ts

@DeadWaveWave DeadWaveWave merged commit 49f8259 into main Apr 30, 2026
7 checks passed
@DeadWaveWave DeadWaveWave deleted the feat/foucs-moving branch April 30, 2026 16:36
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.

1 participant