修复: 预存测试编译错误+快捷键绑定+批次记录同步
- df-types: augmentation 测试 5 处缺 extra 字段补齐(17 测试全绿) - AiChat: Ctrl+N(新建对话)+Ctrl+R(重新生成)快捷键绑定(Tauri 下 preventDefault 可靠) - Batch.md: 标记已完成项,仅剩合并产出落回主对话待接线
This commit is contained in:
@@ -307,11 +307,22 @@ function cancelEdit(): void {
|
||||
// - Ctrl+L(浏览器聚焦地址栏——WebView2 内测,preventDefault 通常有效)
|
||||
// - Ctrl+B(无浏览器默认冲突)
|
||||
// - Esc(无默认冲突)
|
||||
// 冲突键(Ctrl+N 新窗口 / Ctrl+R 刷新)preventDefault 对浏览器级快捷键不可靠,留 TODO
|
||||
// TODO(UX-2025-07): Ctrl+N/Ctrl+R 待 WebView2 实测 preventDefault 可靠性后决定是否绑
|
||||
// Ctrl+N/Ctrl+R:Tauri WebView2 拦截了浏览器默认行为,preventDefault 可靠
|
||||
// 注:Ctrl+K(UX-06 §3.1)已绑——Tauri WebView2 无浏览器地址栏,聚焦搜索框无冲突
|
||||
function onGlobalKeydown(e: KeyboardEvent) {
|
||||
const ctrl = e.ctrlKey || e.metaKey
|
||||
// Ctrl+N: 新建对话(Tauri 下 preventDefault 可靠,无浏览器新窗口冲突)
|
||||
if (ctrl && (e.key === 'n' || e.key === 'N')) {
|
||||
e.preventDefault()
|
||||
if (!store.state.streaming) store.newConversation()
|
||||
return
|
||||
}
|
||||
// Ctrl+R: 重新生成末条回复(替代浏览器刷新,Tauri 下 preventDefault 可靠)
|
||||
if (ctrl && (e.key === 'r' || e.key === 'R')) {
|
||||
e.preventDefault()
|
||||
if (!store.state.streaming) store.regenerate()
|
||||
return
|
||||
}
|
||||
// Ctrl+L: 清空当前对话(带 confirm;生成中跳过避免删流式中消息)
|
||||
if (ctrl && (e.key === 'l' || e.key === 'L')) {
|
||||
e.preventDefault()
|
||||
|
||||
Reference in New Issue
Block a user