diff --git a/docs/design/redesign-direction.md b/docs/design/redesign-direction.md index f7d1f8d..ff8a31f 100644 --- a/docs/design/redesign-direction.md +++ b/docs/design/redesign-direction.md @@ -35,3 +35,5 @@ Mockup rounds live in `docs/mockups/terminal*/` (each has an `index.html` galler - View sizes (2026-10-05): the files view has Explorer-style sizes (Details, Tiles, Medium / Large / Extra large icons), Ctrl+wheel and a View menu. Chosen: `docs/mockups/view-zoom/04-explorer-style.html`; spec `docs/superpowers/specs/2026-10-05-view-sizes-design.md`. +- View menu (2026-10-05, #41): View menu = 3 sizes (Details, Tiles, Extra large icons), no icons, no + shortcuts; the other sizes via Ctrl+wheel. diff --git a/docs/mockups/view-zoom/shots/impl-menu.png b/docs/mockups/view-zoom/shots/impl-menu.png index de937d2..1043080 100644 Binary files a/docs/mockups/view-zoom/shots/impl-menu.png and b/docs/mockups/view-zoom/shots/impl-menu.png differ diff --git a/docs/superpowers/specs/2026-10-05-view-sizes-design.md b/docs/superpowers/specs/2026-10-05-view-sizes-design.md index 63d0d1a..f7d7709 100644 --- a/docs/superpowers/specs/2026-10-05-view-sizes-design.md +++ b/docs/superpowers/specs/2026-10-05-view-sizes-design.md @@ -35,19 +35,21 @@ Settings are not part of this work. scaled by 40. Ctrl+wheel anywhere else (inspector, sidebar) does nothing special; Electron does not zoom the page on Ctrl+wheel, and the files view listener is the only one that calls `preventDefault`. - **Keyboard**, whenever the files view is shown: `Ctrl+=` / `Ctrl++` (also numpad +, and Ctrl+Shift+= ) = - bigger, `Ctrl+-` (also numpad -) = smaller, `Ctrl+0` = reset to Details, `Ctrl+Shift+1..6` jump to a size. - Digits are matched on `KeyboardEvent.code` (`Digit1..6`) so Nordic layouts, where Shift+1 is `!`, work. + bigger, `Ctrl+-` (also numpad -) = smaller, `Ctrl+0` = reset to Details. There are no per-size + shortcuts (Ctrl+Shift+1..6 was dropped on 2026-10-05, issue #41). The handler calls `preventDefault`, which also keeps Electron's default menu zoom accelerators (zoomIn / zoomOut / resetZoom) from zooming the whole page; e2e asserts the zoom factor stays 1. -- **View menu button** at the right end of the files toolbar, after the count: view glyph, current label - (min-width 96px so the toolbar does not jump), chevron. `aria-haspopup="menu"`, `aria-expanded`, +- **View menu button** at the right end of the files toolbar, after the count: current label (min-width 96px + so the toolbar does not jump) and a chevron, no size glyph. The label names the current size, any of the six + (e.g. `Medium icons` after Ctrl+wheel). `aria-haspopup="menu"`, `aria-expanded`, `title="View (Ctrl+wheel to resize)"`. It flashes `--inv-bg` for 450ms when the size changes by wheel or key (no flash under reduced motion). Its menu (anchored under the button, right-aligned, `.menu` styling, - min-width 272px) lists the six sizes as `menuitemradio` with a tick, the size glyph, label and - `Ctrl+Shift+N`; a separator; `Reset to Details Ctrl+0`; a separator; two hint lines - (`Ctrl + wheel over the list`, `Bigger, smaller Ctrl+= / Ctrl+-`). Focus lands on the checked entry; arrows - walk the entries, Home/End jump, Enter/Space/click picks and closes, Escape or an outside click closes and - focus returns to the button. + min-width 200px) offers only three sizes as plain-text `menuitemradio` entries: `Details`, `Tiles`, + `Extra large icons`, with a check mark on the current one when it is one of these. No size glyphs, no + shortcut text, no Reset row, no hint rows (owner request 2026-10-05, issue #41). Large details, Medium + icons and Large icons are reached only by Ctrl+wheel (or Ctrl+= / Ctrl+-). Focus lands on the checked + entry, or the first when none is checked; arrows walk the entries, Home/End jump, Enter/Space/click picks + and closes, Escape or an outside click closes and focus returns to the button. - Clamped at both ends: stepping past Details or Extra large icons does nothing (no flash, no announcement). - A polite live region announces `View: