feat: 无限画布 UI 重构 + 预览键盘控制 + 拖拽体验优化 (0.0.27)

- CanvasPage: AntD Layout 双栏布局 (Sider+Content),预览状态提升解耦 DOM
- CanvasSidebar (新): 项目/集数选择器 + 镜头搜索 + 列表 + 固定刷新按钮
- CategoryTabs (新): 双模式分类标签 (Assets/审核) + 数量徽标 + 媒体细分
- CanvasViewport: Ctrl/Cmd 拖拽平移 (pointerEvents:none 防误抓缩略图)
- CanvasViewport: previewActiveRef 双守卫阻止预览穿透缩放/拖拽
- MediaPreview: 键盘控制 Space 暂停/播放、<- -> 快退快进 ±0.5s
- electron/main.ts: local-media:// 协议 handler 转发 Range 头修复 seek
- StageTabs: 无限画布入口按钮 + 全局字号上调

Range seek 调试: 之前 net.fetch 未转发 Range 头 → 浏览器 seek 时
返回 200 全文件而非 206 Partial Content → currentTime 赋值无法定位
→ 播放位置回退到 0。修复: 提取 Range 头单向转发到 file:// handler。

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
2026-06-24 19:26:08 +08:00
parent 48144ed784
commit b04b5a0390
17 changed files with 994 additions and 239 deletions

View File

@@ -10,6 +10,9 @@
- **窗口标题动态版控**:登录后通过 IPC 追加 `·个人版`/`·企业版` 后缀
- **退出登录不再自动清空本地缓存**`user_id` 隔离 + 手动清理按钮
- **无限画布(企业版项目管理)**:独立 BrowserWindow 画布窗口,项目/集数/镜头导航、阶段切换、网格/单行布局、滚轮缩放、拖拽平移、全屏灯箱预览、原生文件拖拽
- **无限画布 UI 重构**AntD Layout 双栏布局Sider+Content、CanvasSidebar 导航、CategoryTabs 双模式分类、Ctrl/Cmd+拖拽平移
- **预览键盘控制**Space 暂停/播放、← → 快退快进 ±0.5s、↑ ↓ 音量透传原生 controls
- **local-media:// Range 请求支持**:协议头转发修复音视频 seek 失败问题
---