Repository navigation
feat(settings): grouped cards, short subtexts and Find a setting (#292) - #293
Merged
Merged
Conversation
Rebuild Settings on prism-term-core's grouped cards frame (core-v0.25.0): Appearance, Explorer, Terminal, Agents, Dictation, Media, About, with Find a setting. Prism's own rows are a closed list (appOptions.ts) with one short subtext each and unchanged storage keys; the core's sections draw the terminal, agent and dictation rows. The chosen rail page is a grey fill. New settingsLook (in e2e:terminal) and settingsSearch e2e. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01FHHaWKR4M5QtW7Wecyuk4t
The window's size is saved in the shared profile, and columnHeaders and panelsAlign, which ran after them, started at 1600x1000. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01FHHaWKR4M5QtW7Wecyuk4t
…ind, one Win+E toggle - The compact rail (title bar's toggle) drew each page as an 18px sliver: the item column is centred, so the core's w-full was the icon's width. Each page is a 40px tile now, as in the narrow layout; settingsLook measures it. - With text in Find a setting and the keyboard elsewhere (the rail, the pane), Escape did nothing at all. It now takes the keyboard back to the field, and the next Escape clears it; settingsSearch holds both steps. - Win+E's label names its switch by id and the row also flips on a press, so one press could reach toggle() twice before a render disabled it. A ref makes it one change per press. - e2e: fullscreenBlack left the shared profile's window maximized, so the narrow-window checks of columnHeaders and panelsAlign (which run later) measured a full screen. It unmaximizes on the way out. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01FHHaWKR4M5QtW7Wecyuk4t
Owner, 2026-10-06: "call this setting font size and the app font, just call it font". Interface text size is Font size; App font is Font. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01FHHaWKR4M5QtW7Wecyuk4t
The owner's pick of five mockups (2026-10-06, "E. Explorer this is the style to go with"): each style card draws a breadcrumb, folders in the style's folder colour, files in their kind tints, one row marked in the style's selection tint and a progress line in the accent, on the style's own ground (frosted for a see-through style). Every colour comes from derive() and folderIconOf(), so the live card follows an edit. The shared red-to-blue square is gone. Card size, name, chosen ring and hover are unchanged. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01FHHaWKR4M5QtW7Wecyuk4t
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Closes #292. Prism side of the settings redesign; the Prism Terminal side (the core's frame, sections and rows, released as
core-v0.25.0and pinned here since #291) is Maxaubert/PrismTerminal#135.Owner, 2026-10-05: approved v1 "Grouped cards" with no accent bar on the chosen rail item, and every recommendation Q1 to Q6 of the spec and plan (
research/prism/2026-10-05-settings-no-subtext/2026-10-05-settings-redesign-spec-and-plan.md, section 3.3; copied into PrismTerminal asdocs/superpowers/specs/2026-10-05-settings-redesign-design.md).What changed
SettingsFrame,SettingsSection,SettingRow,SettingBlock, the core'sSwitch/Segmented/Select/SaveButton/ROW_BUTTON/RESET_LINK). Prism's own copies of every control are gone.components/Settings.tsx(1769 lines) is nowcomponents/settings/, one file per page plusappOptions.ts,settingsIndex.ts,icons.tsand the card, swatch and transport-preview parts.renames.mdas v1 uses them.--p-hover-hi), never the accent;--p-sel-solidwent with it.appOptions.tslists every row's keys, frozen by a snapshot test. Show title bar is now a switch over the sameshown/hiddenstore.colorSchemeon the Settings overlay follows the style's mode::rootsays dark, and the core's warning ink islight-dark()(spec risk, checked: the amber reads 6.0:1 on Paper).The new menu
Two stopgaps for the core (each goes when the core fixes it)
package.jsonexportsmaps./renderer/settings/*to.tsxonly, socoreIndex,sectionIdsandlayout/icons(plain.ts) cannot be imported by package path. They are resolved by exact specifier inelectron.vite.config.ts(CORE_TS),vitest.config.tsandtsconfig.web.json.compactclasses lose to its own base classes in the cascade (w-14beforew-[244px], MEASURED: the rail stayed 244px), soindex.cssgives[data-settings-compact]the rail width. The under-760px narrow mode is unaffected (variants win).Screenshots
settingsLookwrites every page in a dark (Aurora) and a light (Paper) style to.e2e/shots/settings-<page>-<scheme>.png, plus Onyx, Ruby, Large text, narrow search and the compact rail; looked at against the v1 mockup shots.Gates
npm run typecheck: clean (node and web).npm run lint: 0 errors, 7 warnings, all in files this PR does not touch beyond App.tsx's two existing ones.npm test: 155 files passed, 1 skipped; 1927 tests passed, 2 skipped. New:settings/appOptions.test.ts(ids, icons, keys snapshot, every row drawn, index order and placement),settingsCopy.test.ts(8-word subtexts, plain labels, whole folder),settingsControls.test.ts(no local controls, accent only on marks).npm run e2e:terminal: 17 scenarios, 533 checks, all green,settingsLookincluded (runner-safe).npm run e2e: 96 scenarios, 94 green.columnHeadersandpanelsAlignfailed because the two new settings scenarios left the window at 1600x1000 in the shared profile; fixed in c439835 (they put the size back), andsettingsLook,settingsSearch,columnHeaders,panelsAlignrerun in order: all green.terminalfailed twice in targeted runs on shell steps unrelated to Settings (scrollback after a second session; a prompt wait), then passed three times, the gate and the full run included.pickStyleSegmentusers.🤖 Generated with Claude Code
https://claude.ai/code/session_01FHHaWKR4M5QtW7Wecyuk4t