61 lines
1.9 KiB
Markdown
61 lines
1.9 KiB
Markdown
# M14-04H:Chromium keyboard-only, accessible names/roles and focus restoration
|
||
|
||
- `task`: `M14-04H`
|
||
- `parent`: `M14-04G`
|
||
- `status`: `done`
|
||
|
||
## 目标
|
||
|
||
在 Chromium 中验证不依赖 pointer 的核心菜单与操作搜索流程:键盘可以到达并激活入口,打开
|
||
modal/menu 后焦点落在可操作项,Escape/提交后焦点回到触发器,交互元素具备可计算名称和正确
|
||
角色。Firefox/WebKit 不在本项目范围内。
|
||
|
||
## 输入
|
||
|
||
- 上一个 manifest:`tests/golden/M14-04G/manifest.json`
|
||
- 生产入口:`web/app/src/app/App.tsx`
|
||
- 样式入口:`web/app/src/app/app-shell.css`
|
||
- 既有参考 e2e:`web/tests/e2e/keyboard-accessibility.spec.ts`
|
||
|
||
## 范围
|
||
|
||
做:
|
||
|
||
- main/offscreen 两个 Chromium 页面配置。
|
||
- Tab/Shift+Tab 到文件菜单、Enter 打开、Escape 关闭并恢复触发器焦点。
|
||
- F3 打开操作搜索、输入框自动聚焦、Escape 关闭并恢复 F3 触发器焦点。
|
||
- 扫描可见 button/input/select/textarea/canvas/[role],检查可计算名称、禁用状态和合法角色。
|
||
- 记录焦点轨迹、角色/名称缺口和稳定报告 hash。
|
||
|
||
不做:
|
||
|
||
- Firefox/WebKit 或特定屏幕阅读器的兼容性声明。
|
||
- 重新设计所有快捷键或引入新的 operator。
|
||
- 用 axe 的单一静态结果替代真实键盘路径。
|
||
|
||
## 验收
|
||
|
||
```text
|
||
npm --prefix web run test:chromium-accessibility
|
||
```
|
||
|
||
必要的补充门:
|
||
|
||
```text
|
||
npm --prefix web run typecheck
|
||
npm --prefix web run build
|
||
git diff --check
|
||
```
|
||
|
||
## 产物和交接
|
||
|
||
- 报告:`tests/golden/M14-04H/chromium-accessibility-report.json`
|
||
- manifest:`tests/golden/M14-04H/manifest.json`
|
||
- 状态页:`docs/status/M14-04H.md`
|
||
- 下一任务:由 manifest 的 `nextTask` 决定
|
||
|
||
## 回滚
|
||
|
||
删除 accessibility checker、报告、manifest、package 命令和本任务状态页;恢复 `M14-04G` 作为队列尾,
|
||
不得修改 M14-04G 的布局证据。
|