ElyMark: the probe requires each task box laid out and visible (R2.14)

This commit is contained in:
ZacharyZhang-NY committed 2026-10-09 09:19:15 -04:00
1 parent eee3b9e288
commit 4efe14bce7
3 files changed
+8 -2

No files matched your search

+4 -1
View File
@@ -63,7 +63,10 @@ const CHECK: &str = r#"
const line = range.getClientRects()[0];
const top = item.getBoundingClientRect().top + parseFloat(mark.marginTop);
const size = parseFloat(getComputedStyle(item).fontSize);
const drawn = mark.content !== 'none' && parseFloat(mark.borderTopWidth) > 0 && mark.borderTopStyle !== 'none';
const shown = mark.display !== 'none' && mark.visibility === 'visible' && parseFloat(mark.opacity) > 0;
// A laid-out box pushes the text 1.5em in.
const inset = (item.querySelector('p').getBoundingClientRect().left - item.getBoundingClientRect().left) / size;
const drawn = shown && mark.content !== 'none' && parseFloat(mark.borderTopWidth) > 0 && Math.abs(inset - 1.5) < 0.05;
return [parseFloat(mark.width) / size, parseFloat(mark.height) / size, top + parseFloat(mark.height) / 2 - (line.top + line.height / 2), drawn];
}),
cells: view.querySelectorAll('.milkdown td').length,
+1 -1
View File
@@ -191,7 +191,7 @@
- [x] R2.11 ElyTree:改动数的单复数(“1 file changed”) — R1 测试只核键名;R2 PASS
- [ ] R2.12 ElyTree:差异按文件类型着色,Markdown 不按代码高亮 — R3 FAIL(Rust 与 Ruby 词表、Haskell 与 Erlang 注释、TOML 与 CMake 紧接注释)后按语言分表(组件库 b0dbfd4),三轮上限,未再审
- [ ] R2.13 ElyMark:紧凑写法的 GFM 表格(无对齐空格)在可视模式显示为表格
- [ ] R2.14 ElyMark:任务列表的勾选框与正文同大、对齐首行
- [ ] R2.14 ElyMark:任务列表的勾选框与正文同大、对齐首行 — R1 只测首项;R2 未生成的框也算;R3 FAIL(隐藏的框也算)后改为核对文字缩进与可见性,三轮上限,未再审
- [x] R2.15 “打开方式”里不得出现 LibreOffice(用户 2026-10-09 加急,先于 R2.2 收尾):构建出的 LibreOffice.app 去掉文档类型与快速查看插件并注销;任何测试不挂载官方镜像(官方内核解到无包的文件夹);`tests/scripts/lo-unregistered.sh` 核对 — R1 注销不幂等、吞查询与 plist 错误、负例不认原因;R2 inert 步骤吞坏 plist;R3 PASS
- [x] R2.16 ElyTable(用户 2026-10-09 报):单击单元格跳到别处(如 A5876),无法拖选多格 — R1 缩放与 DPI 变化漂移、拖选与远处测试缺;R2 测试跑在文字文档上;R3 PASS
- [x] R2.17 ElyPDF(用户报):编辑文字时报“这种字体画不出‘V’”,而所改文字里没有 V;改字对应的文字块须与面板所示一致 — R1 CMap 漏条目数、共用字形的字被改写、文件超 500 行;R2 部分 ToUnicode 不退回 cid_to_ucs;R3 PASS
+3
View File
@@ -0,0 +1,3 @@
FAIL
apps/ely-mark/examples/markprobe.rs:66(tests/scripts/mark-content.sh:67):`drawn` 仅检查 content 与边框声明,会将 `display: none` 的任务框判为已绘制。第二轮删除 `content` 的负例现已正确以 1 退出;继续在独立副本的 main.css 追加 `.milkdown li[data-item-type='task']::before { display: none; }`,重新构建并完整运行 `bash tests/scripts/mark-content.sh`,原生窗口截图中两个任务框均消失,脚本仍以 0 退出并输出 `ok: mark content (background share 0.9458)`;visual、themed、preview 的两个框均报告 `[1,1,0.04688,true]`,放过违反 R2.14 的任务框消失回退。修复方向:校验伪元素实际参与布局及可见性,并加入隐藏任务框的负例。