问题描述
在 OpenLess 插入语音转写文字的过程中,系统使用了系统剪贴板(clipboard)功能来实现文本插入。当前的实现流程是:
- 用户复制文本到剪贴板(作为语音转写前的准备)
- OpenLess 进行语音识别并获取转写文字
- 转写文字被复制到系统剪贴板 → 执行粘贴操作插入到目标位置
- 问题:步骤 3 会覆盖用户在第 1 步中手动复制的内容,导致用户丢失了原本的剪贴板内容
建议方案
在插入转写文字(完成粘贴操作)后,将用户此前复制的内容再次复制到系统剪贴板中,恢复用户的剪贴板状态。
具体实现参考:
- 在执行语音转写插入前,主动保存当前系统剪贴板内容
- 完成转写文字的粘贴后,将保存的内容写回系统剪贴板
- 如果跨进程读取剪贴板有权限限制,可考虑在应用启动时申请权限并缓存剪贴板状态
补充说明
这个问题的场景在日常使用中比较常见:用户可能在编辑文档时手动复制了一段重要文字,然后触发语音输入。转写文字插入后,用户发现之前复制的文字无法粘贴了。
这个建议适用于所有使用了 clipboard 作为转写文字插入媒介的模块。
问题描述
在 OpenLess 插入语音转写文字的过程中,系统使用了系统剪贴板(clipboard)功能来实现文本插入。当前的实现流程是:
建议方案
在插入转写文字(完成粘贴操作)后,将用户此前复制的内容再次复制到系统剪贴板中,恢复用户的剪贴板状态。
具体实现参考:
补充说明
这个问题的场景在日常使用中比较常见:用户可能在编辑文档时手动复制了一段重要文字,然后触发语音输入。转写文字插入后,用户发现之前复制的文字无法粘贴了。
这个建议适用于所有使用了 clipboard 作为转写文字插入媒介的模块。