父任务
#467 macOS 交互帧预算:声明式 UI 热路径与可调节表面
依赖
不变量
分栏连续拖动时,尺寸状态只能留在局部布局容器中;不得把逐帧尺寸写入 Feature @Published 或让整页 Workbench 跟随拖动重算。
覆盖范围
- Workbench 侧栏和底栏。
- Git Log 内部三条分隔条。
- Changes、Run、Tests、Git Worktrees。
- Diff 双栏,迁入同一套
LitheSplitPaneView 语义。
实施要求
- 复用
LitheSplitPaneView 和 SplitHandleView。
- 保留明确的最小/最大尺寸、可用空间约束和松手后持久化。
- 拖动使用稳定坐标空间,并保留 hover、光标、帮助文本和可访问性行为。
明确不改
- 不在本 PR 重写工具窗内容绘制。
- 不把终端、Run、Tests 各自拆成独立绘制引擎。
- 不通过降低采样频率伪造 FPS 提升。
验收
- 侧栏、底栏、Git Log 内部、Changes、Run、Tests、Worktrees、Diff 连续拖动均达到 >=55 FPS。
- 指针延迟 <=2 帧,边界尺寸不溢出、不出现负尺寸。
git diff --check、macOS 构建和相关边界验证通过。
父任务
#467 macOS 交互帧预算:声明式 UI 热路径与可调节表面
依赖
不变量
分栏连续拖动时,尺寸状态只能留在局部布局容器中;不得把逐帧尺寸写入 Feature
@Published或让整页 Workbench 跟随拖动重算。覆盖范围
LitheSplitPaneView语义。实施要求
LitheSplitPaneView和SplitHandleView。明确不改
验收
git diff --check、macOS 构建和相关边界验证通过。