am 2d514c81: am c536d27c: am 6e41d9a4: Merge "Input delete onUpKey"
* commit '2d514c81db1c78971ab452e7950b2e09ba465bf2': Input delete onUpKeymain
commit
96652219a5
|
@ -346,6 +346,8 @@ public final class PointerTracker implements PointerTrackerQueue.Element {
|
||||||
// true if this pointer is in a sliding key input from a modifier key,
|
// true if this pointer is in a sliding key input from a modifier key,
|
||||||
// so that further modifier keys should be ignored.
|
// so that further modifier keys should be ignored.
|
||||||
boolean mIsInSlidingKeyInputFromModifier;
|
boolean mIsInSlidingKeyInputFromModifier;
|
||||||
|
// if not a NOT_A_CODE, the key of this code is repeating
|
||||||
|
private int mCurrentRepeatingKeyCode = Constants.NOT_A_CODE;
|
||||||
|
|
||||||
// true if a sliding key input is allowed.
|
// true if a sliding key input is allowed.
|
||||||
private boolean mIsAllowedSlidingKeyInput;
|
private boolean mIsAllowedSlidingKeyInput;
|
||||||
|
@ -1248,6 +1250,8 @@ public final class PointerTracker implements PointerTrackerQueue.Element {
|
||||||
mIsDetectingGesture = false;
|
mIsDetectingGesture = false;
|
||||||
final Key currentKey = mCurrentKey;
|
final Key currentKey = mCurrentKey;
|
||||||
mCurrentKey = null;
|
mCurrentKey = null;
|
||||||
|
final int currentRepeatingKeyCode = mCurrentRepeatingKeyCode;
|
||||||
|
mCurrentRepeatingKeyCode = Constants.NOT_A_CODE;
|
||||||
// Release the last pressed key.
|
// Release the last pressed key.
|
||||||
setReleasedKeyGraphics(currentKey);
|
setReleasedKeyGraphics(currentKey);
|
||||||
|
|
||||||
|
@ -1273,8 +1277,8 @@ public final class PointerTracker implements PointerTrackerQueue.Element {
|
||||||
if (mIsTrackingForActionDisabled) {
|
if (mIsTrackingForActionDisabled) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (currentKey != null && currentKey.isRepeatable() && !isInSlidingKeyInput) {
|
if (currentKey != null && currentKey.isRepeatable()
|
||||||
// Repeatable key has been registered in {@link #onDownEventInternal(int,int,long)}.
|
&& (currentKey.getCode() == currentRepeatingKeyCode) && !isInSlidingKeyInput) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
detectAndSendKey(currentKey, mKeyX, mKeyY, eventTime);
|
detectAndSendKey(currentKey, mKeyX, mKeyY, eventTime);
|
||||||
|
@ -1413,7 +1417,6 @@ public final class PointerTracker implements PointerTrackerQueue.Element {
|
||||||
if (!key.isRepeatable()) return;
|
if (!key.isRepeatable()) return;
|
||||||
// Don't start key repeat when we are in sliding input mode.
|
// Don't start key repeat when we are in sliding input mode.
|
||||||
if (mIsInSlidingKeyInput) return;
|
if (mIsInSlidingKeyInput) return;
|
||||||
detectAndSendKey(key, key.getX(), key.getY(), SystemClock.uptimeMillis());
|
|
||||||
final int startRepeatCount = 1;
|
final int startRepeatCount = 1;
|
||||||
mTimerProxy.startKeyRepeatTimer(this, startRepeatCount, sParams.mKeyRepeatStartTimeout);
|
mTimerProxy.startKeyRepeatTimer(this, startRepeatCount, sParams.mKeyRepeatStartTimeout);
|
||||||
}
|
}
|
||||||
|
@ -1421,8 +1424,10 @@ public final class PointerTracker implements PointerTrackerQueue.Element {
|
||||||
public void onKeyRepeat(final int code, final int repeatCount) {
|
public void onKeyRepeat(final int code, final int repeatCount) {
|
||||||
final Key key = getKey();
|
final Key key = getKey();
|
||||||
if (key == null || key.getCode() != code) {
|
if (key == null || key.getCode() != code) {
|
||||||
|
mCurrentRepeatingKeyCode = Constants.NOT_A_CODE;
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
mCurrentRepeatingKeyCode = code;
|
||||||
mIsDetectingGesture = false;
|
mIsDetectingGesture = false;
|
||||||
final int nextRepeatCount = repeatCount + 1;
|
final int nextRepeatCount = repeatCount + 1;
|
||||||
mTimerProxy.startKeyRepeatTimer(this, nextRepeatCount, sParams.mKeyRepeatInterval);
|
mTimerProxy.startKeyRepeatTimer(this, nextRepeatCount, sParams.mKeyRepeatInterval);
|
||||||
|
|
Loading…
Reference in New Issue