- add local-folder OnlyOffice sign/callback writeback and edit-tab handling - align main resource tabs, attachment edit menu, slash isolation, and filetree context behavior - record Sidex/Hermes gap reviews and Reasonix task checklists
1.7 KiB
1.7 KiB
Checklist: Side Pane Slash Overlay Isolation
目标
主编辑器 slash 菜单不得在侧栏/secondary pane 中出现;不支持侧栏打开资源时不得留下会响应 slash 的侧栏 editor host。
允许修改
rust/crates/mnote-web/src/routes/web_shell.rs- 必要时
rust/spikes/leptos-tiptap-spike/src/lib.rs - 相关测试 / smoke
禁止事项
- 不禁用主编辑器 slash 菜单。
- 不删除侧栏页面编辑能力。
- 不用全局 CSS 隐藏全部 slash menu 作为表面修复。
待办
positionSlashMenuForRoot只查当前 root 内菜单;不能 fallback 到全局第一个 slash menu。activeEditorRootForSlashMenu优先选择含有 selection/focus 的可见 root;secondary hidden/unsupported root 不参与。- 打开 unsupported side target 时彻底卸载 secondary view 并清理遗留 slash overlay。
- 为 primary + secondary 同时存在时的 slash 隔离补测试。
- 若 leptos runtime 自身生成全局 overlay,需要给 overlay 绑定
data-pane-role或 editor host id。
本轮执行记录
- 代码:
web_shell.rs增加setSlashMenuInactive/hideSlashMenusOutsideRoot,非当前 selection/focus root 的 slash menu 会被标记data-mnote-slash-inactive并隐藏。 - 浏览器验证:
tmp/bug-20260521-workbench-browser-verify/result-slash.json,primaryMenus=1、secondaryMenus=0、inactiveSecondary=1,截图05-slash-primary-secondary-isolation.png。
验收命令
cd /mnt/Data1T/mnote/rust
cargo test -p mnote-web document_shell_runtime_renders_resource_tab_runtime -- --test-threads=1
cargo test -p mnote-web document_shell_runtime_positions_slash_menu_per_editor_host -- --test-threads=1