diff options
author | 2011-01-25 19:23:56 -0800 | |
---|---|---|
committer | 2011-01-25 19:23:56 -0800 | |
commit | 257b2a58d1816ac44276322a1ba7fe67ddca49b8 (patch) | |
tree | 25deef993424ba6cdd3e068da2d3b491ad2d1b78 /java/src | |
parent | aa0458f917bb823efab6245f08c65e8f2f7327ac (diff) | |
parent | 760884e027c4c678e6baed9a9857bd3c351abefb (diff) | |
download | latinime-257b2a58d1816ac44276322a1ba7fe67ddca49b8.tar.gz latinime-257b2a58d1816ac44276322a1ba7fe67ddca49b8.tar.xz latinime-257b2a58d1816ac44276322a1ba7fe67ddca49b8.zip |
Merge "Hide recognition view when switchToLastInputMethod failed." into honeycomb
Diffstat (limited to 'java/src')
-rw-r--r-- | java/src/com/android/inputmethod/voice/VoiceIMEConnector.java | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/java/src/com/android/inputmethod/voice/VoiceIMEConnector.java b/java/src/com/android/inputmethod/voice/VoiceIMEConnector.java index a3a3ea88e..a30570aa2 100644 --- a/java/src/com/android/inputmethod/voice/VoiceIMEConnector.java +++ b/java/src/com/android/inputmethod/voice/VoiceIMEConnector.java @@ -564,8 +564,18 @@ public class VoiceIMEConnector implements VoiceInput.UiListener { } private void switchToLastInputMethod() { - IBinder token = mService.getWindow().getWindow().getAttributes().token; - mImm.switchToLastInputMethod(token); + final IBinder token = mService.getWindow().getWindow().getAttributes().token; + new Thread ("switchToLastInputMethod") { + @Override + public void run() { + if (!mImm.switchToLastInputMethod(token)) { + // Needs to reset here because LatinIME failed to back to any IME and + // the same voice subtype will be triggered in the next time. + mVoiceInput.reset(); + mService.requestHideSelf(0); + } + } + }.start(); } private void reallyStartListening(boolean swipe) { |