3D 生成面板补 TODO:弹出式对话框的标记与焦点管理要一起做

- 面板容器只标了 role="dialog"、没标 aria-modal,也没有焦点约束与焦点归还(评审 #74)
- 加上 TODO(a11y-modal) 说明为什么单独补标记反而会误导,以及「与焦点管理一起做 / 一次性推广到所有同类面板」两条路,本轮不改行为
This commit is contained in:
2026-09-24 21:07:09 +08:00
parent d4416e8b88
commit dfbde6fbc1
@@ -97,6 +97,11 @@ export function Model3dGenerationModal({
});
return (
// TODO(a11y-modal): 这里只标了 role="dialog",没标 aria-modal,也没有把键盘焦点锁在面板内、
// 关闭后还回原处。读屏软件因此不知道面板之外的页面此时应该失效,Tab 也能跑到面板外面
// (评审 #74)。单补一个标记而不做焦点管理只会给出错误的提示,而且仓库里 20 多个同类面板
// 都没有这个标记,只给 3D 面板加反而不一致;要么和焦点管理一起做,要么一次性推广到所有
// 同类面板。
<div
className="image-canvas-editor__generation-composer image-canvas-editor__generation-composer--image image-canvas-editor__generation-composer--model3d"
style={style}