Small refactor (A1)

Change-Id: Ia0838bbce47a2b60067f464685ad6d55ee4ec934
This commit is contained in:
Jean Chalard 2012-03-02 18:54:50 +09:00
parent 7293b65841
commit d992fa847d

View file

@ -1715,7 +1715,7 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar
setSuggestions(SuggestedWords.EMPTY); setSuggestions(SuggestedWords.EMPTY);
} }
public void setSuggestions(SuggestedWords words) { public void setSuggestions(final SuggestedWords words) {
if (mSuggestionsView != null) { if (mSuggestionsView != null) {
mSuggestionsView.setSuggestions(words); mSuggestionsView.setSuggestions(words);
mKeyboardSwitcher.onAutoCorrectionStateChanged( mKeyboardSwitcher.onAutoCorrectionStateChanged(
@ -1830,25 +1830,24 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar
showSuggestions(builder.build(), typedWord); showSuggestions(builder.build(), typedWord);
} }
public void showSuggestions(SuggestedWords suggestedWords, CharSequence typedWord) { public void showSuggestions(final SuggestedWords suggestedWords, final CharSequence typedWord) {
final boolean shouldBlockAutoCorrectionBySafetyNet = final boolean shouldBlockAutoCorrectionBySafetyNet =
Utils.shouldBlockAutoCorrectionBySafetyNet(suggestedWords, mSuggest); Utils.shouldBlockAutoCorrectionBySafetyNet(suggestedWords, mSuggest);
if (shouldBlockAutoCorrectionBySafetyNet) { if (shouldBlockAutoCorrectionBySafetyNet) {
suggestedWords.setShouldBlockAutoCorrection(); suggestedWords.setShouldBlockAutoCorrection();
} }
setSuggestions(suggestedWords); final CharSequence autoCorrection;
if (suggestedWords.size() > 0) { if (suggestedWords.size() > 0) {
if (shouldBlockAutoCorrectionBySafetyNet) { if (!shouldBlockAutoCorrectionBySafetyNet && suggestedWords.hasAutoCorrectionWord()) {
mWordComposer.setAutoCorrection(typedWord); autoCorrection = suggestedWords.getWord(1);
} else if (suggestedWords.hasAutoCorrectionWord()) {
mWordComposer.setAutoCorrection(suggestedWords.getWord(1));
} else { } else {
mWordComposer.setAutoCorrection(typedWord); autoCorrection = typedWord;
} }
} else { } else {
// TODO: replace with mWordComposer.deleteAutoCorrection()? autoCorrection = null;
mWordComposer.setAutoCorrection(null);
} }
mWordComposer.setAutoCorrection(autoCorrection);
setSuggestions(suggestedWords);
setSuggestionStripShown(isSuggestionsStripVisible()); setSuggestionStripShown(isSuggestionsStripVisible());
} }