Loading java/src/com/android/inputmethod/latin/BinaryDictionary.java +0 −9 Original line number Diff line number Diff line Loading @@ -270,18 +270,11 @@ public final class BinaryDictionary extends Dictionary { return getBigramProbabilityNative(mNativeDict, codePoints0, codePoints1); } private void runGCIfRequired() { if (needsToRunGC(true /* mindsBlockByGC */)) { flushWithGC(); } } // Add a unigram entry to binary dictionary in native code. public void addUnigramWord(final String word, final int probability) { if (TextUtils.isEmpty(word)) { return; } runGCIfRequired(); final int[] codePoints = StringUtils.toCodePointArray(word); addUnigramWordNative(mNativeDict, codePoints, probability); } Loading @@ -291,7 +284,6 @@ public final class BinaryDictionary extends Dictionary { if (TextUtils.isEmpty(word0) || TextUtils.isEmpty(word1)) { return; } runGCIfRequired(); final int[] codePoints0 = StringUtils.toCodePointArray(word0); final int[] codePoints1 = StringUtils.toCodePointArray(word1); addBigramWordsNative(mNativeDict, codePoints0, codePoints1, probability); Loading @@ -302,7 +294,6 @@ public final class BinaryDictionary extends Dictionary { if (TextUtils.isEmpty(word0) || TextUtils.isEmpty(word1)) { return; } runGCIfRequired(); final int[] codePoints0 = StringUtils.toCodePointArray(word0); final int[] codePoints1 = StringUtils.toCodePointArray(word1); removeBigramWordsNative(mNativeDict, codePoints0, codePoints1); Loading java/src/com/android/inputmethod/latin/ExpandableBinaryDictionary.java +21 −3 Original line number Diff line number Diff line Loading @@ -273,6 +273,24 @@ abstract public class ExpandableBinaryDictionary extends Dictionary { lastModifiedTime); } private void runGCIfRequired() { if (!ENABLE_BINARY_DICTIONARY_DYNAMIC_UPDATE) return; if (mBinaryDictionary.needsToRunGC(true /* mindsBlockByGC */)) { if (setIsRegeneratingIfNotRegenerating()) { getExecutor(mFilename).execute(new Runnable() { @Override public void run() { try { mBinaryDictionary.flushWithGC(); } finally { mFilenameDictionaryUpdateController.mIsRegenerating.set(false); } } }); } } } /** * Dynamically adds a word unigram to the dictionary. May overwrite an existing entry. */ Loading @@ -282,7 +300,7 @@ abstract public class ExpandableBinaryDictionary extends Dictionary { Log.w(TAG, "addWordDynamically is called for non-updatable dictionary: " + mFilename); return; } runGCIfRequired(); getExecutor(mFilename).execute(new Runnable() { @Override public void run() { Loading @@ -306,7 +324,7 @@ abstract public class ExpandableBinaryDictionary extends Dictionary { + mFilename); return; } runGCIfRequired(); getExecutor(mFilename).execute(new Runnable() { @Override public void run() { Loading @@ -330,7 +348,7 @@ abstract public class ExpandableBinaryDictionary extends Dictionary { + mFilename); return; } runGCIfRequired(); getExecutor(mFilename).execute(new Runnable() { @Override public void run() { Loading Loading
java/src/com/android/inputmethod/latin/BinaryDictionary.java +0 −9 Original line number Diff line number Diff line Loading @@ -270,18 +270,11 @@ public final class BinaryDictionary extends Dictionary { return getBigramProbabilityNative(mNativeDict, codePoints0, codePoints1); } private void runGCIfRequired() { if (needsToRunGC(true /* mindsBlockByGC */)) { flushWithGC(); } } // Add a unigram entry to binary dictionary in native code. public void addUnigramWord(final String word, final int probability) { if (TextUtils.isEmpty(word)) { return; } runGCIfRequired(); final int[] codePoints = StringUtils.toCodePointArray(word); addUnigramWordNative(mNativeDict, codePoints, probability); } Loading @@ -291,7 +284,6 @@ public final class BinaryDictionary extends Dictionary { if (TextUtils.isEmpty(word0) || TextUtils.isEmpty(word1)) { return; } runGCIfRequired(); final int[] codePoints0 = StringUtils.toCodePointArray(word0); final int[] codePoints1 = StringUtils.toCodePointArray(word1); addBigramWordsNative(mNativeDict, codePoints0, codePoints1, probability); Loading @@ -302,7 +294,6 @@ public final class BinaryDictionary extends Dictionary { if (TextUtils.isEmpty(word0) || TextUtils.isEmpty(word1)) { return; } runGCIfRequired(); final int[] codePoints0 = StringUtils.toCodePointArray(word0); final int[] codePoints1 = StringUtils.toCodePointArray(word1); removeBigramWordsNative(mNativeDict, codePoints0, codePoints1); Loading
java/src/com/android/inputmethod/latin/ExpandableBinaryDictionary.java +21 −3 Original line number Diff line number Diff line Loading @@ -273,6 +273,24 @@ abstract public class ExpandableBinaryDictionary extends Dictionary { lastModifiedTime); } private void runGCIfRequired() { if (!ENABLE_BINARY_DICTIONARY_DYNAMIC_UPDATE) return; if (mBinaryDictionary.needsToRunGC(true /* mindsBlockByGC */)) { if (setIsRegeneratingIfNotRegenerating()) { getExecutor(mFilename).execute(new Runnable() { @Override public void run() { try { mBinaryDictionary.flushWithGC(); } finally { mFilenameDictionaryUpdateController.mIsRegenerating.set(false); } } }); } } } /** * Dynamically adds a word unigram to the dictionary. May overwrite an existing entry. */ Loading @@ -282,7 +300,7 @@ abstract public class ExpandableBinaryDictionary extends Dictionary { Log.w(TAG, "addWordDynamically is called for non-updatable dictionary: " + mFilename); return; } runGCIfRequired(); getExecutor(mFilename).execute(new Runnable() { @Override public void run() { Loading @@ -306,7 +324,7 @@ abstract public class ExpandableBinaryDictionary extends Dictionary { + mFilename); return; } runGCIfRequired(); getExecutor(mFilename).execute(new Runnable() { @Override public void run() { Loading @@ -330,7 +348,7 @@ abstract public class ExpandableBinaryDictionary extends Dictionary { + mFilename); return; } runGCIfRequired(); getExecutor(mFilename).execute(new Runnable() { @Override public void run() { Loading