aboutsummaryrefslogtreecommitdiffstats
path: root/java/src/com/android/inputmethod/event
diff options
context:
space:
mode:
authorJean Chalard <jchalard@google.com>2014-03-24 05:28:58 -0700
committerAndroid Git Automerger <android-git-automerger@android.com>2014-03-24 05:28:58 -0700
commit8e73ea1aa5dcbd816a65a61a6f916e567b4e93ed (patch)
tree32d4be045e1db74f09d6ebba22af42ee6ae817ac /java/src/com/android/inputmethod/event
parent750e3a4673b689d62d7f113041eb52647b08cc9d (diff)
parentcbed462d192d0c5af9614f5f997b2768f3d0eb56 (diff)
downloadlatinime-8e73ea1aa5dcbd816a65a61a6f916e567b4e93ed.tar.gz
latinime-8e73ea1aa5dcbd816a65a61a6f916e567b4e93ed.tar.xz
latinime-8e73ea1aa5dcbd816a65a61a6f916e567b4e93ed.zip
am cbed462d: [CB12] Reset the combining state when resetting the composer
* commit 'cbed462d192d0c5af9614f5f997b2768f3d0eb56': [CB12] Reset the combining state when resetting the composer
Diffstat (limited to 'java/src/com/android/inputmethod/event')
-rw-r--r--java/src/com/android/inputmethod/event/Combiner.java5
-rw-r--r--java/src/com/android/inputmethod/event/CombinerChain.java8
-rw-r--r--java/src/com/android/inputmethod/event/DeadKeyCombiner.java5
3 files changed, 18 insertions, 0 deletions
diff --git a/java/src/com/android/inputmethod/event/Combiner.java b/java/src/com/android/inputmethod/event/Combiner.java
index bdc761234..8b808c6b3 100644
--- a/java/src/com/android/inputmethod/event/Combiner.java
+++ b/java/src/com/android/inputmethod/event/Combiner.java
@@ -40,4 +40,9 @@ public interface Combiner {
* @return A CharSequence representing the feedback to show users. It may include styles.
*/
CharSequence getCombiningStateFeedback();
+
+ /**
+ * Reset the state of this combiner, for example when the cursor was moved.
+ */
+ void reset();
}
diff --git a/java/src/com/android/inputmethod/event/CombinerChain.java b/java/src/com/android/inputmethod/event/CombinerChain.java
index cf2a4d1a1..5ca9842c1 100644
--- a/java/src/com/android/inputmethod/event/CombinerChain.java
+++ b/java/src/com/android/inputmethod/event/CombinerChain.java
@@ -58,6 +58,14 @@ public class CombinerChain {
mStateFeedback = new SpannableStringBuilder();
}
+ public void reset() {
+ mCombinedText.setLength(0);
+ mStateFeedback.clear();
+ for (final Combiner c : mCombiners) {
+ c.reset();
+ }
+ }
+
/**
* Pass a new event through the whole chain.
* @param previousEvents the list of previous events in this composition
diff --git a/java/src/com/android/inputmethod/event/DeadKeyCombiner.java b/java/src/com/android/inputmethod/event/DeadKeyCombiner.java
index f891017a3..89e623a1d 100644
--- a/java/src/com/android/inputmethod/event/DeadKeyCombiner.java
+++ b/java/src/com/android/inputmethod/event/DeadKeyCombiner.java
@@ -63,6 +63,11 @@ public class DeadKeyCombiner implements Combiner {
}
@Override
+ public void reset() {
+ mDeadSequence.setLength(0);
+ }
+
+ @Override
public CharSequence getCombiningStateFeedback() {
return mDeadSequence;
}