Merge "Fix a bug where moving the cursor would not reset selection"

This commit is contained in:
Jean Chalard 2011-10-03 01:32:30 -07:00 committed by Android (Google) Code Review
commit 6b64a0fedc

View file

@ -895,20 +895,16 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar
} }
mComposingStringBuilder.setLength(0); mComposingStringBuilder.setLength(0);
mHasUncommittedTypedChars = false; mHasUncommittedTypedChars = false;
if (isCursorTouchingWord()) {
mHandler.cancelUpdateBigramPredictions();
mHandler.postUpdateSuggestions();
} else {
setPunctuationSuggestions();
}
TextEntryState.reset(); TextEntryState.reset();
updateSuggestions();
final InputConnection ic = getCurrentInputConnection(); final InputConnection ic = getCurrentInputConnection();
if (ic != null) { if (ic != null) {
ic.finishComposingText(); ic.finishComposingText();
} }
mVoiceProxy.setVoiceInputHighlighted(false); mVoiceProxy.setVoiceInputHighlighted(false);
} else if (!mHasUncommittedTypedChars && TextEntryState.isAcceptedDefault()) { } else if (!mHasUncommittedTypedChars) {
TextEntryState.reset(); TextEntryState.reset();
updateSuggestions();
} }
mJustAddedMagicSpace = false; // The user moved the cursor. mJustAddedMagicSpace = false; // The user moved the cursor.
mJustReplacedDoubleSpace = false; mJustReplacedDoubleSpace = false;
@ -1654,6 +1650,10 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar
return; return;
} }
mHandler.cancelUpdateSuggestions();
mHandler.cancelUpdateOldSuggestions();
mHandler.cancelUpdateBigramPredictions();
if (!mHasUncommittedTypedChars) { if (!mHasUncommittedTypedChars) {
setPunctuationSuggestions(); setPunctuationSuggestions();
return; return;