diff options
author | 2014-05-14 20:19:16 +0900 | |
---|---|---|
committer | 2014-05-14 20:34:32 +0900 | |
commit | 5ce39dfa782031fd53af167c0fd9a9bc63d21149 (patch) | |
tree | c436513e805f314333e9349100e72ceaef474353 /java/src/com/android/inputmethod/event | |
parent | 71f4c6b8eacb210fceb719a0f293d14f359ba4f1 (diff) | |
download | latinime-5ce39dfa782031fd53af167c0fd9a9bc63d21149.tar.gz latinime-5ce39dfa782031fd53af167c0fd9a9bc63d21149.tar.xz latinime-5ce39dfa782031fd53af167c0fd9a9bc63d21149.zip |
Fix a bug where changing languages kills the composition.
Bug: 14926896
Change-Id: Id2a06c68a51f833db4d8bbc858a232c2696afb6e
Diffstat (limited to 'java/src/com/android/inputmethod/event')
-rw-r--r-- | java/src/com/android/inputmethod/event/CombinerChain.java | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/java/src/com/android/inputmethod/event/CombinerChain.java b/java/src/com/android/inputmethod/event/CombinerChain.java index 990f7deea..9e7f04d4f 100644 --- a/java/src/com/android/inputmethod/event/CombinerChain.java +++ b/java/src/com/android/inputmethod/event/CombinerChain.java @@ -56,18 +56,20 @@ public class CombinerChain { * * The combiner chain takes events as inputs and outputs code points and combining state. * For example, if the input language is Japanese, the combining chain will typically perform - * kana conversion. + * kana conversion. This takes a string for initial text, taken to be present before the + * cursor: we'll start after this. * + * @param initialText The text that has already been combined so far. * @param combinerList A list of combiners to be applied in order. */ - public CombinerChain(final Combiner... combinerList) { + public CombinerChain(final String initialText, final Combiner... combinerList) { mCombiners = CollectionUtils.newArrayList(); // The dead key combiner is always active, and always first mCombiners.add(new DeadKeyCombiner()); for (final Combiner combiner : combinerList) { mCombiners.add(combiner); } - mCombinedText = new StringBuilder(); + mCombinedText = new StringBuilder(initialText); mStateFeedback = new SpannableStringBuilder(); } |