summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Miranda Kephart <mkephart@google.com> 2021-03-31 13:49:28 -0400
committer Miranda Kephart <mkephart@google.com> 2021-03-31 17:55:43 +0000
commitd41d038515bfc6ea8e9772c4e2cf4d10cc689a72 (patch)
treeaf556b9562d6a6187c0e0a663cfe5040004bd255
parent40b4495f8eeb29150bee968c58634cc70c4a2460 (diff)
Don't send long-press event if KEYCODE_UNKNOWN
Gates sending a long-press event on the keycode not being unknown. This brings the behavior into line with the other times events are sent from KeyButtonView and fixes a bug where long-pressing the recents button in 3-button mode broke screenshots. When this happens we send an ACTION_DOWN event, but no ACTION_UP event, which prevents the key combination manager from correctly recognizing keychords. Bug: 181178545 Test: manual; repro = long-press the recents button in 3-button mode, then attempt to take a screenshot with power+vol_down. Change-Id: I26d232067befc3aca04c74e4ef8f4ad4ac629934
-rw-r--r--packages/SystemUI/src/com/android/systemui/navigationbar/buttons/KeyButtonView.java6
1 files changed, 4 insertions, 2 deletions
diff --git a/packages/SystemUI/src/com/android/systemui/navigationbar/buttons/KeyButtonView.java b/packages/SystemUI/src/com/android/systemui/navigationbar/buttons/KeyButtonView.java
index f0e4cce299ee..531ccb4eb1cb 100644
--- a/packages/SystemUI/src/com/android/systemui/navigationbar/buttons/KeyButtonView.java
+++ b/packages/SystemUI/src/com/android/systemui/navigationbar/buttons/KeyButtonView.java
@@ -127,8 +127,10 @@ public class KeyButtonView extends ImageView implements ButtonInterface {
performLongClick();
mLongClicked = true;
} else {
- sendEvent(KeyEvent.ACTION_DOWN, KeyEvent.FLAG_LONG_PRESS);
- sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_LONG_CLICKED);
+ if (mCode != KEYCODE_UNKNOWN) {
+ sendEvent(KeyEvent.ACTION_DOWN, KeyEvent.FLAG_LONG_PRESS);
+ sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_LONG_CLICKED);
+ }
mLongClicked = true;
}
}