docs: define cancellable path search task

This commit is contained in:
QiuSW
2026-07-22 15:49:55 +08:00
parent e4dd261abe
commit a3b766f276
3 changed files with 40 additions and 1 deletions
+38
View File
@@ -0,0 +1,38 @@
---
id: T-206
title: 左侧导航、可取消路径搜索与新建实例表单语义
phase: 2
deps: [T-205]
status: TODO
created: 2026-07-22
owner: codex
---
## 需求与背景
用户要求把顶级“实例/设置”导航移到窗口左侧,移除“Chub 浏览器管理”顶栏文字;设置路径的搜索必须可取消,并且切换页面后保留输入和搜索状态。新建实例表单需要明确 Label、目录选择入口和互斥浏览器选择。
## 方案与边界
- 使用稳定 page ID 和同一 `Shell` 保存设置输入、搜索任务状态、创建表单输入和当前页面;切换实例/设置不重建这些状态。
- 每个路径字段拥有独立的搜索任务 ID、`context.CancelFunc` 和结果通道。运行中按钮显示“取消”;再次点击取消任务并忽略迟到结果。
- 浏览器可执行文件搜索使用已有标准安装位置发现器;目录搜索仅验证当前输入路径,避免默认全盘扫描。所有搜索在 goroutine 中运行,结果回到 UI 帧处理。
- 左侧导航只有“实例”和“设置”,页面内容区保留自身标题。窄窗口时导航与内容可重排,但不丢失页面状态。
- 新建实例表单增加“实例名称”“User Data Dir”“启动 URL(可选,仅支持 http/https)”Label;User Data Dir 有选择按钮;浏览器种类使用 RadioButton 单选组。
- 原生 Windows 文件/目录选择器不在本任务引入;选择按钮提供明确的待接入反馈,后续通过异步 platform adapter 接入。
## 验收要点
- 搜索点击后对应按钮显示“取消”,再次点击取消该字段任务;其他字段不受影响。
- 搜索完成、失败或取消均显示文字反馈,旧任务结果不能覆盖新任务或取消后的值。
- 切换到实例页再返回设置页,路径文本、搜索状态和反馈仍保留。
- 左侧导航不显示“Chub 浏览器管理”;新建实例使用 Label、路径选择和 RadioButton。
- `go test ./...`、`go vet ./...`、`go build -o build/chub.exe ./cmd/chub` 通过。
## 执行记录
- 状态:TODO
- 变更:已建立任务与交互/异步状态契约。
- 验证:待实现。
- 阻塞:无。
- 残余风险:真实原生文件夹选择器需要后续 Windows platform adapter。