Show predictions in the right cases (A58)

After reverting an auto-correct we always have a separator after
the previously inserted word, and the cursor is never touching
a word. Showing predictions is the right thing to do, while
calling postUpdateSuggestions will invariably yield an invariably
blank suggestion strip, which is not very helpful.

Likewise, after we pick a suggestion, we should be showing the
predictions unless showing the addToDictionary hint. There was
a bug here in the corner case that the word would be a candidate
for user dictionary, but the user dictionary provider is not
available: in this case we should be showing predictions, but
we were showing an unhelpful empty suggestion bar.

Change-Id: I287bb5eb4af762bd5a433e85e185fab6d203e91a
main
Jean Chalard 2012-07-05 12:05:07 +09:00
parent 0e9e7e337d
commit 746e014eb5
1 changed files with 4 additions and 2 deletions

View File

@ -1874,7 +1874,8 @@ public class LatinIME extends InputMethodService implements KeyboardActionListen
mSuggestionsView.showAddToDictionaryHint( mSuggestionsView.showAddToDictionaryHint(
suggestion, mCurrentSettings.mHintToSaveText); suggestion, mCurrentSettings.mHintToSaveText);
} else { } else {
mHandler.postUpdateSuggestions(); // Here we just manually picked a suggestion. We should be showing the predictions!
mHandler.postUpdateBigramPredictions();
} }
} }
} }
@ -2011,7 +2012,8 @@ public class LatinIME extends InputMethodService implements KeyboardActionListen
// Don't restart suggestion yet. We'll restart if the user deletes the // Don't restart suggestion yet. We'll restart if the user deletes the
// separator. // separator.
mLastComposedWord = LastComposedWord.NOT_A_COMPOSED_WORD; mLastComposedWord = LastComposedWord.NOT_A_COMPOSED_WORD;
mHandler.postUpdateSuggestions(); // We have a separator between the word and the cursor: we should show predictions.
mHandler.postUpdateBigramPredictions();
} }
public boolean isWordSeparator(int code) { public boolean isWordSeparator(int code) {