aboutsummaryrefslogtreecommitdiffstats
path: root/java/src/com/android/inputmethod/event/DeadKeyCombiner.java
diff options
context:
space:
mode:
authorTadashi G. Takaoka <takaoka@google.com>2014-10-24 08:22:51 +0000
committerAndroid (Google) Code Review <android-gerrit@google.com>2014-10-24 08:22:52 +0000
commitdd5737b0fa3bf68f90534457ed8d23437caf5420 (patch)
tree4325a39961c1a7a471aeba71420d4fcc7c140300 /java/src/com/android/inputmethod/event/DeadKeyCombiner.java
parent9afac3319c09f3daa626a403927a89c6ec25d3b8 (diff)
parent067d8cdf56580c6aaf0fd98ff8f7b6bf837a8814 (diff)
downloadlatinime-dd5737b0fa3bf68f90534457ed8d23437caf5420.tar.gz
latinime-dd5737b0fa3bf68f90534457ed8d23437caf5420.tar.xz
latinime-dd5737b0fa3bf68f90534457ed8d23437caf5420.zip
Merge "Fix unit test breakage"
Diffstat (limited to 'java/src/com/android/inputmethod/event/DeadKeyCombiner.java')
-rw-r--r--java/src/com/android/inputmethod/event/DeadKeyCombiner.java14
1 files changed, 7 insertions, 7 deletions
diff --git a/java/src/com/android/inputmethod/event/DeadKeyCombiner.java b/java/src/com/android/inputmethod/event/DeadKeyCombiner.java
index a3e4ad833..1a28bb1d5 100644
--- a/java/src/com/android/inputmethod/event/DeadKeyCombiner.java
+++ b/java/src/com/android/inputmethod/event/DeadKeyCombiner.java
@@ -218,17 +218,17 @@ public class DeadKeyCombiner implements Combiner {
@Nonnull
private static Event createEventChainFromSequence(final @Nonnull CharSequence text,
@Nonnull final Event originalEvent) {
- if (text.length() <= 0) {
+ int index = text.length();
+ if (index <= 0) {
return originalEvent;
}
Event lastEvent = null;
- int codePoint = 0;
- for (int i = text.length(); i > 0; i -= Character.charCount(codePoint)) {
- codePoint = Character.codePointBefore(text, i);
- final Event thisEvent = Event.createHardwareKeypressEvent(codePoint,
+ do {
+ final int codePoint = Character.codePointBefore(text, index);
+ lastEvent = Event.createHardwareKeypressEvent(codePoint,
originalEvent.mKeyCode, lastEvent, false /* isKeyRepeat */);
- lastEvent = thisEvent;
- }
+ index -= Character.charCount(codePoint);
+ } while (index > 0);
return lastEvent;
}