Merge "[CS3] Move transformation of words to earlier"

This commit is contained in:
Jean Chalard 2014-06-24 03:50:40 +00:00 committed by Android (Google) Code Review
commit 132bdd079c

View file

@ -110,6 +110,21 @@ public final class Suggest {
final boolean isOnlyFirstCharCapitalized = final boolean isOnlyFirstCharCapitalized =
wordComposer.isOrWillBeOnlyFirstCharCapitalized(); wordComposer.isOrWillBeOnlyFirstCharCapitalized();
final ArrayList<SuggestedWordInfo> suggestionsContainer =
new ArrayList<>(suggestionResults);
final int suggestionsCount = suggestionsContainer.size();
if (isOnlyFirstCharCapitalized || shouldMakeSuggestionsAllUpperCase
|| 0 != trailingSingleQuotesCount) {
for (int i = 0; i < suggestionsCount; ++i) {
final SuggestedWordInfo wordInfo = suggestionsContainer.get(i);
final SuggestedWordInfo transformedWordInfo = getTransformedSuggestedWordInfo(
wordInfo, suggestionResults.mLocale, shouldMakeSuggestionsAllUpperCase,
isOnlyFirstCharCapitalized, trailingSingleQuotesCount);
suggestionsContainer.set(i, transformedWordInfo);
}
}
SuggestedWordInfo.removeDups(typedWord, suggestionsContainer);
// If resumed, then we don't want to upcase everything: resuming on a fully-capitalized // If resumed, then we don't want to upcase everything: resuming on a fully-capitalized
// words is rarely done to switch to another fully-capitalized word, but usually to a // words is rarely done to switch to another fully-capitalized word, but usually to a
// normal, non-capitalized suggestion. // normal, non-capitalized suggestion.
@ -167,21 +182,6 @@ public final class Suggest {
suggestionResults.first(), consideredWord, mAutoCorrectionThreshold); suggestionResults.first(), consideredWord, mAutoCorrectionThreshold);
} }
final ArrayList<SuggestedWordInfo> suggestionsContainer =
new ArrayList<>(suggestionResults);
final int suggestionsCount = suggestionsContainer.size();
if (isOnlyFirstCharCapitalized || shouldMakeSuggestionsAllUpperCase
|| 0 != trailingSingleQuotesCount) {
for (int i = 0; i < suggestionsCount; ++i) {
final SuggestedWordInfo wordInfo = suggestionsContainer.get(i);
final SuggestedWordInfo transformedWordInfo = getTransformedSuggestedWordInfo(
wordInfo, suggestionResults.mLocale, shouldMakeSuggestionsAllUpperCase,
isOnlyFirstCharCapitalized, trailingSingleQuotesCount);
suggestionsContainer.set(i, transformedWordInfo);
}
}
SuggestedWordInfo.removeDups(typedWord, suggestionsContainer);
if (!TextUtils.isEmpty(typedWord)) { if (!TextUtils.isEmpty(typedWord)) {
suggestionsContainer.add(0, new SuggestedWordInfo(typedWord, suggestionsContainer.add(0, new SuggestedWordInfo(typedWord,
SuggestedWordInfo.MAX_SCORE, SuggestedWordInfo.KIND_TYPED, SuggestedWordInfo.MAX_SCORE, SuggestedWordInfo.KIND_TYPED,