mirror of
https://github.com/olehomelchenko/astrolabe.git
synced 2026-08-08 02:02:33 +00:00
Add distributed settings and workspace import/export (M5)
This commit is contained in:
@@ -207,8 +207,8 @@ contract; cite it, not the external source.)_
|
||||
other shows the text visually with no live role. Two live regions would announce the same
|
||||
message twice.
|
||||
|
||||
**Resolved — feature-modal dismissal & initial focus.** A feature modal (Datasets, and
|
||||
later Settings/Chart Builder) is a **passive** `dialog-modal`: dismissed by the close
|
||||
**Resolved — feature-modal dismissal & initial focus.** A feature modal (Datasets, Chart
|
||||
Builder) is a **passive** `dialog-modal`: dismissed by the close
|
||||
button, Escape, or a backdrop click (a passive modal carries no in-flight transaction, so
|
||||
an outside click is a safe cancel — unlike the `alertdialog` confirm, where backdrop-dismiss
|
||||
is forbidden). `role="dialog"` + `aria-modal` + `aria-labelledby` the title; focus is trapped
|
||||
@@ -220,6 +220,24 @@ content's start is perceived rather than skipped to the first control; a small f
|
||||
(Extract) focuses its **primary field**. _(Consulted via /council → WAI-ARIA APG
|
||||
`dialog-modal`. This bullet is the contract; cite it, not the APG file.)_
|
||||
|
||||
**Resolved — settings are distributed, not a modal; each cluster is a disclosure popover.**
|
||||
Preferences (spec §07) live next to what they affect and apply **live**: theme is the header
|
||||
toggle, editor settings open from the editor toolbar, render debounce from the preview, date
|
||||
format from the library. This matches the already-distributed theme + fit-mode controls,
|
||||
makes a change's effect visible in the pane being configured, and keeps each block
|
||||
independently extensible — so there is **no central Settings modal and no Apply/Cancel/dirty
|
||||
commit step** (changes are individually reversible; the editor cluster offers a Reset). The
|
||||
disclosure mechanism is a **gear button + non-modal popover**, _not_ an ARIA menu: a menu
|
||||
lists actions/commands (`menuitem`/`menuitemcheckbox`/`menuitemradio`), but these panels hold
|
||||
sliders, number/text inputs, and radio groups, so the container is a labelled `group`. The
|
||||
gear carries `aria-expanded` + `aria-controls`; Enter/Space toggle; **Esc closes and returns
|
||||
focus to the gear**; an outside click closes; at most one is open at a time; focus moves to
|
||||
the first control on open (so `Cmd/Ctrl+,`, which opens the editor cluster, lands inside it).
|
||||
Non-modal — **no focus trap** (unlike the feature modal above). The panel is portaled to
|
||||
`<body>` and positioned `fixed` because the panes clip their content. _(Consulted via /council
|
||||
→ NN/g #4 consistency, #6 recognition-over-recall, #8 minimalist; WAI-ARIA APG disclosure +
|
||||
menu-and-menubar; Carbon popover/overflow-menu/text-toolbar. This bullet is the contract.)_
|
||||
|
||||
**Resolved — an error names the right fix, not a boilerplate one.** Don't staple a generic
|
||||
remedy onto every failure. A missing dataset reference is **not** a JSON/spec syntax problem,
|
||||
so the preview gives it a tailored, fixable line — _"Dataset «X» not found. Create it from
|
||||
|
||||
Reference in New Issue
Block a user