R6.1 round 3 fixes, ticked: component f1771b3
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
This commit is contained in:
1 parent
b973c8d62a
commit
e01e9a4cb5
6 files changed
+15
-6
No files matched your search
+1
-1
@@ -259,7 +259,7 @@
|
||||
|
||||
## R6 0.1.5 重发前的修复(用户 2026-10-15 报:ElyMark 点表格整表变成源码;级联菜单斜移到子菜单时被路过的项抢走,七个应用同此;最近列表不能清除。用户定:先删 Gitea 上 v0.1.5 的全部文件,修好后在修复的提交上重打 v0.1.5;单元格编辑显示该格原文)
|
||||
|
||||
- [ ] R6.1 ElyMark 表格单元格编辑:可视模式按下表格只打开所按的那一格(单行输入框,显示该格的 Markdown 原文,表格其余照常显示),按格内文字落在所按的字,按格内空白落在格末;写回为一步撤销,格内键入的 `|` 写回时转义;Tab、Shift+Tab 到下一格、上一格;Esc 与失焦写回(组件库 `MarkdownDocument`)
|
||||
- [x] R6.1 ElyMark 表格单元格编辑:可视模式按下表格只打开所按的那一格(单行输入框,显示该格的 Markdown 原文,表格其余照常显示),按格内文字落在所按的字,按格内空白落在格末;写回为一步撤销,格内键入的 `|` 写回时转义;Tab、Shift+Tab 到下一格、上一格;Esc 与失焦写回(组件库 `MarkdownDocument`)
|
||||
- [ ] R6.2 级联菜单的悬停意图(`menus` 的 `ContextMenu`、`MenuBar` 共用的面板):菜单面板挡住其下的元素(原先子菜单盖在父菜单上时,父菜单被盖住的行照收悬停,“底层”的项弹出自己的子菜单);子菜单右侧放不下即开在父菜单左侧,不盖父菜单;悬停子菜单项延时打开;指针在“当前位置与子菜单上下两角”的三角区内移动时不切换路过的项,停下超过延时才切换
|
||||
- [ ] R6.3 ElyMark 侧栏清除最近列表:核对 98692cb 已做到(文件页能清空最近列表),随本次发布
|
||||
- [ ] R6.4 重发 0.1.5:删去 v0.1.5 的标签与发布,在修复的提交上重打;Windows、WSL2 的 Linux、Mac mini 本机建(签名、公证)并上传;本机装上
|
||||
@@ -0,0 +1,9 @@
|
||||
FAIL
|
||||
|
||||
1. `reference/Ely-GPUI-Components/src/documents/document/mod.rs:249` — [P1] `text()` now escapes a cell's typed pipes, but `caret()` still indexes that result with the raw input offset (`document/place.rs:28`). In `| alpha | beta |\n| --- | --- |\n| c | d |\n`, replace `alpha` with `|中` and leave the cell open: reading the caret panics because byte 6 lies inside `中`. ElyMark's ten-second session persistence calls this through `MarkView::place`, so ordinary cell input can crash the application. ASCII text after a pipe also reports the wrong column. Map the caret through the same escaping transformation as the snapshot and commit; add Unicode and ASCII caret regressions. Both `review_r3_caret_after_pipe_*` probes fail in `.work/R6.1-r3/probes-verified.log`.
|
||||
|
||||
2. `reference/Ely-GPUI-Components/src/documents/document/edit.rs:238` — [P2] Replacing only a cell's content does not preserve empty edge cells when the row omits outer pipes. Open `alpha | beta\n--- | ---\nc | d\n`, select all of `alpha`, delete it and press Esc: the header becomes ` | beta`, which has one cell, and the entire table becomes a paragraph. Clearing `beta` also destroys the table; clearing `c` moves `d` into the first column. This changes neighboring structure rather than just the edited cell (R6.1, PRD §14.3). Preserve the required row delimiters when an edge cell becomes empty, keeping snapshot and commit consistent and undo atomic. The three `review_r3_clear_bare_*` probes fail in `.work/R6.1-r3/probes-verified.log`.
|
||||
|
||||
3. `reference/Ely-GPUI-Components/src/documents/document/point.rs:190` — [P2] Right-clicking another cell after typing commits the active cell, then discards the press because the whole table differs from its pre-commit drawing. Open `alpha` in `| alpha | beta |\n| --- | --- |\n| c | d |\n`, append `X`, then right-click `beta`'s padding: no `DocumentEvent::Pointed` is emitted, so ElyMark shows no context menu (MARK-16). Resolve the pressed cell against the committed table instead of rejecting every change elsewhere in that table, and add the dirty-neighbor regression. `review_r3_right_click_neighbor_after_edit` fails while the no-edit control passes in `.work/R6.1-r3/probes-verified.log`.
|
||||
|
||||
4. `reference/Ely-GPUI-Components/src/documents/document/lists.rs:241` — [P2] Cell navigation loses its destination when committing starts an asynchronous parse. Put the table from entry 3 at the start of a document followed by a fenced block containing 131072 `x` characters. Open `alpha`, type `X`, then press Tab: the edit is committed, but `open()` returns at `edit.rs:80` while parsing, and no cell opens even after parsing finishes. Tab therefore stops working after edits in supported visual documents above 128 KiB. Retain the requested destination and open it once the matching parse completes; cover asynchronous cell navigation. `review_r3_tab_after_edit_in_long_document` fails and its no-edit control passes in `.work/R6.1-r3/long-document.log` and `.work/R6.1-r3/probes-verified.log`.
|
||||
Reference in new issue
Block a user