Re-sequence the last calls to build()
Change-Id: If77ee5aa9483d3ca03c52812f31665dee6468e99
This commit is contained in:
parent
d42b0238f9
commit
5b0643f50d
2 changed files with 10 additions and 13 deletions
|
@ -1768,9 +1768,8 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar
|
||||||
|
|
||||||
final CharSequence typedWord = mWordComposer.getTypedWord();
|
final CharSequence typedWord = mWordComposer.getTypedWord();
|
||||||
// getSuggestedWordBuilder handles gracefully a null value of prevWord
|
// getSuggestedWordBuilder handles gracefully a null value of prevWord
|
||||||
final SuggestedWords.Builder builder = mSuggest.getSuggestedWordBuilder(mWordComposer,
|
final SuggestedWords suggestedWords = mSuggest.getSuggestedWords(mWordComposer,
|
||||||
prevWord, mKeyboardSwitcher.getKeyboard().getProximityInfo(), mCorrectionMode);
|
prevWord, mKeyboardSwitcher.getKeyboard().getProximityInfo(), mCorrectionMode);
|
||||||
final SuggestedWords suggestions = builder.build();
|
|
||||||
|
|
||||||
// Basically, we update the suggestion strip only when suggestion count > 1. However,
|
// Basically, we update the suggestion strip only when suggestion count > 1. However,
|
||||||
// there is an exception: We update the suggestion strip whenever typed word's length
|
// there is an exception: We update the suggestion strip whenever typed word's length
|
||||||
|
@ -1778,10 +1777,10 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar
|
||||||
// in most cases, suggestion count is 1 when typed word's length is 1, but we do always
|
// in most cases, suggestion count is 1 when typed word's length is 1, but we do always
|
||||||
// need to clear the previous state when the user starts typing a word (i.e. typed word's
|
// need to clear the previous state when the user starts typing a word (i.e. typed word's
|
||||||
// length == 1).
|
// length == 1).
|
||||||
if (suggestions.size() > 1 || typedWord.length() == 1
|
if (suggestedWords.size() > 1 || typedWord.length() == 1
|
||||||
|| !suggestions.mAllowsToBeAutoCorrected
|
|| !suggestedWords.mAllowsToBeAutoCorrected
|
||||||
|| mSuggestionsView.isShowingAddToDictionaryHint()) {
|
|| mSuggestionsView.isShowingAddToDictionaryHint()) {
|
||||||
showSuggestions(suggestions, typedWord);
|
showSuggestions(suggestedWords, typedWord);
|
||||||
} else {
|
} else {
|
||||||
SuggestedWords previousSuggestions = mSuggestionsView.getSuggestions();
|
SuggestedWords previousSuggestions = mSuggestionsView.getSuggestions();
|
||||||
if (previousSuggestions == mSettingsValues.mSuggestPuncList) {
|
if (previousSuggestions == mSettingsValues.mSuggestPuncList) {
|
||||||
|
@ -1982,7 +1981,7 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar
|
||||||
final CharSequence prevWord = EditingUtils.getThisWord(getCurrentInputConnection(),
|
final CharSequence prevWord = EditingUtils.getThisWord(getCurrentInputConnection(),
|
||||||
mSettingsValues.mWordSeparators);
|
mSettingsValues.mWordSeparators);
|
||||||
if (!TextUtils.isEmpty(prevWord)) {
|
if (!TextUtils.isEmpty(prevWord)) {
|
||||||
suggestedWords = mSuggest.getBigramPredictionWordBuilder(prevWord).build();
|
suggestedWords = mSuggest.getBigramPredictions(prevWord);
|
||||||
} else {
|
} else {
|
||||||
suggestedWords = null;
|
suggestedWords = null;
|
||||||
}
|
}
|
||||||
|
|
|
@ -239,7 +239,7 @@ public class Suggest implements Dictionary.WordCallback {
|
||||||
}
|
}
|
||||||
|
|
||||||
private static final WordComposer sEmptyWordComposer = new WordComposer();
|
private static final WordComposer sEmptyWordComposer = new WordComposer();
|
||||||
public SuggestedWords.Builder getBigramPredictionWordBuilder(CharSequence prevWordForBigram) {
|
public SuggestedWords getBigramPredictions(CharSequence prevWordForBigram) {
|
||||||
LatinImeLogger.onStartSuggestion(prevWordForBigram);
|
LatinImeLogger.onStartSuggestion(prevWordForBigram);
|
||||||
mIsFirstCharCapitalized = false;
|
mIsFirstCharCapitalized = false;
|
||||||
mIsAllUpperCase = false;
|
mIsAllUpperCase = false;
|
||||||
|
@ -275,11 +275,11 @@ public class Suggest implements Dictionary.WordCallback {
|
||||||
false /* hasMinimalSuggestion */,
|
false /* hasMinimalSuggestion */,
|
||||||
false /* allowsToBeAutoCorrected */,
|
false /* allowsToBeAutoCorrected */,
|
||||||
false /* isPunctuationSuggestions */,
|
false /* isPunctuationSuggestions */,
|
||||||
false /* shouldBlockAutoCorrectionBySafetyNet */);
|
false /* shouldBlockAutoCorrectionBySafetyNet */).build();
|
||||||
}
|
}
|
||||||
|
|
||||||
// TODO: cleanup dictionaries looking up and suggestions building with SuggestedWords.Builder
|
// TODO: cleanup dictionaries looking up and suggestions building with SuggestedWords.Builder
|
||||||
public SuggestedWords.Builder getSuggestedWordBuilder(
|
public SuggestedWords getSuggestedWords(
|
||||||
final WordComposer wordComposer, CharSequence prevWordForBigram,
|
final WordComposer wordComposer, CharSequence prevWordForBigram,
|
||||||
final ProximityInfo proximityInfo, final int correctionMode) {
|
final ProximityInfo proximityInfo, final int correctionMode) {
|
||||||
LatinImeLogger.onStartSuggestion(prevWordForBigram);
|
LatinImeLogger.onStartSuggestion(prevWordForBigram);
|
||||||
|
@ -393,7 +393,6 @@ public class Suggest implements Dictionary.WordCallback {
|
||||||
mSuggestions.add(0, typedWord);
|
mSuggestions.add(0, typedWord);
|
||||||
StringUtils.removeDupes(mSuggestions);
|
StringUtils.removeDupes(mSuggestions);
|
||||||
|
|
||||||
final SuggestedWords.Builder builder;
|
|
||||||
final ArrayList<SuggestedWords.SuggestedWordInfo> scoreInfoList;
|
final ArrayList<SuggestedWords.SuggestedWordInfo> scoreInfoList;
|
||||||
if (DBG) {
|
if (DBG) {
|
||||||
// TODO: this doesn't take into account the fact that removing dupes from mSuggestions
|
// TODO: this doesn't take into account the fact that removing dupes from mSuggestions
|
||||||
|
@ -446,13 +445,12 @@ public class Suggest implements Dictionary.WordCallback {
|
||||||
} else {
|
} else {
|
||||||
shouldBlockAutoCorrectionBySatefyNet = false;
|
shouldBlockAutoCorrectionBySatefyNet = false;
|
||||||
}
|
}
|
||||||
builder = new SuggestedWords.Builder(scoreInfoList,
|
return new SuggestedWords.Builder(scoreInfoList,
|
||||||
!allowsToBeAutoCorrected /* typedWordValid */,
|
!allowsToBeAutoCorrected /* typedWordValid */,
|
||||||
autoCorrectionAvailable /* hasMinimalSuggestion */,
|
autoCorrectionAvailable /* hasMinimalSuggestion */,
|
||||||
allowsToBeAutoCorrected /* allowsToBeAutoCorrected */,
|
allowsToBeAutoCorrected /* allowsToBeAutoCorrected */,
|
||||||
false /* isPunctuationSuggestions */,
|
false /* isPunctuationSuggestions */,
|
||||||
shouldBlockAutoCorrectionBySatefyNet);
|
shouldBlockAutoCorrectionBySatefyNet).build();
|
||||||
return builder;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
Loading…
Reference in a new issue