Add complete keyboard navigation.
This commit is contained in:
@@ -72,6 +72,26 @@ surface AppShellSurface {
|
||||
shell.sidebar.width
|
||||
shell.content_area.panel.visible
|
||||
shell.assistant_sidebar.visible
|
||||
|
||||
@guarantee KeyboardTraversal
|
||||
-- Tab and Shift+Tab traverse every enabled button, checkbox, picker,
|
||||
-- and text editor in visual order. Disabled controls are skipped.
|
||||
-- Enter or Space activates the focused control.
|
||||
|
||||
@guarantee KeyboardHints
|
||||
-- Holding Control+Option on macOS or Control+Alt on Linux/Windows reveals
|
||||
-- an access-key marker on every enabled control intersecting the viewport.
|
||||
-- Semantic controls use their direct one-character shortcut. Remaining
|
||||
-- visible controls receive stable two- or three-letter A-Z codes in
|
||||
-- widget-tree order, excluding direct letters as generic prefixes.
|
||||
-- Every marker is a warm-yellow box with black text and border, placed
|
||||
-- wholly inside its control without obscuring activity-bar icons.
|
||||
-- Typing a prefix while holding the modifier hides non-matches and shows
|
||||
-- only each candidate's remaining suffix; a complete code activates its
|
||||
-- control. Escape or modifier release cancels the access-key mode.
|
||||
-- Covered layers and off-screen scroll content receive no code. A focused
|
||||
-- Option/Alt alone always remains available for character input, and a
|
||||
-- focused text editor retains modified input instead of entering the mode.
|
||||
}
|
||||
|
||||
value ContentArea {
|
||||
@@ -162,6 +182,7 @@ value ActivityButton {
|
||||
label_key: String -- i18n key for tooltip
|
||||
badge: Badge? -- only git has a badge
|
||||
active: Boolean -- highlighted when this view is showing
|
||||
access_key: String -- Control+Option (macOS) or Control+Alt + 1..9,0 in displayed order
|
||||
}
|
||||
|
||||
value Badge {
|
||||
@@ -317,3 +338,9 @@ value TokenUsage {
|
||||
|
||||
-- Ctrl/Cmd+B: toggle sidebar
|
||||
-- Ctrl/Cmd+W: close active tab (see tabs.allium)
|
||||
-- Tab / Shift+Tab: next / previous enabled control
|
||||
-- Enter / Space: activate focused control
|
||||
-- Control+Option (macOS) or Control+Alt + 1..9,0: activate the corresponding activity
|
||||
-- Post editor Control+Option (macOS) or Control+Alt + M/X: toggle metadata/excerpt
|
||||
-- Import and Settings sections expose unique Control+Option or Control+Alt access keys
|
||||
-- Site Validation uses R/A and Metadata Diff uses R with the platform modifier pair
|
||||
|
||||
Reference in New Issue
Block a user