Skip to content

design: settings use the widget mark, live readings, readable hints - #135

Merged
jiunbae merged 1 commit into
mainfrom
design/polish-2
Oct 27, 2026
Merged

jiunbae merged 1 commit into
mainfrom
design/polish-2

Conversation

@jiunbae

@jiunbae jiunbae commented Oct 27, 2026

Copy link
Copy Markdown
Member

A round of fixes from a design and UX review. I did my own pass over rendered screens, and a codex peer did an independent read-only pass with screenshots.

Bugs

  • Shelf board chips read runtime.snapshots, which is not published. Menu Bar setting rows read runtime.menuBar without observing it. Both could show stale readings. They now observe the widget's WidgetCardModel and the MenuBarStatusStore.
  • Several section footers (Dock, Automation) rendered right-aligned at body size. They now use formFooter().
  • The inspector was capped at 420 pt and floated in its column. It now fills the column, top-aligned.

Consistency

  • New WidgetMark (the popup card's tile in the widget's colour) appears in the inspector header, Menu Bar rows and Privacy rows. The inspector used an old blue outline tile.
  • Style hints use caption and secondary colour (they were caption2 and tertiary).
  • The digits and width steppers sit beside their value. The colour picker is no longer in a fixed 150 pt frame.
  • Shelf drop targets are drawn only while a card hovers over them.
  • Big authored text gets the hero face only when it contains a digit.

Copy

  • The inspector switch reads "Widget On", because off stops the widget everywhere.
  • The empty popup makes Add Widget the prominent action, describes what BarShelf does, and drops the widgets folder path.
  • New strings have Korean translations.

Not in this PR (tracked for later): keyboard navigation on the Shelf board; the Automation draft lost on revisit and enable saving the draft; Dock page order when the dock is off; narrow-width gallery toolbar and text controls; onboarding length. Performance items: rescans restart every script, manifest reads on the main path, all pages mounted on open, gallery image decode, thumbnail cancellation.

Testing: swift test passes, sync-strings --check ok, and screens were rendered with real and fresh data.

🤖 Generated with Claude Code

From a design review with a codex peer:
- WidgetMark (the popup card's CardIconTile in the widget's colour) in
  the inspector header, Menu Bar rows and Privacy rows; the inspector
  had an old blue outline tile.
- Shelf chips and Menu Bar rows observe what they display (the card
  model, the status store), so their readings follow refreshes; they
  read unpublished runtime state and could stay stale.
- The inspector fills its column top-down instead of floating in a
  420 pt box; its switch says Widget On, since off stops it everywhere.
- Section footers on Dock and Automation pages use formFooter (they
  rendered right-aligned at body size); style hints are caption and
  secondary; the digits/width steppers sit beside their value; the
  colour picker no longer floats in a fixed frame.
- Drop targets on the Shelf board show only while a card is over them.
- Big authored text is a hero reading only when it has a digit; a big
  heading keeps its face.
- The empty popup: Add Widget is the prominent action, the copy says
  what BarShelf does, and the widgets folder path is gone.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
@jiunbae
jiunbae merged commit 30457b7 into main Oct 27, 2026
1 check passed
@jiunbae
jiunbae deleted the design/polish-2 branch October 27, 2026 10:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant