diff options
author | 2014-06-25 16:50:27 +0900 | |
---|---|---|
committer | 2014-06-26 18:27:53 +0900 | |
commit | 09291050a028192a39fd745c6696df1c504eb38b (patch) | |
tree | 6c999b51c4d3905514389db9ffdd909c3878ad4b /java/src/com/android/inputmethod/event | |
parent | 5961f2dfaca123e8e6f2fab33fb9d23d8b4c98fc (diff) | |
download | latinime-09291050a028192a39fd745c6696df1c504eb38b.tar.gz latinime-09291050a028192a39fd745c6696df1c504eb38b.tar.xz latinime-09291050a028192a39fd745c6696df1c504eb38b.zip |
[HW1] Fix some bugs with event handling
With hardware events, we do have some events that
have both a keycode and a code point, so we need
a better way of distinguishing between auto-insert
keystrokes and others.
Change-Id: Ia23042989b4dca9d3a7d4a4c06bcebdabe324a7a
Diffstat (limited to 'java/src/com/android/inputmethod/event')
-rw-r--r-- | java/src/com/android/inputmethod/event/Event.java | 7 | ||||
-rw-r--r-- | java/src/com/android/inputmethod/event/HardwareKeyboardEventDecoder.java | 2 |
2 files changed, 8 insertions, 1 deletions
diff --git a/java/src/com/android/inputmethod/event/Event.java b/java/src/com/android/inputmethod/event/Event.java index 4a9163c8e..d257441e0 100644 --- a/java/src/com/android/inputmethod/event/Event.java +++ b/java/src/com/android/inputmethod/event/Event.java @@ -225,6 +225,13 @@ public class Event { null /* suggestedWordInfo */, FLAG_NONE, null); } + // Returns whether this is a function key like backspace, ctrl, settings... as opposed to keys + // that result in input like letters or space. + public boolean isFunctionalKeyEvent() { + // This logic may need to be refined in the future + return NOT_A_CODE_POINT == mCodePoint; + } + // Returns whether this event is for a dead character. @see {@link #FLAG_DEAD} public boolean isDead() { return 0 != (FLAG_DEAD & mFlags); diff --git a/java/src/com/android/inputmethod/event/HardwareKeyboardEventDecoder.java b/java/src/com/android/inputmethod/event/HardwareKeyboardEventDecoder.java index 05ba99923..c61f45efa 100644 --- a/java/src/com/android/inputmethod/event/HardwareKeyboardEventDecoder.java +++ b/java/src/com/android/inputmethod/event/HardwareKeyboardEventDecoder.java @@ -74,7 +74,7 @@ public class HardwareKeyboardEventDecoder implements HardwareEventDecoder { } // If not Enter, then this is just a regular keypress event for a normal character // that can be committed right away, taking into account the current state. - return Event.createHardwareKeypressEvent(keyCode, codePointAndFlags, null /* next */, + return Event.createHardwareKeypressEvent(codePointAndFlags, keyCode, null /* next */, isKeyRepeat); } return Event.createNotHandledEvent(); |