Settings redesign: grouped rail + sub-tabbed dense pages#268
Closed
adibhanna wants to merge 1 commit into
Closed
Conversation
Reorganize the settings modal so it stops feeling overwhelming — without removing any setting or changing how anything persists. - Rail: group the 9 categories into Look & feel / Editing / Vault / System, each with an icon + short label; descriptions move out of the rail onto the page header. Empty query shows the grouped rail; typing switches to flat search results. - Dense pages -> focused in-page sub-tabs: Vault (Location / Notes / System) and Editor (Vim / Search / Writing / Quick capture). Existing sections are spliced into sub-tabs with no control moved or rewritten. - Search now opens the sub-tab that owns a result before scrolling to and highlighting it. - Keymap left as-is: its sticky live-filter + grouped list already suits 50+ shortcuts; sub-tabs would fragment that search. Verified: control / search-anchor / onChange counts are identical to before, so no setting was dropped and every store + config.toml binding is preserved. Typecheck + app-core tests pass.
Contributor
Author
|
Folded into the v2.8.0 release PR #269 (release/v2.8.0 -> main), which carries this settings work plus the performance pass. Closing in favor of the single release PR. |
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.
What & why
The settings modal had grown overwhelming: 9 flat nav items (with jargon like MCP/CLI/Keymap sitting at the same level as Appearance), each carrying a 2-line description, plus a few very dense pages (Vault ~25 controls, Editor ~24). This reorganizes the experience — without removing a single setting or changing how anything persists.
Changes
Grouped rail. The 9 categories are grouped into Look & feel · Editing · Vault · System, each item now an icon + short label. Descriptions move out of the rail and onto the page header. An empty query renders the grouped rail; typing switches to the flat search-results list.
Sub-tabbed dense pages. The two heaviest pages become focused in-page sub-tabs:
Existing
<Section>s are spliced into sub-tabs — no control is moved or rewritten.Search-jump into sub-tabs. Clicking a search result now opens the sub-tab that owns it, then scrolls to and highlights the setting.
Keymap left as-is — its sticky live-filter + grouped list is already the right pattern for 50+ shortcuts; sub-tabs would only fragment that search. The lighter pages (Appearance, Typography, Templates, MCP, CLI, About) were already clean.
Guardrails (verified)
main: 70settingId, 22settingsSearchTargetProps, 20ToggleRow, 9SegmentedRow, 16TextInputRow, 3SelectRow, 26<Section>, 59onChange.config.tomlintact — everyonChange/persist binding is preserved untouched, so anything a user hand-wrote into~/.config/zennotes/config.tomlstill loads and round-trips (PORTABLE_PREF_KEYScontrols all unchanged).Notes
SettingsModal.tsxonly.