diff options
author | Danny Baumann <dannybaumann@web.de> | 2016-01-28 09:25:39 +0100 |
---|---|---|
committer | Michael Bestas <mikeioannina@gmail.com> | 2016-12-30 22:09:40 +0200 |
commit | 9f02e8a7eb79ddf7468166d86466c1e4321a2347 (patch) | |
tree | 4d132d908b75e0cabbb553b44e15a251ae60cc85 | |
parent | 763d240290d513ad2091264c22ae1cef16f92b6d (diff) | |
download | android_packages_inputmethods_LatinIME-9f02e8a7eb79ddf7468166d86466c1e4321a2347.tar.gz android_packages_inputmethods_LatinIME-9f02e8a7eb79ddf7468166d86466c1e4321a2347.tar.bz2 android_packages_inputmethods_LatinIME-9f02e8a7eb79ddf7468166d86466c1e4321a2347.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); |