diff options
author | 2014-08-05 13:25:58 +0000 | |
---|---|---|
committer | 2014-08-05 13:25:58 +0000 | |
commit | 6745f337c166cb1750e80ce9101bdbf57d2b6596 (patch) | |
tree | 4b20771495c2a9cf54c6153679089bf3cb66679a /java/src | |
parent | 139e54a26df783ea60e28812d63083844569bc52 (diff) | |
parent | d5c89d64901f1fe7085e6c217d0c2fc19853b032 (diff) | |
download | latinime-6745f337c166cb1750e80ce9101bdbf57d2b6596.tar.gz latinime-6745f337c166cb1750e80ce9101bdbf57d2b6596.tar.xz latinime-6745f337c166cb1750e80ce9101bdbf57d2b6596.zip |
am d5c89d64: am 6474ef99: Merge "[HW16] Implement processing event chains." into lmp-dev
* commit 'd5c89d64901f1fe7085e6c217d0c2fc19853b032':
[HW16] Implement processing event chains.
Diffstat (limited to 'java/src')
-rw-r--r-- | java/src/com/android/inputmethod/latin/inputlogic/InputLogic.java | 18 |
1 files changed, 11 insertions, 7 deletions
diff --git a/java/src/com/android/inputmethod/latin/inputlogic/InputLogic.java b/java/src/com/android/inputmethod/latin/inputlogic/InputLogic.java index 5c719edb9..97457b2f7 100644 --- a/java/src/com/android/inputmethod/latin/inputlogic/InputLogic.java +++ b/java/src/com/android/inputmethod/latin/inputlogic/InputLogic.java @@ -426,13 +426,17 @@ public final class InputLogic { cancelDoubleSpacePeriodCountdown(); } - if (processedEvent.isConsumed()) { - handleConsumedEvent(processedEvent, inputTransaction); - } else if (processedEvent.isFunctionalKeyEvent()) { - handleFunctionalEvent(processedEvent, inputTransaction, currentKeyboardScriptId, - handler); - } else { - handleNonFunctionalEvent(processedEvent, inputTransaction, handler); + Event currentEvent = processedEvent; + while (null != currentEvent) { + if (currentEvent.isConsumed()) { + handleConsumedEvent(currentEvent, inputTransaction); + } else if (currentEvent.isFunctionalKeyEvent()) { + handleFunctionalEvent(currentEvent, inputTransaction, currentKeyboardScriptId, + handler); + } else { + handleNonFunctionalEvent(currentEvent, inputTransaction, handler); + } + currentEvent = currentEvent.mNextEvent; } if (!inputTransaction.didAutoCorrect() && processedEvent.mKeyCode != Constants.CODE_SHIFT && processedEvent.mKeyCode != Constants.CODE_CAPSLOCK |