fix(ui): 改善深色控件与侧栏一致性,保留对话阅读位置 - #831
Merged
Loosand merged 1 commit intoSep 19, 2026
Merged
Conversation
Improve neutral dark-theme contrast, model group folding and scrollbars, sidebar spacing, and rounded standard dock controls. Remove unnecessary Skills layout animations. Capture transcript position before switching conversations, restore measured message anchors, and preserve follow state without forcing outgoing chats to the bottom. Add regression coverage and desktop before/after previews. Closes Stack-Cairn#830
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.
Linked issue
Closes #830
Summary
统一桌面端深色 UI 的交互状态,并修复对话切换后阅读位置丢失。
深色主题与组件一致性
对话切换与阅读位置
**范围说明:**按最终需求撤回新加的独立 Git Graph 功能,本 PR 不引入该功能。既有 Git 工具保留;不关闭侧栏纯黑背景、草稿丢失或工作空间切换等其他问题。
Change scope
agent-gui、agent-uicrates/agent-ui/src/styles/、components/settings/、components/ui/tabs.tsxcrates/agent-ui/src/components/chat/crates/agent-ui/src/components/project-tools/、components/git/crates/agent-gui/src/pages/ChatPage.tsx、pages/chat/transcript/、crates/agent-ui/src/lib/chat-scroll/useScrollFollow.tscrates/agent-gui/test/chat/、test/skills/Screenshots / preview
修改前(用户提供的桌面端设置页):
修改后(本分支运行中的桌面端;窗口尺寸与前图不同):
滚动恢复手动验证:在桌面端将长对话停在中间的同一消息,切到另一对话再切回;返回后消息标题、正文和表格的视口位置保持一致。截图仅展示设置控件,不公开本地对话内容。
Verification
已执行并通过:
pnpm typecheck:guipnpm typecheck:uipnpm check:ui-boundariesgit diff --checktranscript-switch-layout、use-scroll-follow-native-scrollbar、chat-transcript-scroller、transcript-row-model、transcript-width-controls-history-switch、sidebar-ui-consistency、composer-model-pages、installed-skill-sort、skills-category-tabs。新增/更新测试覆盖:初始位置计算、锚点恢复与回退、切换前快照、跟随状态恢复、侧栏行间距、模型分组/滚动容器,以及移除 Skills 布局动画。
未在本地执行全平台构建及整个仓库的完整测试套件。本地补充的 changed-Biome 脚本被 mise 工具下载的未认证 GitHub API 限流中断;相应检查随后在 CI 中通过。
GitHub CI(运行记录)已全部通过:GUI 构建/lint/前端与发布脚本测试、Gateway、Gateway WebUI、Docker Smoke、Shared UI Boundaries(含 changed-Biome)、Diff Hygiene、Detect Changes。PR Governance 亦通过。Tauri Rust Check 因无 Rust 相关变更按规则跳过。
Pre-submit checklist