| | |
| | | |
| | | ## In Progress |
| | | |
| | | - [2026-05-28] 第二批 AppKit 化第 2 项:标签栏 AppKit 化第一阶段,只读导航。 |
| | | - 分支: `codex/post-freeze-new-requirement` |
| | | - 目标: 抽 `TagNavItem` / callbacks 边界,新增可回滚的 AppKit 标签栏。 |
| | | - 范围: 顶部、左侧、右侧标签栏显示;点击标签滚动到对应分组。 |
| | | - 暂不做: 标签拖拽排序。 |
| | | - 回滚: 保留旧 SwiftUI 标签栏作为开关。 |
| | | - 验收: 三种标签位置、点击滚动、长标签、多语言、全屏和 Split View。 |
| | | - QA: 构建、签名、本地化 JSON、三种位置屏幕点击复核、SwiftUI 回滚开关、窗口 8 逻辑 QA 已通过;待用户最终体验验收后移动到 `Done`。 |
| | | - 结果: 默认启用 AppKit 标签导航,`useAppKitTagNavigation=false` 可回滚到旧 SwiftUI 标签栏。 |
| | | |
| | | ## Todo |
| | | |
| | | - [2026-05-28] 第二批 AppKit 化第 3 项:标签栏 AppKit 化第二阶段,hover 与容器高亮。 |
| | | - 分支: `codex/post-freeze-new-requirement` |
| | | - 目标: hover 标签时高亮对应容器,保留 colorless container 的填充/取消逻辑。 |
| | | - 验收: hover 触发频率、滚动不过度、视觉不闪烁、全屏/Split View 不跳 Space。 |
| | | - QA: 构建、签名、本地化 JSON、hover 静态 QA、colorless grid 屏幕 hover/点击复核、窗口 8 逻辑 QA 已通过;待用户最终体验验收后移动到 `Done`。 |
| | | - 结果: 标签 hover 进入/离开已接入 AppKit;hover 高亮只刷新可见运行态,不触发 App Grid reload;重复 hover 滚动已去抖。 |
| | | |
| | | ## Todo |
| | | |
| | | - [2026-05-28] 第二批 AppKit 化第 4 项:标签栏 AppKit 化第三阶段,拖拽排序。 |
| | | - 目标: 用 AppKit hit-testing 替换 SwiftUI `GeometryReader + preference` 的标签排序命中逻辑。 |
| | |
| | | |
| | | ## Done |
| | | |
| | | - [2026-05-28] 第二批 AppKit 化第 2 项:标签栏 AppKit 化第一阶段,只读导航。 |
| | | - 提交: `b4a1ba5` |
| | | - 结果: 默认启用 AppKit 标签导航,顶部/左侧/右侧标签栏显示和点击滚动接入完成;`useAppKitTagNavigation=false` 可回滚到旧 SwiftUI 标签栏。 |
| | | - 验证: 构建、签名、本地化 JSON、三种位置屏幕点击复核、SwiftUI 回滚开关、窗口 8 逻辑 QA 全部通过;用户已确认第 2 项 OK。 |
| | | |
| | | - [2026-05-28] 第二批 AppKit 化第 1 项:清理 `ContentView` 的 App Grid 交互职责。 |
| | | - 提交: `561541e` |
| | | - 结果: `ContentView` 中 App Grid 的 bubble、drag、drop、refresh toast 临时状态已收口到 `AppGridInteractionState`。 |