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
This commit is contained in:
parent
e2a50bd804
commit
dd931c47be
1 changed files with 10 additions and 9 deletions
|
@ -980,8 +980,9 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar
|
||||||
.setHasMinimalSuggestion(false);
|
.setHasMinimalSuggestion(false);
|
||||||
// When in fullscreen mode, show completions generated by the application
|
// When in fullscreen mode, show completions generated by the application
|
||||||
final SuggestedWords words = builder.build();
|
final SuggestedWords words = builder.build();
|
||||||
setSuggestions(words);
|
final boolean isAutoCorrection = Utils.willAutoCorrect(words);
|
||||||
setAutoCorrectionIndicator(Utils.willAutoCorrect(words));
|
setSuggestions(words, isAutoCorrection);
|
||||||
|
setAutoCorrectionIndicator(isAutoCorrection);
|
||||||
// TODO: is this the right thing to do? What should we auto-correct to in
|
// 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.
|
// this case? This says to keep whatever the user typed.
|
||||||
mWordComposer.setAutoCorrection(mWordComposer.getTypedWord());
|
mWordComposer.setAutoCorrection(mWordComposer.getTypedWord());
|
||||||
|
@ -1714,15 +1715,14 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar
|
||||||
}
|
}
|
||||||
|
|
||||||
public void clearSuggestions() {
|
public void clearSuggestions() {
|
||||||
setSuggestions(SuggestedWords.EMPTY);
|
setSuggestions(SuggestedWords.EMPTY, false);
|
||||||
setAutoCorrectionIndicator(false);
|
setAutoCorrectionIndicator(false);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setSuggestions(final SuggestedWords words) {
|
public void setSuggestions(final SuggestedWords words, final boolean isAutoCorrection) {
|
||||||
if (mSuggestionsView != null) {
|
if (mSuggestionsView != null) {
|
||||||
mSuggestionsView.setSuggestions(words);
|
mSuggestionsView.setSuggestions(words);
|
||||||
mKeyboardSwitcher.onAutoCorrectionStateChanged(
|
mKeyboardSwitcher.onAutoCorrectionStateChanged(isAutoCorrection);
|
||||||
words.hasWordAboveAutoCorrectionScoreThreshold());
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1851,8 +1851,9 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar
|
||||||
autoCorrection = null;
|
autoCorrection = null;
|
||||||
}
|
}
|
||||||
mWordComposer.setAutoCorrection(autoCorrection);
|
mWordComposer.setAutoCorrection(autoCorrection);
|
||||||
setSuggestions(suggestedWords);
|
final boolean isAutoCorrection = Utils.willAutoCorrect(suggestedWords);
|
||||||
setAutoCorrectionIndicator(Utils.willAutoCorrect(suggestedWords));
|
setSuggestions(suggestedWords, isAutoCorrection);
|
||||||
|
setAutoCorrectionIndicator(isAutoCorrection);
|
||||||
setSuggestionStripShown(isSuggestionsStripVisible());
|
setSuggestionStripShown(isSuggestionsStripVisible());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -2025,7 +2026,7 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setPunctuationSuggestions() {
|
public void setPunctuationSuggestions() {
|
||||||
setSuggestions(mSettingsValues.mSuggestPuncList);
|
setSuggestions(mSettingsValues.mSuggestPuncList, false);
|
||||||
setAutoCorrectionIndicator(false);
|
setAutoCorrectionIndicator(false);
|
||||||
setSuggestionStripShown(isSuggestionsStripVisible());
|
setSuggestionStripShown(isSuggestionsStripVisible());
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue