Fix/修复ui editor选择逻辑 #270

Merged
kdletters merged 22 commits from fix/ui-editor-enexpected-select into master 2026-09-04 16:30:44 +08:00

22 Commits

Author SHA1 Message Date
k88936 f3e5849027 清理节点指针抬起的无效取消判断
Project CI / Repository checks (pull_request) Successful in 3m16s
Project CI / Frontend tests (pull_request) Successful in 3m34s
Project CI / Backend tests (pull_request) Successful in 8m29s
Project CI / Native shell tests (pull_request) Successful in 20m27s
移除 onNodePointerUp 中永远不会成立的 pointercancel 类型判断

保留移动且存在待提交变换时的正式更新逻辑
2026-09-04 15:26:10 +08:00
k88936 ff599a1b09 Merge remote-tracking branch 'origin/master' into fix/ui-editor-enexpected-select
Project CI / Repository checks (pull_request) Successful in 8m58s
Project CI / Frontend tests (pull_request) Successful in 25m52s
Project CI / Backend tests (pull_request) Failing after 17m22s
Project CI / Native shell tests (pull_request) Successful in 29m15s
2026-09-04 14:34:47 +08:00
k88936 ab2c3465b0 补充预览拖动当前选中节点契约
拖动命中其它节点时保持变换提交到按下前选中节点

补充跨节点拖动不重新选择命中节点的回归测试

避免无效选中节点提前捕获指针
2026-09-04 14:17:06 +08:00
k88936 2ebc97ad71 修复预览拖动取消状态残留
按实际拖动目标清理父节点及子节点预览变换

补充保持子节点位置时的取消回归测试

恢复拖动手势阻止浏览器原生文字选择
2026-09-04 13:55:30 +08:00
k88936 101eb78ca3 Merge remote-tracking branch 'origin/master' into fix/ui-editor-enexpected-select
Project CI / Repository checks (pull_request) Successful in 2m49s
Project CI / Frontend tests (pull_request) Successful in 3m6s
Project CI / Backend tests (pull_request) Successful in 6m34s
Project CI / Native shell tests (pull_request) Successful in 19m51s
2026-09-03 20:08:04 +08:00
k88936 652f941cac Merge remote-tracking branch 'origin/fix/ui-editor-enexpected-select' into fix/ui-editor-enexpected-select 2026-09-03 20:07:49 +08:00
k88936 c4ab5c69c3 补强 UI 预览测试清理
为预览测试统一注册 afterEach cleanup,避免测试间残留 DOM。

保留原有 UI 选择与拖拽交互行为。
2026-09-03 19:59:54 +08:00
k88936 3a6109dce6 修复 UI 预览测试隔离
卸载 ExclusiveChildrenTabs 测试实例,避免后续 tab 查询命中残留 DOM。
2026-09-03 19:51:09 +08:00
k88936 55907efcde Merge branch 'master' into fix/ui-editor-enexpected-select
Project CI / Repository checks (pull_request) Successful in 2m45s
Project CI / Frontend tests (pull_request) Successful in 3m3s
Project CI / Backend tests (pull_request) Successful in 7m21s
Project CI / Native shell tests (pull_request) Successful in 19m30s
2026-09-03 19:46:28 +08:00
k88936 00c810c002 Merge remote-tracking branch 'origin/master' into fix/ui-editor-enexpected-select 2026-09-03 19:45:24 +08:00
k88936 708421259a 解决 UI 编辑器预览手势合并冲突
Project CI / Repository checks (pull_request) Has been cancelled
Project CI / Frontend tests (pull_request) Has been cancelled
Project CI / Backend tests (pull_request) Has been cancelled
Project CI / Native shell tests (pull_request) Has been cancelled
保留节点拖动时的子节点预览变换与提交取消行为。

将节点选择延迟到未拖动的指针松开,并抑制拖动后的 click。

保留窗口失焦、指针取消和缩放控制点的现有交互。
2026-09-03 19:42:42 +08:00
k88936 1d2bfc3763 Merge branch 'master' into fix/ui-editor-enexpected-select
Project CI / Frontend tests (pull_request) Successful in 2m50s
Project CI / Native shell tests (pull_request) Successful in 21m0s
Project CI / Repository checks (pull_request) Successful in 2m25s
Project CI / Backend tests (pull_request) Successful in 6m38s
2026-09-03 16:08:33 +08:00
k88936 ad3155d44c Merge remote-tracking branch 'origin/master' into fix/ui-editor-enexpected-select
Project CI / Frontend tests (pull_request) Successful in 3m36s
Project CI / Backend tests (pull_request) Successful in 7m9s
Project CI / Native shell tests (pull_request) Failing after 19m56s
Project CI / Repository checks (pull_request) Failing after 54s
2026-09-03 15:03:35 +08:00
k88936 16dedbb4b7 收紧预览取消事件接口
Project CI / Repository checks (pull_request) Failing after 10s
Project CI / Backend tests (pull_request) Failing after 15s
Project CI / Frontend tests (pull_request) Successful in 3m1s
Project CI / Native shell tests (pull_request) Successful in 23m12s
将节点与缩放手势的 cancel 回调改为必填

更新所有 UiTreeRenderer 调用点显式传入取消处理
2026-09-03 14:57:18 +08:00
k88936 9833c826bd 补充预览取消手势回归断言
覆盖越过移动阈值后 pointercancel 清理点击抑制
2026-09-03 14:46:57 +08:00
k88936 2e23c0b405 统一预览节点指针手势条件
复用同一接收条件驱动点击分支与指针处理器
2026-09-03 14:46:19 +08:00
k88936 3deebf0e90 修复预览手势取消后的点击抑制
取消、失焦、树切换和无效几何统一清理点击抑制状态

补充 pointercancel 后点击状态回归测试

同步 UI 编辑器预览交互技术方案
2026-09-03 14:45:58 +08:00
k88936 d225fdae01 阻止预览拖动触发浏览器文字选择
为预览节点层增加 select-none 样式

拖动起始阶段阻止浏览器默认选择行为

补充原生选字防回归测试并同步文档
2026-09-03 14:36:49 +08:00
k88936 f10fc2f032 修正预览拖动使用当前选中节点
拖动手势优先更新按下前已选中的节点

补充跨节点拖动回归测试并同步交互约定
2026-09-03 14:23:27 +08:00
k88936 8d118ec1d7 更新预览节点选择交互约定
记录松开选择与二像素拖动阈值

补充嵌套节点和取消边界语义
2026-09-03 13:38:22 +08:00
k88936 0cdd3fbd75 补充预览拖动选择回归测试
覆盖节点点击延迟到 pointerup 的选择时机

覆盖拖动嵌套节点缩放取消失焦和区域外松开

覆盖直接拖动节点不再由 click 单独选中
2026-09-03 13:37:53 +08:00
k88936 fcacdca4a4 修复预览节点松开选择手势
按下阶段仅记录节点手势与命中目标

在干净松开时选择并处理拖动取消失焦边界

阻止拖动后的嵌套 click 重新选择
2026-09-03 13:37:27 +08:00