Files
Genarrative/docs/【交互设计】预览画布缩放滑杆-2026-09-05.md
T
k88936 4db6d28603
Project CI / Repository checks (push) Successful in 3m6s
Project CI / Frontend tests (push) Successful in 3m44s
Project CI / Backend tests (push) Successful in 8m16s
Project CI / Native shell tests (push) Successful in 20m48s
UI编辑器一批细节优化 (#278)
* 提示词:完善组件建议,增加容器背景与节点大小一致的实现
* 支持Delete删除节点 ctrl + -缩放
* 步骤结束弹窗提醒
![shotmd-1788599068.jpg](/attachments/99a1e4aa-d778-41bf-9dda-0df703723407)
![shotmd-1788605840.jpg](/attachments/31ab883d-32bc-467b-9308-616b83387a79)

* UI 树快捷删除
![shotmd-1788605655.jpg](/attachments/3d451201-3f68-4eb6-b558-864ecf0cb5a3)

* zoom滑动条样式

before:
![image.png](/attachments/e4a04304-e6eb-4da6-9352-99e093fee42e)
after:
![shotmd-1788606577.jpg](/attachments/6cdc377c-f2a3-4a7e-b78e-772a3fdb13b7)

Reviewed-on: http://192.168.35.82/git/GenarrativeAI/Genarrative/pulls/278
Co-authored-by: 王德宇 <kvtodev@outlook.com>
Co-committed-by: 王德宇 <kvtodev@outlook.com>
2026-09-08 11:56:36 +08:00

2.3 KiB
Raw Blame History

预览画布缩放滑杆

交付目标

将 UI 编辑器预览区现有的缩放按钮替换为桌面端可拖动滑杆,同时保留快速缩小、放大和适配画布操作。

交互约定

  • 滑杆选择范围为 25%–200%,步进 5%;快捷加减继续使用核心视口的现有缩放边界。
  • 滑杆位于预览区右下角固定工具栏;不提供移动端或窄窗口 fallback。
  • 保留 + 按钮。点击轨道可跳转,拖动滑块实时更新画布和百分比。
  • 缩放以视口中心为中心,继续支持 Ctrl/Cmd + 滚轮缩放。
  • 滑杆支持方向键、Home、End;百分比文本可点击编辑并在失焦时限制到有效范围。
  • 百分比文本使用数字输入框呈现;输入提交后同步视口缩放,适配画布保持独立按钮,点击百分比不会触发适配。
  • 缩放滑杆获得焦点时,Delete/Backspace 不触发 UI 节点快捷删除;缩放按钮鼠标点击不改变快捷键焦点。
  • Windows/Linux 使用 CtrlmacOS 使用 Cmd+=NumpadAdd 放大,-NumpadSubtract 缩小,允许按键重复时连续缩放。
  • 快捷键直接复用现有 +/ 按钮动作:以视口中心为锚点,按 ×1.16/×0.86 改变缩放。
  • 鼠标悬停在预览画布上,或预览画布已获得键盘焦点时,快捷键生效。预览画布需提供可聚焦语义与无障碍名称。
  • 事件来自输入框、文本编辑区、按钮、链接、缩放工具栏或其他可操作控件时不拦截;不向 iframe 子文档注入监听。
  • 仅在存在可缩放视口且确认命中快捷键时调用 preventDefault()stopPropagation(),防止浏览器页面同时缩放。
  • 保留现有 Ctrl/Cmd+0 适配画布与 Ctrl/Cmd+1 恢复 100% 行为,不增加其他重置快捷键。缩放仍是当前预览实例的临时 UI 状态。
  • 保留快捷键与缩放焦点边界的组件级回归测试,不扩展端到端测试。

验收

桌面端可通过按钮、轨道点击、拖动和键盘改变缩放;百分比与画布同步,边界不会越界。组件级测试覆盖平台修饰键、主键盘与小键盘变体、按键重复、悬停/焦点作用域、可编辑与可操作目标放行、无内容放行、浏览器默认行为拦截和现有 0/1 回归;另运行前端定向类型检查、编码检查和 git diff --check