diff options
author | 2012-06-25 23:31:39 -0700 | |
---|---|---|
committer | 2012-06-25 23:31:39 -0700 | |
commit | fac8a16c6f45cf1e5b2cff3c75bd390430929cf3 (patch) | |
tree | cf02bbf543af94ed47af2428e67d9b17d87a19a5 /java/src/com/android/inputmethod/latin/ExpandableDictionary.java | |
parent | 3ec249c6d13c1afb290e1c1a81ef54588bf4369e (diff) | |
parent | d7b9e8f503cd0f4616506ed891efd468dfdbef0e (diff) | |
download | latinime-fac8a16c6f45cf1e5b2cff3c75bd390430929cf3.tar.gz latinime-fac8a16c6f45cf1e5b2cff3c75bd390430929cf3.tar.xz latinime-fac8a16c6f45cf1e5b2cff3c75bd390430929cf3.zip |
Merge "Remove another dependency to WordCallback (A4)"
Diffstat (limited to 'java/src/com/android/inputmethod/latin/ExpandableDictionary.java')
-rw-r--r-- | java/src/com/android/inputmethod/latin/ExpandableDictionary.java | 19 |
1 files changed, 11 insertions, 8 deletions
diff --git a/java/src/com/android/inputmethod/latin/ExpandableDictionary.java b/java/src/com/android/inputmethod/latin/ExpandableDictionary.java index c989614fb..d1eec6b7c 100644 --- a/java/src/com/android/inputmethod/latin/ExpandableDictionary.java +++ b/java/src/com/android/inputmethod/latin/ExpandableDictionary.java @@ -600,13 +600,13 @@ public class ExpandableDictionary extends Dictionary { } private void runBigramReverseLookUp(final CharSequence previousWord, - final WordCallback callback) { + final ArrayList<SuggestedWordInfo> suggestions) { // Search for the lowercase version of the word only, because that's where bigrams // store their sons. Node prevWord = searchNode(mRoots, previousWord.toString().toLowerCase(), 0, previousWord.length()); if (prevWord != null && prevWord.mNGrams != null) { - reverseLookUp(prevWord.mNGrams, callback); + reverseLookUp(prevWord.mNGrams, suggestions); } } @@ -614,7 +614,9 @@ public class ExpandableDictionary extends Dictionary { public void getBigrams(final WordComposer codes, final CharSequence previousWord, final WordCallback callback) { if (!reloadDictionaryIfRequired()) { - runBigramReverseLookUp(previousWord, callback); + final ArrayList<SuggestedWordInfo> suggestions = new ArrayList<SuggestedWordInfo>(); + runBigramReverseLookUp(previousWord, suggestions); + Utils.addAllSuggestions(mDicTypeId, Dictionary.BIGRAM, suggestions, callback); } } @@ -642,11 +644,12 @@ public class ExpandableDictionary extends Dictionary { /** * reverseLookUp retrieves the full word given a list of terminal nodes and adds those words - * through callback. + * to the suggestions list passed as an argument. * @param terminalNodes list of terminal nodes we want to add + * @param suggestions the suggestion collection to add the word to */ private void reverseLookUp(LinkedList<NextWord> terminalNodes, - final WordCallback callback) { + final ArrayList<SuggestedWordInfo> suggestions) { Node node; int freq; for (NextWord nextWord : terminalNodes) { @@ -660,9 +663,9 @@ public class ExpandableDictionary extends Dictionary { } while (node != null); if (freq >= 0) { - callback.addWord(mLookedUpString, null, index, - BinaryDictionary.MAX_WORD_LENGTH - index, freq, mDicTypeId, - Dictionary.BIGRAM); + suggestions.add(new SuggestedWordInfo(new String(mLookedUpString, index, + BinaryDictionary.MAX_WORD_LENGTH - index), + freq, SuggestedWordInfo.KIND_CORRECTION)); } } } |