diff options
author | 2012-05-29 15:58:13 +0900 | |
---|---|---|
committer | 2012-05-29 17:21:59 +0900 | |
commit | 2f854e170c9fde47cae804145f90d164cdb5ceb8 (patch) | |
tree | b2229149083474bfadfb5d086e66055f9130a133 /java/src/com/android/inputmethod | |
parent | bd40b94f965b1602bea35fd92f2f05d524f9ab3b (diff) | |
download | latinime-2f854e170c9fde47cae804145f90d164cdb5ceb8.tar.gz latinime-2f854e170c9fde47cae804145f90d164cdb5ceb8.tar.xz latinime-2f854e170c9fde47cae804145f90d164cdb5ceb8.zip |
Add a JNI to get the frequency
Bug: 4192129
Change-Id: I3f220f5a10114d4eb23956148076cf76220bda0f
Diffstat (limited to 'java/src/com/android/inputmethod')
-rw-r--r-- | java/src/com/android/inputmethod/latin/BinaryDictionary.java | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/java/src/com/android/inputmethod/latin/BinaryDictionary.java b/java/src/com/android/inputmethod/latin/BinaryDictionary.java index e18aee6ff..cb1069cfb 100644 --- a/java/src/com/android/inputmethod/latin/BinaryDictionary.java +++ b/java/src/com/android/inputmethod/latin/BinaryDictionary.java @@ -84,7 +84,7 @@ public class BinaryDictionary extends Dictionary { private native long openNative(String sourceDir, long dictOffset, long dictSize, int typedLetterMultiplier, int fullWordMultiplier, int maxWordLength, int maxWords); private native void closeNative(long dict); - private native boolean isValidWordNative(long dict, int[] word, int wordLength); + private native int getFrequencyNative(long dict, int[] word, int wordLength); private native boolean isValidBigramNative(long dict, int[] word1, int[] word2); private native int getSuggestionsNative(long dict, long proximityInfo, int[] xCoordinates, int[] yCoordinates, int[] inputCodes, int codesSize, int[] prevWordForBigrams, @@ -203,7 +203,8 @@ public class BinaryDictionary extends Dictionary { public boolean isValidWord(CharSequence word) { if (word == null) return false; int[] chars = StringUtils.toCodePointArray(word.toString()); - return isValidWordNative(mNativeDict, chars, chars.length); + final int freq = getFrequencyNative(mNativeDict, chars, chars.length); + return freq >= 0; } // TODO: Add a batch process version (isValidBigramMultiple?) to avoid excessive numbers of jni |