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
This commit is contained in:
@@ -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;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user