Settings modal: add Optional defaults sections (render scale, undo depth, grid) #125

Closed
opened 2026-10-02 23:41:41 +00:00 by Mark · 0 comments
Owner

Parent-Issue: #119

Part of the Settings modal implementation (parent #119 covers the full modal). This child is the three optional defaults: default render scale, default undo history depth, default grid visibility.

Scope

Add three small sections to the Settings modal at src/pages/Workspace.tsx:335-357:

  1. Default render scale — currently auto per session, no per-user default. Add a select for auto / 0.5x / 1x / 2x / 4x, persisted to localStorage.
  2. Default undo history depth — currently HISTORY_LIMIT = 50 in src/pages/Editor.tsx:180. Add a number input (range 10–200), persisted to localStorage.
  3. Show grid by default — currently always shown. Add a checkbox, persisted to localStorage.

Acceptance

  • All three sections are Collapsible matching the right panel's Design Settings pattern.
  • Choices persist to localStorage and are read on app load.
  • Existing 480px modal width, role="dialog", aria-modal, data-testid, backdrop click + Close are preserved.
  • A Playwright regression test confirms each setting persists across page reloads.

Out of scope

Thread library, background color, color simplification preview (those are separate required children of #119).

**Parent-Issue:** #119 Part of the Settings modal implementation (parent #119 covers the full modal). This child is the three optional defaults: default render scale, default undo history depth, default grid visibility. ## Scope Add three small sections to the Settings modal at `src/pages/Workspace.tsx:335-357`: 1. **Default render scale** — currently `auto` per session, no per-user default. Add a select for `auto` / `0.5x` / `1x` / `2x` / `4x`, persisted to localStorage. 2. **Default undo history depth** — currently `HISTORY_LIMIT = 50` in `src/pages/Editor.tsx:180`. Add a number input (range 10–200), persisted to localStorage. 3. **Show grid by default** — currently always shown. Add a checkbox, persisted to localStorage. ## Acceptance - All three sections are `Collapsible` matching the right panel's Design Settings pattern. - Choices persist to localStorage and are read on app load. - Existing 480px modal width, `role="dialog"`, `aria-modal`, `data-testid`, backdrop click + Close are preserved. - A Playwright regression test confirms each setting persists across page reloads. ## Out of scope Thread library, background color, color simplification preview (those are separate required children of #119).
Sign in to join this conversation.
No description provided.