mirror of
https://github.com/olehomelchenko/astrolabe.git
synced 2026-08-08 02:02:33 +00:00
Chart builder: data-aware defaults, one-click hint fixes, canvas preview, fullscreen modal
This commit is contained in:
@@ -167,6 +167,18 @@ lives in [04 · Routing & Global Events](04-routing-and-events.md).
|
||||
uses `alert`/`status` roles by severity. Don't invent keyboard models; adopt the
|
||||
documented one.
|
||||
|
||||
**Resolved — a control that removes its own container.** When activating a control deletes
|
||||
the element it lives in (e.g. a Chart Builder guidance hint's one-click **fix** button —
|
||||
the hint re-derives away once applied), focus must not fall to `<body>`. The rule (council:
|
||||
Carbon _Actionable notification_ + APG _Alert_): **announce the change politely and move
|
||||
focus to a stable neighbour.** Concretely, the builder writes "Applied: `<label>`." to a
|
||||
visually-hidden `role="status" aria-live="polite"` node and moves focus to the guidance
|
||||
region if any hints remain, else the surrounding pane (`tabIndex={-1}` anchors, focused only
|
||||
programmatically — no visible ring). Advisory hints themselves don't _grab_ focus (APG: an
|
||||
alert "must not affect keyboard focus"); the fix's remedy lives in a **low-emphasis ghost
|
||||
button** beside the advice (Carbon: inline actionable → ghost button, wraps under the body
|
||||
on narrow widths), an _offer_, never a forced change.
|
||||
|
||||
**Resolved — pane resize handle (window splitter).** A `ResizeHandle` is a focusable
|
||||
`role="separator"` that **reports the controlled pane's size**, per APG → Window Splitter:
|
||||
|
||||
|
||||
Reference in New Issue
Block a user