2.1 KiB
2.1 KiB
id, title, status, phase, deps, created
| id | title | status | phase | deps | created |
|---|---|---|---|---|---|
| T-668 | AI生成图片画廊仅响应左键双击 | TODO | 7 | 2026-07-20 |
T-668 AI生成图片画廊仅响应左键双击
问题 / 背景
②「AI生成」任务列表当前直接把 QTableView.doubleClicked 连接到封面画廊打开逻辑。该信号只传递单元格索引,不携带鼠标按键;右键双击命中任务行时也会触发同一回调,意外弹出图片查看窗口。右键应保留给未来的右键菜单或保持无操作,不能打开画廊。
方案
- 在
app/gui/tabs/generate.py为②任务表增加局部的左键双击事件入口:从原始鼠标双击事件读取event.button(),仅当按键为Qt.LeftButton时取得命中行并调用现有show_task_images()。 - 移除
task_table.doubleClicked.connect(self.show_task_images)这条通用信号连接,避免表格默认双击信号绕过按键判断;不修改其他模块的表格双击行为。 - 右键双击继续交给 Qt 的默认事件处理,但不得打开图片画廊、不得修改当前生成结果、不得显示错误提示。键盘切换行、单击选中行和新标题编辑列的既有逻辑保持不变。
- 将②任务列表相关提示文案明确为「左键双击」,避免用户误以为任何双击都会打开画廊。
验收标准
- 左键双击②任务列表的非新标题编辑列时,仍打开当前行的封面图片画廊。
- 右键双击同一行或空白区域时,不打开图片画廊、不保存或重置任何数据。
- 新标题编辑列继续不打开图片画廊;单击选中、键盘上下切换、封面候选图保存及③更新蝦皮不回归。
tests/test_gui.py覆盖左键双击会调用预览、右键双击不会调用预览。
验证
py -3.10 -m unittest discover -s tests -p "test_gui.py"
py -3.10 -m ruff check app tests main.py
py -3.10 -m compileall app main.py
git diff --check
非目标
- 不新增右键菜单、批量操作或快捷键。
- 不改数据库、AI 生成、图片下载、CDP/Shopee、Excel 或③更新流程。
执行记录
- 待实现。