From b1b34f819519d8721858d18772cbd0c356a3833b Mon Sep 17 00:00:00 2001 From: Hibryda Date: Sat, 7 Mar 2026 23:23:53 +0100 Subject: [PATCH] docs: update meta files for SettingsTab global settings redesign session --- .claude/CLAUDE.md | 4 ++-- CHANGELOG.md | 11 +++++++---- CLAUDE.md | 4 ++-- README.md | 2 +- TODO.md | 5 +---- docs/progress.md | 14 ++++++++++++++ docs/v3-progress.md | 23 +++++++++++++++++++++++ 7 files changed, 50 insertions(+), 13 deletions(-) diff --git a/.claude/CLAUDE.md b/.claude/CLAUDE.md index beb07bb..7f3fdb4 100644 --- a/.claude/CLAUDE.md +++ b/.claude/CLAUDE.md @@ -46,13 +46,13 @@ - Layout store persists to SQLite on every addPane/removePane/setPreset/setPaneGroup change (fire-and-forget). Restores on app startup via `restoreFromDb()`. - Session groups: Pane.group? field in layout store, group_name column in sessions table, collapsible group headers in sidebar. Right-click pane to set group. - File watcher uses notify crate v6, watches parent directory (NonRecursive), emits `file-changed` Tauri events. -- Settings use key-value `settings` table in SQLite (session.rs). Frontend: `settings-bridge.ts` adapter. v3 uses SettingsTab.svelte (v2 SettingsDialog.svelte deleted in P10). SettingsTab has two sections: Global (2-column grid layout with labels above controls: custom themed dropdown for theme, font family select with 9 monospace fonts, font size +/- stepper 8-24px, default shell, default CWD — all persisted via settings-bridge) and Group/Project CRUD. +- Settings use key-value `settings` table in SQLite (session.rs). Frontend: `settings-bridge.ts` adapter. v3 uses SettingsTab.svelte (v2 SettingsDialog.svelte deleted in P10). SettingsTab has two sections: Global (single-column layout, split into Appearance [theme dropdown, UI font dropdown with sans-serif options + size stepper, Terminal font dropdown with monospace options + size stepper] and Defaults [shell, CWD] — all custom themed dropdowns, no native ``), all persisted via settings-bridge +- Typography CSS custom properties (`--ui-font-family`, `--ui-font-size`, `--term-font-family`, `--term-font-size`) in catppuccin.css with defaults; consumed by app.css body rule +- `initTheme()` now restores 4 saved font settings (ui_font_family, ui_font_size, term_font_family, term_font_size) from SQLite on startup alongside theme restoration - v3 Mission Control (All Phases 1-10 complete): multi-project dashboard with project groups, per-project Claude sessions, team agents panel, terminal tabs, workspace tabs (Sessions/Docs/Context/Settings) - v3 session continuity (P6): `persistSessionForProject()` saves agent state + messages to SQLite on session complete; `registerSessionProject()` maps session to project; `ClaudeSession.restoreMessagesFromRecords()` restores cached messages on mount - v3 workspace teardown (P7): `clearAllAgentSessions()` clears agent sessions on group switch; terminal tabs reset via `switchGroup()` @@ -37,7 +39,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Early error reporting when Claude CLI is not found — sidecar emits `agent_error` immediately instead of cryptic SDK failure ### Changed -- SettingsTab global settings restructured from inline `.setting-row` layout (label left, control right) to 2-column `.global-grid` with `.setting-field` (label above control); labels now uppercase 0.7rem +- SettingsTab global settings restructured to single-column layout with labels above controls, split into "Appearance" (theme, UI font, terminal font) and "Defaults" (shell, CWD) subsections; all native `` with custom themed dropdown showing color swatches and accent dots. | Done: 2026-03-07 @@ -19,7 +20,3 @@ - [x] **v3 Architecture planning** -- Adversarial review (3 agents, 12 issues resolved), final architecture in docs/v3-task_plan.md. | Done: 2026-03-07 - [x] **Claude profiles & skill discovery** -- switcher-claude integration, skill autocomplete, extended AgentQueryOptions. | Done: 2026-03-07 - [x] **Claude CLI path auto-detection** -- findClaudeCli() + pathToClaudeCodeExecutable. | Done: 2026-03-07 -- [x] **Unified sidecar bundle** -- Single agent-runner.mjs, dual-layer CLAUDE* env var stripping. | Done: 2026-03-07 -- [x] **AgentPane onDestroy bug fix** -- Stop-on-close moved to TilingGrid onClose. | Done: 2026-03-06 -- [x] **Sidecar SDK migration** -- @anthropic-ai/claude-agent-sdk query(). | Done: 2026-03-06 -- [x] **Multi-machine support (Phases A-D)** -- bterminal-core, bterminal-relay, RemoteManager, frontend. | Done: 2026-03-06 diff --git a/docs/progress.md b/docs/progress.md index 56ba532..f94b680 100644 --- a/docs/progress.md +++ b/docs/progress.md @@ -284,6 +284,20 @@ - [x] initTheme() in theme.svelte.ts restores saved font settings on startup (try/catch, non-fatal) - [x] Font settings persisted as 'font_family' and 'font_size' keys in SQLite settings table +### Session: 2026-03-07 (continued) — SettingsTab Global Settings Redesign + +#### Font Settings Split (UI Font + Terminal Font) +- [x] Split single font into UI font (sans-serif: System Sans-Serif, Inter, Roboto, etc.) and Terminal font (monospace: JetBrains Mono, Fira Code, etc.) +- [x] Each font dropdown renders preview text in its own typeface +- [x] Independent size steppers (8-24px) for UI and Terminal font +- [x] Setting keys changed: font_family/font_size -> ui_font_family/ui_font_size + term_font_family/term_font_size + +#### SettingsTab Layout + CSS Updates +- [x] Rewrote global settings: single-column layout, "Appearance" + "Defaults" subsections +- [x] All dropdowns are custom themed (no native `` anywhere) + +#### CSS + Theme Store Updates +- [x] Added `--term-font-family` and `--term-font-size` CSS custom properties to catppuccin.css +- [x] Updated `initTheme()` in theme.svelte.ts: loads 4 font settings (ui_font_family, ui_font_size, term_font_family, term_font_size) instead of 2 +- [x] UI font fallback changed from monospace to sans-serif + +#### Verification +- No test changes needed — UI/CSS-only changes, no logic changes