aboutsummaryrefslogtreecommitdiffstats
path: root/java/src/com/android/inputmethod/latin/Suggest.java
diff options
context:
space:
mode:
authorJean Chalard <jchalard@google.com>2012-08-10 14:31:12 +0900
committerJean Chalard <jchalard@google.com>2012-08-10 19:02:15 +0900
commitcaed149b67be378adf49f3db16a2cfbb8dd15d84 (patch)
treec787a1133bfc5a660f15ff9ff6e25f58e19ef2af /java/src/com/android/inputmethod/latin/Suggest.java
parentdc2fb6bc6d0c071b8023d62291becf2e2d59535c (diff)
downloadlatinime-caed149b67be378adf49f3db16a2cfbb8dd15d84.tar.gz
latinime-caed149b67be378adf49f3db16a2cfbb8dd15d84.tar.xz
latinime-caed149b67be378adf49f3db16a2cfbb8dd15d84.zip
Optimization & Simplification
It's useless to do the whitelist lookup twice. Also, putting this test out of this method will allow whitelist entries to come from other sources. Bug: 6906525 Change-Id: I4afe678cae6556d16642d155ce770fbf4e61ad49
Diffstat (limited to 'java/src/com/android/inputmethod/latin/Suggest.java')
-rw-r--r--java/src/com/android/inputmethod/latin/Suggest.java18
1 files changed, 10 insertions, 8 deletions
diff --git a/java/src/com/android/inputmethod/latin/Suggest.java b/java/src/com/android/inputmethod/latin/Suggest.java
index a65d36adb..ce27ef4af 100644
--- a/java/src/com/android/inputmethod/latin/Suggest.java
+++ b/java/src/com/android/inputmethod/latin/Suggest.java
@@ -208,14 +208,6 @@ public class Suggest {
wordComposerForLookup, prevWordForBigram, proximityInfo));
}
- // TODO: Change this scheme - a boolean is not enough. A whitelisted word may be "valid"
- // but still autocorrected from - in the case the whitelist only capitalizes the word.
- // The whitelist should be case-insensitive, so it's not possible to be consistent with
- // a boolean flag. Right now this is handled with a slight hack in
- // WhitelistDictionary#shouldForciblyAutoCorrectFrom.
- final boolean allowsToBeAutoCorrected = AutoCorrection.isWhitelistedOrNotAWord(
- mDictionaries, consideredWord, wordComposer.isFirstCharCapitalized());
-
final CharSequence whitelistedWord =
mWhiteListDictionary.getWhitelistedWord(consideredWord);
if (whitelistedWord != null) {
@@ -225,6 +217,16 @@ public class Suggest {
Dictionary.TYPE_WHITELIST));
}
+ // TODO: Change this scheme - a boolean is not enough. A whitelisted word may be "valid"
+ // but still autocorrected from - in the case the whitelist only capitalizes the word.
+ // The whitelist should be case-insensitive, so it's not possible to be consistent with
+ // a boolean flag. Right now this is handled with a slight hack in
+ // WhitelistDictionary#shouldForciblyAutoCorrectFrom.
+ final boolean allowsToBeAutoCorrected = (null != whitelistedWord
+ && !whitelistedWord.equals(consideredWord))
+ || AutoCorrection.isNotAWord(mDictionaries, consideredWord,
+ wordComposer.isFirstCharCapitalized());
+
final boolean hasAutoCorrection;
// TODO: using isCorrectionEnabled here is not very good. It's probably useless, because
// any attempt to do auto-correction is already shielded with a test for this flag; at the