Commit Graph
1 Commits
Author SHA1 Message Date
SivanCola 2580db2426 Improve desktop model and workspace navigation / 优化桌面端模型与工作区导航 (#10196)
* Improve the desktop model switcher

Problem:
The desktop model picker was narrow, provider-scoped during search, and offered no way to keep frequently used models visible.

Root cause:
The picker rendered one flat grouped list and stored no user-level model preference.

Fix:
Add a provider rail, catalog-wide search, persisted favorites, provider metadata, responsive sizing, and localized labels.

Verification:
Run the focused model switcher and favorites tests, desktop typecheck, frontend production build, and browser interaction checks.

* Open Overview for empty workspace docks

Problem:
Opening a session with an expanded but empty workspace dock showed a tab picker instead of useful context.

Root cause:
Workspace restoration deliberately left an empty dock unseeded and did not distinguish first session display from a user's later tab close.

Fix:
Seed the Overview tab once for each visible session while preserving deliberate tab closure until the session changes.

Verification:
Run the workspace panel command regression test, browser dock mode test, desktop typecheck, and frontend production build.

* Add one-command desktop development

Problem:
Local contributors needed multiple manual commands to start the browser UI or complete Electron application.

Root cause:
The desktop workspace had build commands but no coordinated development entry points.

Fix:
Add pnpm dev for the browser frontend and pnpm dev:desktop to build the Go service, start or reuse Vite, launch Electron, and clean up child processes. Document both commands.

Verification:
Run the launcher syntax and help checks, desktop typecheck, Electron tests, and frontend production build.

* Update browser gates for default Overview

Problem:
The desktop browser gate expected a fresh expanded dock to show the empty tab picker, which no longer matches the new default Overview behavior.

Root cause:
The end-to-end fixtures selected Files only through the empty-state picker and treated every recently closed tab as interchangeable.

Fix:
Assert the default Overview tab, open Files through the add-tab menu, and target the closed Files entry explicitly after Overview also enters tab history.

Verification:
Run the complete frontend app browser gate, including app lifecycle, dock view state, and runtime state scenarios.
2026-09-12 21:22:55 +08:00