You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
feat(design): keyboard path for free artboard placement and the minimap in the canvas #3204
I searched open and closed issues and did not find a request for this feature.
I reviewed this request and removed credentials, tokens, private paths, hostnames, and other sensitive data.
Problem or opportunity
Follow-up from @egdev6's review of #3146 (Gentle Design canvas, layout and minimap; part of #2740).
In the design canvas, moving an artboard to a free position is pointer-only: you drag it. The minimap (role="img") is pointer-only too: you click or drag in it to move the view. Keyboard users can use Row/Column/Grid, pan with the arrow keys, zoom with +/- and fit with 0, so nothing is blocked. Free placement itself, though, has no keyboard path, which WCAG 2.1.1 (Keyboard) and 2.5.7 (Dragging Movements) ask for. The docs now say both features are pointer-only.
Proposed outcome
Artboards: a selected artboard can be moved with the keyboard, for example with Alt or a modifier plus the arrow keys, in steps of a few canvas pixels and larger steps with Shift. The layout becomes Free and is saved once when the key is released, the same as after a drag. The move is announced to assistive technology.
Minimap: it becomes focusable, with an accessible name. While it has focus, the arrow keys move the view, or there is a documented keyboard alternative it points to.
The Keyboard shortcuts list and docs/gentle-shell.md describe both.
Alternatives considered
Keep Row/Column/Grid as the only keyboard path. This is what ships today, but it gives keyboard users no free placement.
A "Move to…" dialog with x/y fields. It is precise, but slower than arrow-key nudging for small adjustments.
@doblas thanks. Triage: accept, with two scope changes, and split artboard placement from the minimap.
Before arrow keys can move "the selected artboard", there has to be a keyboard way to select one. Today selection only comes from a pointer press, and Enter/Space on a focused shield open focus mode instead. That selection model, and how it's announced, is the first thing to design.
Keyboard nudging covers WCAG 2.1.1, but not 2.5.7 on its own: 2.5.7 asks for a single-pointer, non-drag alternative. A small "Move to…" coordinates control could cover both; otherwise 2.5.7 should be tracked explicitly.
Watch modifier collisions: the viewport currently handles arrows even with modifiers, and Alt+arrows is browser history navigation.
Minimap: it already supports click without dragging, so its gap is keyboard focus only. tests/design-canvas-minimap.test.ts currently asserts it is not focusable, so that test changes too.
No layout.json format, server or dependency change should be needed. Suggested first slice: keyboard selection and movement of artboards (saved once, with defined behavior on key repeat, blur and design switch), then the minimap. Related: #2685 and #2830 are still open and overlap partly on shortcuts.
Activity
egdev6 commentedon Nov 13, 2026
@doblas thanks. Triage: accept, with two scope changes, and split artboard placement from the minimap.
tests/design-canvas-minimap.test.tscurrently asserts it is not focusable, so that test changes too.No
layout.jsonformat, server or dependency change should be needed. Suggested first slice: keyboard selection and movement of artboards (saved once, with defined behavior on key repeat, blur and design switch), then the minimap. Related: #2685 and #2830 are still open and overlap partly on shortcuts.