Files
mnote/bugs/05-editor-mainline/done/5-31-side-pane-slash-overlay-isolation-v1.md
T
lix-2026 eba1010191 fix local office resource editing
- 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
2026-05-21 05:40:06 +08:00

39 lines
1.7 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 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 作为表面修复。
## 待办
- [x] `positionSlashMenuForRoot` 只查当前 root 内菜单;不能 fallback 到全局第一个 slash menu。
- [x] `activeEditorRootForSlashMenu` 优先选择含有 selection/focus 的可见 rootsecondary hidden/unsupported root 不参与。
- [x] 打开 unsupported side target 时彻底卸载 secondary view 并清理遗留 slash overlay。
- [x] 为 primary + secondary 同时存在时的 slash 隔离补测试。
- [x] 若 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`
## 验收命令
```bash
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
```