audit button
This commit is contained in:
+34
-12
@@ -9,18 +9,34 @@ is the first downstream consumer; its screens drive the order.
|
||||
|
||||
## Next
|
||||
|
||||
- [ ] **Platform metric adoption** — update components one at a time
|
||||
through the review gate against the landed theme tokens. The stated
|
||||
metrics and the radius ladder already flow through the size table,
|
||||
so each stop covers border + focus chrome (`Theme::borders`), the
|
||||
spacing unit (`Theme::spacing`), and the component's stated dims:
|
||||
button (the API template) first, then input, select, menu, popover,
|
||||
dialog, toast, tooltip, alert, combobox, command palette, switch;
|
||||
per-platform targets in
|
||||
[platform-metrics-audit.md](platform-metrics-audit.md).
|
||||
- [ ] **Input platform chrome** — field border behind
|
||||
`Theme::borders.fields`; focus split between the ring shadow and
|
||||
border recolor via `Theme::borders.focus_ring`.
|
||||
|
||||
## Queue — to follow
|
||||
|
||||
Platform metric adoption continues one component at a time; each stop goes
|
||||
through the review gate and a gallery pass.
|
||||
|
||||
- [ ] **Select platform chrome** — the input treatment on the trigger; the
|
||||
popup border behind `Theme::borders.overlays`.
|
||||
- [ ] **Menu platform chrome** — overlay border gate; paddings, separators,
|
||||
and the row min-height through `Theme::spacing` and the stated menu
|
||||
row height.
|
||||
- [ ] **Popover platform chrome** — overlay border gate; the anchor gap
|
||||
through `Theme::spacing`.
|
||||
- [ ] **Dialog platform chrome** — overlay border gate.
|
||||
- [ ] **Toast platform chrome** — overlay border gate.
|
||||
- [ ] **Tooltip platform chrome** — overlay border gate.
|
||||
- [ ] **Alert platform chrome** — overlay border gate.
|
||||
- [ ] **Combobox platform chrome** — popup border behind
|
||||
`Theme::borders.overlays`; the trigger follows the input stop's field
|
||||
treatment.
|
||||
- [ ] **Command palette platform chrome** — overlay border gate.
|
||||
- [ ] **Switch platform chrome** — stated track and knob dims
|
||||
(`switch_height` / `switch_width` / `switch_knob`, inset and travel
|
||||
derived); borderless knob.
|
||||
|
||||
Gaps surfaced by the signed comparison; ordered by signed's usage.
|
||||
|
||||
- [ ] **Virtual list** — generic virtualized variable-height rows with a
|
||||
@@ -61,9 +77,8 @@ Gaps surfaced by the signed comparison; ordered by signed's usage.
|
||||
metrics and the full radius ladder per platform, Linux root fonts
|
||||
(GNOME gsettings `font-name`, KDE `kdeglobals font=`), per-source
|
||||
border + focus chrome (`Theme::borders`), and a per-platform spacing
|
||||
unit (`Theme::spacing`); findings in
|
||||
[platform-metrics-audit.md](platform-metrics-audit.md). Components
|
||||
adopt the tokens one by one (see Next)
|
||||
unit (`Theme::spacing`). Components adopt the tokens one by one
|
||||
(see Next and Queue)
|
||||
|
||||
### icons (`crates/icons`)
|
||||
|
||||
@@ -72,6 +87,13 @@ Gaps surfaced by the signed comparison; ordered by signed's usage.
|
||||
|
||||
### core (`crates/core`)
|
||||
|
||||
- [x] Button platform chrome — the filled variants' 1px border gated behind
|
||||
`Theme::borders.buttons` (Windows / KDE keep it, macOS / GNOME paint
|
||||
fills, ghost stays borderless); icon-bearing buttons pad with
|
||||
`dense_padding_x` instead of `padding_x`
|
||||
- [x] Button loading state — `.loading(true)` shows the spinner in place of
|
||||
the icon and suppresses activation; Spinner gained a `.color` override
|
||||
for accent-filled surfaces
|
||||
- [x] Button, Checkbox, Switch, Radio + RadioGroup, Toggle, Link, Slider,
|
||||
Progress, Avatar (image + seeded pixel-art fallback)
|
||||
- [x] Spinner — painted ring + rotating-icon variant, indeterminate and
|
||||
|
||||
Reference in New Issue
Block a user