Skip to content

fix(android): 听写编辑失败后不再误删下一次上屏 - #1146

Draft
cursor[bot] wants to merge 1 commit into
betafrom
cursor/critical-bug-identification-93f5
Draft

cursor[bot] wants to merge 1 commit into
betafrom
cursor/critical-bug-identification-93f5

Conversation

@cursor

@cursor cursor Bot commented Oct 4, 2026

Copy link
Copy Markdown

摘要

修复 Android 输入法在“说出正确的词”编辑失败后,把下一次普通听写当成整段替换,从而按旧文本长度删掉光标前文字的问题。

修复 / 新增 / 改进

  • 编辑面板关闭后,会话 error 或 stop 命令失败时释放 awaitingEditReplacement,不再把失败的纠正留给下一次上屏。
  • 主麦克风上开始的新录音也会释放已经关闭的编辑替换,避免胶囊错误先把 processing 清掉、用户立刻重试时仍走进 finishEditWithSpokenReplacement()。
  • 编辑面板仍然打开时,失败不会清掉这个状态,用户可以在同一个编辑界面里重试替换。

兼容

  • 不包含:撤销/重做按长度删除的修改(仍由 fix(android): 听写撤销前确认原文仍在光标处 #1131 处理),也不改成功纠正的替换路径。
  • 对现有用户 / 本地环境 / 构建流程的影响:仅 Android 输入法的听写编辑状态机。成功的整段替换仍按原逻辑上屏。

测试计划

  • 命令:kotlinc 编译 PendingEditReplacement.kt 与 PendingEditReplacementTest.kt 后,org.junit.runner.JUnitCore com.openless.app.PendingEditReplacementTest
  • 结果:3 个测试通过
  • 证据路径:本机无 Android 仪表,未在真机上走完整输入法点击流程
Open in Web View Automation 

编辑面板关闭后若识别失败,awaitingEditReplacement 仍会把下一次普通听写送进按长度删除的整段替换。失败和主麦克风上的新录音都会释放这个状态。

Co-authored-by: lubaiqing9 <lubaiqing9@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant