aboutsummaryrefslogtreecommitdiffstats
path: root/java/src/com/android/inputmethod/latin/SuggestedWords.java
diff options
context:
space:
mode:
authorTadashi G. Takaoka <takaoka@google.com>2011-01-21 15:03:09 +0900
committerTadashi G. Takaoka <takaoka@google.com>2011-01-21 15:52:35 +0900
commitf3df63a93a8f623e2aca5895ee749bd297b58d12 (patch)
tree8750b29c7c19ad99d428be227b5a7cb811d54680 /java/src/com/android/inputmethod/latin/SuggestedWords.java
parentdbc61779858dbb209059748e2c4eb0e6b228090c (diff)
downloadlatinime-f3df63a93a8f623e2aca5895ee749bd297b58d12.tar.gz
latinime-f3df63a93a8f623e2aca5895ee749bd297b58d12.tar.xz
latinime-f3df63a93a8f623e2aca5895ee749bd297b58d12.zip
Update suggestions if user typed word is found in dictionary
This change aslo eliminates duplicate suggestion from past suggestions. And call setTypedWordVaild to past suggestions. Bug: 3367722 Change-Id: I7ffaa2f7e4e30b3951b6c2df002d269671c9d654
Diffstat (limited to 'java/src/com/android/inputmethod/latin/SuggestedWords.java')
-rw-r--r--java/src/com/android/inputmethod/latin/SuggestedWords.java13
1 files changed, 11 insertions, 2 deletions
diff --git a/java/src/com/android/inputmethod/latin/SuggestedWords.java b/java/src/com/android/inputmethod/latin/SuggestedWords.java
index 4407e5b31..f774ce3a5 100644
--- a/java/src/com/android/inputmethod/latin/SuggestedWords.java
+++ b/java/src/com/android/inputmethod/latin/SuggestedWords.java
@@ -20,6 +20,7 @@ import android.view.inputmethod.CompletionInfo;
import java.util.ArrayList;
import java.util.Collections;
+import java.util.HashSet;
import java.util.List;
public class SuggestedWords {
@@ -128,10 +129,18 @@ public class SuggestedWords {
SuggestedWords previousSuggestions) {
mWords.clear();
mSuggestedWordInfoList.clear();
+ final HashSet<String> alreadySeen = new HashSet<String>();
addWord(typedWord, null, false);
+ alreadySeen.add(typedWord.toString());
final int previousSize = previousSuggestions.size();
- for (int pos = 1; pos < previousSize; pos++)
- addWord(previousSuggestions.getWord(pos), null, true);
+ for (int pos = 1; pos < previousSize; pos++) {
+ final String prevWord = previousSuggestions.getWord(pos).toString();
+ // Filter out duplicate suggestion.
+ if (!alreadySeen.contains(prevWord)) {
+ addWord(prevWord, null, true);
+ alreadySeen.add(prevWord);
+ }
+ }
mIsCompletions = false;
mTypedWordValid = false;
mHasMinimalSuggestion = false;