summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDanny Baumann <dannybaumann@web.de>2016-01-28 09:25:39 +0100
committerMichael Bestas <mkbestas@lineageos.org>2019-12-11 23:42:56 +0200
commit4cbbc1c9568bc05dbe4abca05e169e46810be513 (patch)
treeb100fb932efccee9cba25c24a76d2200e1aa8012
parentd3cc7d5ae30b439001a7d89798550e1b463e46e7 (diff)
downloadandroid_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.java11
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);