diff options
author | 2013-05-13 03:52:14 -0700 | |
---|---|---|
committer | 2013-05-13 03:52:14 -0700 | |
commit | a70da988d78ffd20941dfaa34f7a6324e465808e (patch) | |
tree | ff5442a9d075a105dca231b54d8cbc73d4366482 /java | |
parent | f6b5484dcb2d69fe6a21a62fda31ff523936b492 (diff) | |
parent | 5f857a359ae94298bbbcfe8848dfaafbf2fbcdc1 (diff) | |
download | latinime-a70da988d78ffd20941dfaa34f7a6324e465808e.tar.gz latinime-a70da988d78ffd20941dfaa34f7a6324e465808e.tar.xz latinime-a70da988d78ffd20941dfaa34f7a6324e465808e.zip |
am 5f857a35: Merge "Disable functional key while in sliding input mode"
* commit '5f857a359ae94298bbbcfe8848dfaafbf2fbcdc1':
Disable functional key while in sliding input mode
Diffstat (limited to 'java')
-rw-r--r-- | java/src/com/android/inputmethod/keyboard/PointerTracker.java | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/java/src/com/android/inputmethod/keyboard/PointerTracker.java b/java/src/com/android/inputmethod/keyboard/PointerTracker.java index 5a2af8015..a8327289b 100644 --- a/java/src/com/android/inputmethod/keyboard/PointerTracker.java +++ b/java/src/com/android/inputmethod/keyboard/PointerTracker.java @@ -1168,6 +1168,7 @@ public final class PointerTracker implements PointerTrackerQueue.Element { private void onUpEventInternal(final int x, final int y, final long eventTime) { mTimerProxy.cancelKeyTimers(); + final boolean isInSlidingKeyInput = mIsInSlidingKeyInput; resetSlidingKeyInput(); mIsDetectingGesture = false; final Key currentKey = mCurrentKey; @@ -1197,9 +1198,11 @@ public final class PointerTracker implements PointerTrackerQueue.Element { if (mIsTrackingForActionDisabled) { return; } - if (currentKey != null && !currentKey.isRepeatable()) { - detectAndSendKey(currentKey, mKeyX, mKeyY, eventTime); + if (currentKey != null && currentKey.isRepeatable() && !isInSlidingKeyInput) { + // Repeatable key has been registered in {@link #onDownEventInternal(int,int,long)}. + return; } + detectAndSendKey(currentKey, mKeyX, mKeyY, eventTime); } public void onShowMoreKeysPanel(final int translatedX, final int translatedY, @@ -1251,7 +1254,7 @@ public final class PointerTracker implements PointerTrackerQueue.Element { if (key == null) return; if (!key.isRepeatable()) return; // Don't start key repeat when we are in sliding input mode. - if (mIsInSlidingKeyInputFromModifier) return; + if (mIsInSlidingKeyInput) return; onRegisterKey(key); mTimerProxy.startKeyRepeatTimer(this); } @@ -1313,7 +1316,7 @@ public final class PointerTracker implements PointerTrackerQueue.Element { // doesn't have its more keys. (e.g. spacebar, globe key) // We always need to start the long press timer if the key has its more keys regardless of // whether or not we are in the sliding input mode. - if (mIsInSlidingKeyInputFromModifier && key.mMoreKeys == null) return; + if (mIsInSlidingKeyInput && key.mMoreKeys == null) return; mTimerProxy.startLongPressTimer(this); } |