Reset the suggestion status when composing span gets cleared

bug: 3353818

Change-Id: I87b80470015dbeb2eaaec9aa4d9d802597c18e19
main
Ken Wakasa 2011-02-25 18:11:18 +09:00
parent 952cb7e973
commit 025a5e356e
1 changed files with 14 additions and 3 deletions

View File

@ -694,6 +694,8 @@ public class LatinIME extends InputMethodService implements KeyboardActionListen
if (DEBUG) {
Log.i(TAG, "onUpdateSelection: oss=" + oldSelStart
+ ", ose=" + oldSelEnd
+ ", lss=" + mLastSelectionStart
+ ", lse=" + mLastSelectionEnd
+ ", nss=" + newSelStart
+ ", nse=" + newSelEnd
+ ", cs=" + candidatesStart
@ -704,9 +706,18 @@ public class LatinIME extends InputMethodService implements KeyboardActionListen
// If the current selection in the text view changes, we should
// clear whatever candidate text we have.
if ((((mComposing.length() > 0 && mHasValidSuggestions)
|| mVoiceConnector.isVoiceInputHighlighted()) && (newSelStart != candidatesEnd
|| newSelEnd != candidatesEnd) && mLastSelectionStart != newSelStart)) {
final boolean selectionChanged = (newSelStart != candidatesEnd
|| newSelEnd != candidatesEnd) && mLastSelectionStart != newSelStart;
final boolean candidatesCleared = candidatesStart == -1 && candidatesEnd == -1;
if (((mComposing.length() > 0 && mHasValidSuggestions)
|| mVoiceConnector.isVoiceInputHighlighted())
&& (selectionChanged || candidatesCleared)) {
if (candidatesCleared) {
// If the composing span has been cleared, save the typed word in the history for
// recorrection before we reset the candidate strip. Then, we'll be able to show
// suggestions for recorrection right away.
saveWordInHistory(mComposing);
}
mComposing.setLength(0);
mHasValidSuggestions = false;
mHandler.postUpdateSuggestions();