From dd931c47be1a4fe4cf86c8ad018e479c2cbdf8ce Mon Sep 17 00:00:00 2001 From: Jean Chalard Date: Fri, 2 Mar 2012 20:33:23 +0900 Subject: Some more simplification I wish "are we autocorrecting?" was not computed in a dozen places all depending on a hundred code paths More than likely, this fixes very subtle discrepancies between auto-correction indicator with the underline and with the LED on the spacebar - which is not displayed any more in the current version anyway. Especially, the LED probably would have been off when the word was caught by the safety net. Change-Id: Idda3021771081d6155b06915e728ecd64d9e042e --- java/src/com/android/inputmethod/latin/LatinIME.java | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) (limited to 'java/src') diff --git a/java/src/com/android/inputmethod/latin/LatinIME.java b/java/src/com/android/inputmethod/latin/LatinIME.java index 211b69a44..98bdef606 100644 --- a/java/src/com/android/inputmethod/latin/LatinIME.java +++ b/java/src/com/android/inputmethod/latin/LatinIME.java @@ -980,8 +980,9 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar .setHasMinimalSuggestion(false); // When in fullscreen mode, show completions generated by the application final SuggestedWords words = builder.build(); - setSuggestions(words); - setAutoCorrectionIndicator(Utils.willAutoCorrect(words)); + final boolean isAutoCorrection = Utils.willAutoCorrect(words); + setSuggestions(words, isAutoCorrection); + setAutoCorrectionIndicator(isAutoCorrection); // TODO: is this the right thing to do? What should we auto-correct to in // this case? This says to keep whatever the user typed. mWordComposer.setAutoCorrection(mWordComposer.getTypedWord()); @@ -1714,15 +1715,14 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar } public void clearSuggestions() { - setSuggestions(SuggestedWords.EMPTY); + setSuggestions(SuggestedWords.EMPTY, false); setAutoCorrectionIndicator(false); } - public void setSuggestions(final SuggestedWords words) { + public void setSuggestions(final SuggestedWords words, final boolean isAutoCorrection) { if (mSuggestionsView != null) { mSuggestionsView.setSuggestions(words); - mKeyboardSwitcher.onAutoCorrectionStateChanged( - words.hasWordAboveAutoCorrectionScoreThreshold()); + mKeyboardSwitcher.onAutoCorrectionStateChanged(isAutoCorrection); } } @@ -1851,8 +1851,9 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar autoCorrection = null; } mWordComposer.setAutoCorrection(autoCorrection); - setSuggestions(suggestedWords); - setAutoCorrectionIndicator(Utils.willAutoCorrect(suggestedWords)); + final boolean isAutoCorrection = Utils.willAutoCorrect(suggestedWords); + setSuggestions(suggestedWords, isAutoCorrection); + setAutoCorrectionIndicator(isAutoCorrection); setSuggestionStripShown(isSuggestionsStripVisible()); } @@ -2025,7 +2026,7 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar } public void setPunctuationSuggestions() { - setSuggestions(mSettingsValues.mSuggestPuncList); + setSuggestions(mSettingsValues.mSuggestPuncList, false); setAutoCorrectionIndicator(false); setSuggestionStripShown(isSuggestionsStripVisible()); } -- cgit v1.2.3-83-g751a