Loading java/src/com/android/inputmethod/latin/ExpandableDictionary.java +13 −12 Original line number Diff line number Diff line Loading @@ -28,17 +28,12 @@ import java.util.LinkedList; * be searched for suggestions and valid words. */ public class ExpandableDictionary extends Dictionary { /** * There is difference between what java and native code can handle. * It uses 32 because Java stack overflows when greater value is used. */ protected static final int MAX_WORD_LENGTH = 32; // Bigram frequency is a fixed point number with 1 meaning 1.2 and 255 meaning 1.8. protected static final int BIGRAM_MAX_FREQUENCY = 255; private Context mContext; private char[] mWordBuilder = new char[MAX_WORD_LENGTH]; private char[] mWordBuilder = new char[BinaryDictionary.MAX_WORD_LENGTH]; private int mDicTypeId; private int mMaxDepth; private int mInputLength; Loading Loading @@ -113,7 +108,7 @@ public class ExpandableDictionary extends Dictionary { public ExpandableDictionary(Context context, int dicTypeId) { mContext = context; clearDictionary(); mCodes = new int[MAX_WORD_LENGTH][]; mCodes = new int[BinaryDictionary.MAX_WORD_LENGTH][]; mDicTypeId = dicTypeId; } Loading Loading @@ -151,10 +146,13 @@ public class ExpandableDictionary extends Dictionary { } public int getMaxWordLength() { return MAX_WORD_LENGTH; return BinaryDictionary.MAX_WORD_LENGTH; } public void addWord(String word, int frequency) { if (word.length() >= BinaryDictionary.MAX_WORD_LENGTH) { return; } addWordRec(mRoots, word, 0, frequency, null); } Loading Loading @@ -201,6 +199,9 @@ public class ExpandableDictionary extends Dictionary { // Currently updating contacts, don't return any results. if (mUpdatingDictionary) return; } if (codes.size() >= BinaryDictionary.MAX_WORD_LENGTH) { return; } getWordsInner(codes, callback, proximityInfo); } Loading Loading @@ -488,7 +489,7 @@ public class ExpandableDictionary extends Dictionary { } // Local to reverseLookUp, but do not allocate each time. private final char[] mLookedUpString = new char[MAX_WORD_LENGTH]; private final char[] mLookedUpString = new char[BinaryDictionary.MAX_WORD_LENGTH]; /** * reverseLookUp retrieves the full word given a list of terminal nodes and adds those words Loading @@ -502,15 +503,15 @@ public class ExpandableDictionary extends Dictionary { for (NextWord nextWord : terminalNodes) { node = nextWord.mWord; freq = nextWord.getFrequency(); int index = MAX_WORD_LENGTH; int index = BinaryDictionary.MAX_WORD_LENGTH; do { --index; mLookedUpString[index] = node.mCode; node = node.mParent; } while (node != null); callback.addWord(mLookedUpString, index, MAX_WORD_LENGTH - index, freq, mDicTypeId, Dictionary.BIGRAM); callback.addWord(mLookedUpString, index, BinaryDictionary.MAX_WORD_LENGTH - index, freq, mDicTypeId, Dictionary.BIGRAM); } } Loading java/src/com/android/inputmethod/latin/UserHistoryDictionary.java +2 −2 Original line number Diff line number Diff line Loading @@ -247,8 +247,8 @@ public class UserHistoryDictionary extends ExpandableDictionary { // to recursive lookup if (null == word1) { super.addWord(word2, frequency); } else if (word1.length() < MAX_WORD_LENGTH && word2.length() < MAX_WORD_LENGTH) { } else if (word1.length() < BinaryDictionary.MAX_WORD_LENGTH && word2.length() < BinaryDictionary.MAX_WORD_LENGTH) { super.setBigram(word1, word2, frequency); } cursor.moveToNext(); Loading java/src/com/android/inputmethod/latin/WordComposer.java +5 −1 Original line number Diff line number Diff line Loading @@ -104,7 +104,11 @@ public class WordComposer { return size() > 0; } // TODO: make sure that the index should not exceed MAX_WORD_LENGTH public int getCodeAt(int index) { if (index >= BinaryDictionary.MAX_WORD_LENGTH) { return -1; } return mPrimaryKeyCodes[index]; } Loading Loading @@ -153,8 +157,8 @@ public class WordComposer { final int newIndex = size(); mTypedWord.appendCodePoint(primaryCode); refreshSize(); mPrimaryKeyCodes[newIndex] = codes[0]; if (newIndex < BinaryDictionary.MAX_WORD_LENGTH) { mPrimaryKeyCodes[newIndex] = codes[0]; mXCoordinates[newIndex] = keyX; mYCoordinates[newIndex] = keyY; } Loading Loading
java/src/com/android/inputmethod/latin/ExpandableDictionary.java +13 −12 Original line number Diff line number Diff line Loading @@ -28,17 +28,12 @@ import java.util.LinkedList; * be searched for suggestions and valid words. */ public class ExpandableDictionary extends Dictionary { /** * There is difference between what java and native code can handle. * It uses 32 because Java stack overflows when greater value is used. */ protected static final int MAX_WORD_LENGTH = 32; // Bigram frequency is a fixed point number with 1 meaning 1.2 and 255 meaning 1.8. protected static final int BIGRAM_MAX_FREQUENCY = 255; private Context mContext; private char[] mWordBuilder = new char[MAX_WORD_LENGTH]; private char[] mWordBuilder = new char[BinaryDictionary.MAX_WORD_LENGTH]; private int mDicTypeId; private int mMaxDepth; private int mInputLength; Loading Loading @@ -113,7 +108,7 @@ public class ExpandableDictionary extends Dictionary { public ExpandableDictionary(Context context, int dicTypeId) { mContext = context; clearDictionary(); mCodes = new int[MAX_WORD_LENGTH][]; mCodes = new int[BinaryDictionary.MAX_WORD_LENGTH][]; mDicTypeId = dicTypeId; } Loading Loading @@ -151,10 +146,13 @@ public class ExpandableDictionary extends Dictionary { } public int getMaxWordLength() { return MAX_WORD_LENGTH; return BinaryDictionary.MAX_WORD_LENGTH; } public void addWord(String word, int frequency) { if (word.length() >= BinaryDictionary.MAX_WORD_LENGTH) { return; } addWordRec(mRoots, word, 0, frequency, null); } Loading Loading @@ -201,6 +199,9 @@ public class ExpandableDictionary extends Dictionary { // Currently updating contacts, don't return any results. if (mUpdatingDictionary) return; } if (codes.size() >= BinaryDictionary.MAX_WORD_LENGTH) { return; } getWordsInner(codes, callback, proximityInfo); } Loading Loading @@ -488,7 +489,7 @@ public class ExpandableDictionary extends Dictionary { } // Local to reverseLookUp, but do not allocate each time. private final char[] mLookedUpString = new char[MAX_WORD_LENGTH]; private final char[] mLookedUpString = new char[BinaryDictionary.MAX_WORD_LENGTH]; /** * reverseLookUp retrieves the full word given a list of terminal nodes and adds those words Loading @@ -502,15 +503,15 @@ public class ExpandableDictionary extends Dictionary { for (NextWord nextWord : terminalNodes) { node = nextWord.mWord; freq = nextWord.getFrequency(); int index = MAX_WORD_LENGTH; int index = BinaryDictionary.MAX_WORD_LENGTH; do { --index; mLookedUpString[index] = node.mCode; node = node.mParent; } while (node != null); callback.addWord(mLookedUpString, index, MAX_WORD_LENGTH - index, freq, mDicTypeId, Dictionary.BIGRAM); callback.addWord(mLookedUpString, index, BinaryDictionary.MAX_WORD_LENGTH - index, freq, mDicTypeId, Dictionary.BIGRAM); } } Loading
java/src/com/android/inputmethod/latin/UserHistoryDictionary.java +2 −2 Original line number Diff line number Diff line Loading @@ -247,8 +247,8 @@ public class UserHistoryDictionary extends ExpandableDictionary { // to recursive lookup if (null == word1) { super.addWord(word2, frequency); } else if (word1.length() < MAX_WORD_LENGTH && word2.length() < MAX_WORD_LENGTH) { } else if (word1.length() < BinaryDictionary.MAX_WORD_LENGTH && word2.length() < BinaryDictionary.MAX_WORD_LENGTH) { super.setBigram(word1, word2, frequency); } cursor.moveToNext(); Loading
java/src/com/android/inputmethod/latin/WordComposer.java +5 −1 Original line number Diff line number Diff line Loading @@ -104,7 +104,11 @@ public class WordComposer { return size() > 0; } // TODO: make sure that the index should not exceed MAX_WORD_LENGTH public int getCodeAt(int index) { if (index >= BinaryDictionary.MAX_WORD_LENGTH) { return -1; } return mPrimaryKeyCodes[index]; } Loading Loading @@ -153,8 +157,8 @@ public class WordComposer { final int newIndex = size(); mTypedWord.appendCodePoint(primaryCode); refreshSize(); mPrimaryKeyCodes[newIndex] = codes[0]; if (newIndex < BinaryDictionary.MAX_WORD_LENGTH) { mPrimaryKeyCodes[newIndex] = codes[0]; mXCoordinates[newIndex] = keyX; mYCoordinates[newIndex] = keyY; } Loading