am 6b0bcfba
: Merge "Disable long press timer while sliding input mode"
* commit '6b0bcfba9b9a1f2079769aa331a7fc4daf071d9b': Disable long press timer while sliding input mode
This commit is contained in:
commit
813ba9f526
3 changed files with 11 additions and 5 deletions
|
@ -105,7 +105,7 @@ public class Key implements Comparable<Key> {
|
||||||
/** Hit bounding box of the key */
|
/** Hit bounding box of the key */
|
||||||
public final Rect mHitBox = new Rect();
|
public final Rect mHitBox = new Rect();
|
||||||
|
|
||||||
/** More keys */
|
/** More keys. It is guaranteed that this is null or an array of one or more elements */
|
||||||
public final MoreKeySpec[] mMoreKeys;
|
public final MoreKeySpec[] mMoreKeys;
|
||||||
/** More keys column number and flags */
|
/** More keys column number and flags */
|
||||||
private final int mMoreKeysColumnAndFlags;
|
private final int mMoreKeysColumnAndFlags;
|
||||||
|
|
|
@ -497,7 +497,7 @@ public class KeyboardView extends View {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (key.hasPopupHint() && key.mMoreKeys != null && key.mMoreKeys.length > 0) {
|
if (key.hasPopupHint() && key.mMoreKeys != null) {
|
||||||
drawKeyPopupHint(key, canvas, paint, params);
|
drawKeyPopupHint(key, canvas, paint, params);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1306,9 +1306,15 @@ public final class PointerTracker implements PointerTrackerQueue.Element {
|
||||||
}
|
}
|
||||||
|
|
||||||
private void startLongPressTimer(final Key key) {
|
private void startLongPressTimer(final Key key) {
|
||||||
if (key != null && key.isLongPressEnabled() && !sInGesture) {
|
if (sInGesture) return;
|
||||||
mTimerProxy.startLongPressTimer(this);
|
if (key == null) return;
|
||||||
}
|
if (!key.isLongPressEnabled()) return;
|
||||||
|
// Caveat: Please note that isLongPressEnabled() can be true even if the current key
|
||||||
|
// 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;
|
||||||
|
mTimerProxy.startLongPressTimer(this);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void detectAndSendKey(final Key key, final int x, final int y, final long eventTime) {
|
private void detectAndSendKey(final Key key, final int x, final int y, final long eventTime) {
|
||||||
|
|
Loading…
Reference in a new issue