diff options
author | 2014-05-12 09:36:50 +0000 | |
---|---|---|
committer | 2014-05-12 09:36:50 +0000 | |
commit | 495599989fdeb96823bd44b0a769d2efd1e660b1 (patch) | |
tree | d66559a94ae8165f043082c1f598a25b3e238b1b /java/src/com/android/inputmethod/latin/WordComposer.java | |
parent | 116be29a89a2a88ca586f7344ebbc8af22a15326 (diff) | |
parent | fac678e13df2c6073bdd7f9dc2fca1d4e16f8309 (diff) | |
download | latinime-495599989fdeb96823bd44b0a769d2efd1e660b1.tar.gz latinime-495599989fdeb96823bd44b0a769d2efd1e660b1.tar.xz latinime-495599989fdeb96823bd44b0a769d2efd1e660b1.zip |
am fac678e1: Merge "Create the path for specifying combining rules in the subtype"
* commit 'fac678e13df2c6073bdd7f9dc2fca1d4e16f8309':
Create the path for specifying combining rules in the subtype
Diffstat (limited to 'java/src/com/android/inputmethod/latin/WordComposer.java')
-rw-r--r-- | java/src/com/android/inputmethod/latin/WordComposer.java | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/java/src/com/android/inputmethod/latin/WordComposer.java b/java/src/com/android/inputmethod/latin/WordComposer.java index d755195f2..cdee496a8 100644 --- a/java/src/com/android/inputmethod/latin/WordComposer.java +++ b/java/src/com/android/inputmethod/latin/WordComposer.java @@ -41,6 +41,7 @@ public final class WordComposer { public static final int CAPS_MODE_AUTO_SHIFT_LOCKED = 0x7; private CombinerChain mCombinerChain; + private String mCombiningSpec; // Memory so that we don't uselessly recreate the combiner chain // The list of events that served to compose this string. private final ArrayList<Event> mEvents; @@ -91,6 +92,21 @@ public final class WordComposer { } /** + * Restart input with a new combining spec. + * @param combiningSpec The spec string for combining. This is found in the extra value. + */ + public void restart(final String combiningSpec) { + final String nonNullCombiningSpec = null == combiningSpec ? "" : combiningSpec; + if (nonNullCombiningSpec.equals(mCombiningSpec)) { + mCombinerChain.reset(); + } else { + mCombinerChain = new CombinerChain(CombinerChain.createCombiners(nonNullCombiningSpec)); + mCombiningSpec = nonNullCombiningSpec; + } + reset(); + } + + /** * Clear out the keys registered so far. */ public void reset() { |