diff options
author | Danny Baumann <dannybaumann@web.de> | 2016-01-28 09:25:39 +0100 |
---|---|---|
committer | Michael Bestas <mkbestas@lineageos.org> | 2019-12-11 23:42:56 +0200 |
commit | 4cbbc1c9568bc05dbe4abca05e169e46810be513 (patch) | |
tree | b100fb932efccee9cba25c24a76d2200e1aa8012 | |
parent | d3cc7d5ae30b439001a7d89798550e1b463e46e7 (diff) | |
download | android_packages_inputmethods_LatinIME-4cbbc1c9568bc05dbe4abca05e169e46810be513.tar.gz android_packages_inputmethods_LatinIME-4cbbc1c9568bc05dbe4abca05e169e46810be513.tar.bz2 android_packages_inputmethods_LatinIME-4cbbc1c9568bc05dbe4abca05e169e46810be513.zip |
Don't interrupt active gesture input by modifier key presses.
They're likely to be caused by palm touches.
Change-Id: Ic1e0b86c5bf5d4c22f888f0bb77342584e45763e
-rw-r--r-- | java/src/com/android/inputmethod/keyboard/PointerTracker.java | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/java/src/com/android/inputmethod/keyboard/PointerTracker.java b/java/src/com/android/inputmethod/keyboard/PointerTracker.java index 9764cb389..05680c5ac 100644 --- a/java/src/com/android/inputmethod/keyboard/PointerTracker.java +++ b/java/src/com/android/inputmethod/keyboard/PointerTracker.java @@ -636,9 +636,14 @@ public final class PointerTracker implements PointerTrackerQueue.Element, final Key key = getKeyOn(x, y); mBogusMoveEventDetector.onActualDownEvent(x, y); if (key != null && key.isModifier()) { - // Before processing a down event of modifier key, all pointers already being - // tracked should be released. - sPointerTrackerQueue.releaseAllPointers(eventTime); + if (sInGesture) { + // Make sure not to interrupt an active gesture + return; + } else { + // Before processing a down event of modifier key, all pointers + // already being tracked should be released. + sPointerTrackerQueue.releaseAllPointers(eventTime); + } } sPointerTrackerQueue.add(this); onDownEventInternal(x, y, eventTime); |