aboutsummaryrefslogtreecommitdiffstats
path: root/java/src
diff options
context:
space:
mode:
authorJean Chalard <jchalard@google.com>2012-06-27 18:28:35 +0900
committerJean Chalard <jchalard@google.com>2012-06-27 18:55:43 +0900
commit3ecb2747b3b46991a0fb8e1573d689611ecbd1cc (patch)
treed454ec6c45ae625fb40f5e06a31eaf8c443e0dd6 /java/src
parent3705ef407b654e818d4ec8854f08495bca4688d9 (diff)
downloadlatinime-3ecb2747b3b46991a0fb8e1573d689611ecbd1cc.tar.gz
latinime-3ecb2747b3b46991a0fb8e1573d689611ecbd1cc.tar.xz
latinime-3ecb2747b3b46991a0fb8e1573d689611ecbd1cc.zip
Optimization.
It's useless to do this for all suggestions including those that will be ousted from the list. Change-Id: I7bd63d783e21984a269e4b1ae17e9b9d8c0859e3
Diffstat (limited to 'java/src')
-rw-r--r--java/src/com/android/inputmethod/latin/Suggest.java18
1 files changed, 11 insertions, 7 deletions
diff --git a/java/src/com/android/inputmethod/latin/Suggest.java b/java/src/com/android/inputmethod/latin/Suggest.java
index 389d4e215..de05ed60e 100644
--- a/java/src/com/android/inputmethod/latin/Suggest.java
+++ b/java/src/com/android/inputmethod/latin/Suggest.java
@@ -250,6 +250,15 @@ public class Suggest {
}
}
+ for (int i = 0; i < suggestionsContainer.size(); ++i) {
+ final SuggestedWordInfo wordInfo = suggestionsContainer.get(i);
+ final SuggestedWordInfo transformedWordInfo = getTransformedSuggestedWordInfo(wordInfo,
+ mLocale, mIsAllUpperCase, mIsFirstCharCapitalized, mTrailingSingleQuotesCount);
+ suggestionsContainer.set(i, transformedWordInfo);
+ LatinImeLogger.onAddSuggestedWord(transformedWordInfo.mWord.toString(),
+ transformedWordInfo.mSourceDict);
+ }
+
final CharSequence whitelistedWord = capitalizeWord(mIsAllUpperCase,
mIsFirstCharCapitalized, mWhiteListDictionary.getWhitelistedWord(consideredWord));
@@ -370,7 +379,7 @@ public class Suggest {
private static final SuggestedWordInfoComparator sSuggestedWordInfoComparator =
new SuggestedWordInfoComparator();
- public void addWord(final SuggestedWordInfo wordInfo,
+ private static void addWord(final SuggestedWordInfo wordInfo,
final ArrayList<SuggestedWordInfo> suggestions) {
final int index =
Collections.binarySearch(suggestions, wordInfo, sSuggestedWordInfoComparator);
@@ -378,15 +387,10 @@ public class Suggest {
// it returns -insertionPoint - 1. We want the insertion point, so:
final int pos = index >= 0 ? index : -index - 1;
if (pos >= MAX_SUGGESTIONS) return;
-
- final SuggestedWordInfo transformedWordInfo = getTransformedSuggestedWordInfo(wordInfo,
- mLocale, mIsAllUpperCase, mIsFirstCharCapitalized, mTrailingSingleQuotesCount);
- suggestions.add(pos, transformedWordInfo);
+ suggestions.add(pos, wordInfo);
if (suggestions.size() > MAX_SUGGESTIONS) {
suggestions.remove(MAX_SUGGESTIONS);
}
- LatinImeLogger.onAddSuggestedWord(transformedWordInfo.mWord.toString(),
- transformedWordInfo.mSourceDict);
}
private static SuggestedWordInfo getTransformedSuggestedWordInfo(