Simplification (A116)

Change-Id: I97cf92a7b0dabc251dd241b24978ea00d1e5f047
main
Jean Chalard 2012-07-11 18:43:26 +09:00
parent f5b55cb70c
commit 24a63b5537
2 changed files with 8 additions and 9 deletions

View File

@ -92,7 +92,8 @@ public class AutoCorrection {
public static boolean suggestionExceedsAutoCorrectionThreshold(SuggestedWordInfo suggestion, public static boolean suggestionExceedsAutoCorrectionThreshold(SuggestedWordInfo suggestion,
CharSequence consideredWord, float autoCorrectionThreshold) { CharSequence consideredWord, float autoCorrectionThreshold) {
if (null != suggestion) { if (null != suggestion) {
//final int autoCorrectionSuggestionScore = sortedScores[0]; // Shortlist a whitelisted word
if (suggestion.mKind == SuggestedWordInfo.KIND_WHITELIST) return true;
final int autoCorrectionSuggestionScore = suggestion.mScore; final int autoCorrectionSuggestionScore = suggestion.mScore;
// TODO: when the normalized score of the first suggestion is nearly equals to // TODO: when the normalized score of the first suggestion is nearly equals to
// the normalized score of the second suggestion, behave less aggressive. // the normalized score of the second suggestion, behave less aggressive.

View File

@ -205,6 +205,12 @@ public class Suggest {
final CharSequence whitelistedWord = final CharSequence whitelistedWord =
mWhiteListDictionary.getWhitelistedWord(consideredWord); mWhiteListDictionary.getWhitelistedWord(consideredWord);
if (whitelistedWord != null) {
// MAX_SCORE ensures this will be considered strong enough to be auto-corrected
suggestionsSet.add(new SuggestedWordInfo(whitelistedWord,
SuggestedWordInfo.MAX_SCORE, SuggestedWordInfo.KIND_WHITELIST,
Dictionary.TYPE_WHITELIST));
}
final boolean hasAutoCorrection; final boolean hasAutoCorrection;
// TODO: using isCorrectionEnabled here is not very good. It's probably useless, because // TODO: using isCorrectionEnabled here is not very good. It's probably useless, because
@ -222,8 +228,6 @@ public class Suggest {
// would always auto-correct to "Will" which is unwanted. Hence, no main dict => no // would always auto-correct to "Will" which is unwanted. Hence, no main dict => no
// auto-correct. // auto-correct.
hasAutoCorrection = false; hasAutoCorrection = false;
} else if (null != whitelistedWord) {
hasAutoCorrection = true;
} else if (suggestionsSet.isEmpty()) { } else if (suggestionsSet.isEmpty()) {
hasAutoCorrection = false; hasAutoCorrection = false;
} else if (AutoCorrection.suggestionExceedsAutoCorrectionThreshold(suggestionsSet.first(), } else if (AutoCorrection.suggestionExceedsAutoCorrectionThreshold(suggestionsSet.first(),
@ -233,12 +237,6 @@ public class Suggest {
hasAutoCorrection = false; hasAutoCorrection = false;
} }
if (whitelistedWord != null) {
suggestionsSet.add(new SuggestedWordInfo(whitelistedWord,
SuggestedWordInfo.MAX_SCORE, SuggestedWordInfo.KIND_WHITELIST,
Dictionary.TYPE_WHITELIST));
}
final ArrayList<SuggestedWordInfo> suggestionsContainer = final ArrayList<SuggestedWordInfo> suggestionsContainer =
new ArrayList<SuggestedWordInfo>(suggestionsSet); new ArrayList<SuggestedWordInfo>(suggestionsSet);
final int suggestionsCount = suggestionsContainer.size(); final int suggestionsCount = suggestionsContainer.size();