aboutsummaryrefslogtreecommitdiffstats
path: root/java/src/com/android/inputmethod/latin/ExpandableBinaryDictionary.java
diff options
context:
space:
mode:
authorKeisuke Kuroyanagi <ksk@google.com>2014-06-20 14:46:13 +0900
committerKeisuke Kuroyanagi <ksk@google.com>2014-06-20 14:46:13 +0900
commit0fbca1ac2388db81a443c1705732130564c3f714 (patch)
tree3ed5ba0907866d7d03d7d2c1846bd90f321758f3 /java/src/com/android/inputmethod/latin/ExpandableBinaryDictionary.java
parent4c45fff2404b274cf6345221412671a81f0dba46 (diff)
downloadlatinime-0fbca1ac2388db81a443c1705732130564c3f714.tar.gz
latinime-0fbca1ac2388db81a443c1705732130564c3f714.tar.xz
latinime-0fbca1ac2388db81a443c1705732130564c3f714.zip
Remove word from personalized dicts when it's canceled.
Bug: 15555552 Bug: 15552347 Change-Id: Ia4d8c79d079e3ce233d46d4bbad4fff1be5c5c39
Diffstat (limited to 'java/src/com/android/inputmethod/latin/ExpandableBinaryDictionary.java')
-rw-r--r--java/src/com/android/inputmethod/latin/ExpandableBinaryDictionary.java21
1 files changed, 21 insertions, 0 deletions
diff --git a/java/src/com/android/inputmethod/latin/ExpandableBinaryDictionary.java b/java/src/com/android/inputmethod/latin/ExpandableBinaryDictionary.java
index b1966bffc..918b610e5 100644
--- a/java/src/com/android/inputmethod/latin/ExpandableBinaryDictionary.java
+++ b/java/src/com/android/inputmethod/latin/ExpandableBinaryDictionary.java
@@ -311,6 +311,27 @@ abstract public class ExpandableBinaryDictionary extends Dictionary {
}
/**
+ * Dynamically remove the unigram entry from the dictionary.
+ */
+ public void removeUnigramEntryDynamically(final String word) {
+ reloadDictionaryIfRequired();
+ asyncExecuteTaskWithWriteLock(new Runnable() {
+ @Override
+ public void run() {
+ if (mBinaryDictionary == null) {
+ return;
+ }
+ runGCIfRequiredLocked(true /* mindsBlockByGC */);
+ if (!mBinaryDictionary.removeUnigramEntry(word)) {
+ if (DEBUG) {
+ Log.i(TAG, "Cannot remove unigram entry: " + word);
+ }
+ }
+ }
+ });
+ }
+
+ /**
* Adds n-gram information of a word to the dictionary. May overwrite an existing entry.
*/
public void addNgramEntry(final PrevWordsInfo prevWordsInfo, final String word,