diff options
author | 2012-04-23 10:45:48 -0700 | |
---|---|---|
committer | 2012-05-17 15:12:00 -0700 | |
commit | f6adff6227a15af105dbf39c57213a24bf16780b (patch) | |
tree | 73d4904001c45d9e71661ae36ef01231eaf9417f /java/src/com/android/inputmethod/latin/ExpandableBinaryDictionary.java | |
parent | 8ec3a42d2bb93fc6b06236411a9876215792412d (diff) | |
download | latinime-f6adff6227a15af105dbf39c57213a24bf16780b.tar.gz latinime-f6adff6227a15af105dbf39c57213a24bf16780b.tar.xz latinime-f6adff6227a15af105dbf39c57213a24bf16780b.zip |
Change to a binary version of the expandable user dictionary.
Bug: 6435677
Change-Id: If83409f699608d443796e64a3c65692ae81b98e6
Diffstat (limited to 'java/src/com/android/inputmethod/latin/ExpandableBinaryDictionary.java')
-rw-r--r-- | java/src/com/android/inputmethod/latin/ExpandableBinaryDictionary.java | 17 |
1 files changed, 15 insertions, 2 deletions
diff --git a/java/src/com/android/inputmethod/latin/ExpandableBinaryDictionary.java b/java/src/com/android/inputmethod/latin/ExpandableBinaryDictionary.java index 22d8f24f1..08f585485 100644 --- a/java/src/com/android/inputmethod/latin/ExpandableBinaryDictionary.java +++ b/java/src/com/android/inputmethod/latin/ExpandableBinaryDictionary.java @@ -22,11 +22,13 @@ import com.android.inputmethod.keyboard.ProximityInfo; import com.android.inputmethod.latin.makedict.BinaryDictInputOutput; import com.android.inputmethod.latin.makedict.FusionDictionary; import com.android.inputmethod.latin.makedict.FusionDictionary.Node; +import com.android.inputmethod.latin.makedict.FusionDictionary.WeightedString; import com.android.inputmethod.latin.makedict.UnsupportedFormatException; import java.io.File; import java.io.FileOutputStream; import java.io.IOException; +import java.util.ArrayList; import java.util.HashMap; import java.util.concurrent.locks.ReentrantLock; @@ -133,6 +135,10 @@ abstract public class ExpandableBinaryDictionary extends Dictionary { clearFusionDictionary(); } + protected static String getFilenameWithLocale(final String name, final String localeStr) { + return name + "." + localeStr + ".dict"; + } + /** * Closes and cleans up the binary dictionary. */ @@ -166,8 +172,15 @@ abstract public class ExpandableBinaryDictionary extends Dictionary { */ // TODO: Create "cache dictionary" to cache fresh words for frequently updated dictionaries, // considering performance regression. - protected void addWord(final String word, final int frequency) { - mFusionDictionary.add(word, frequency, null /* shortcutTargets */); + protected void addWord(final String word, final String shortcutTarget, final int frequency) { + if (shortcutTarget == null) { + mFusionDictionary.add(word, frequency, null); + } else { + // TODO: Do this in the subclass, with this class taking an arraylist. + final ArrayList<WeightedString> shortcutTargets = new ArrayList<WeightedString>(); + shortcutTargets.add(new WeightedString(shortcutTarget, frequency)); + mFusionDictionary.add(word, frequency, shortcutTargets); + } } /** |