diff options
| author | Matthew Duggan <mduggan@google.com> | 2021-07-06 16:10:01 +0900 |
|---|---|---|
| committer | Matthew Duggan <mduggan@google.com> | 2021-07-06 16:12:25 +0900 |
| commit | 2d32eb61db0bd7de6bce09dd1549271d5479f8dc (patch) | |
| tree | b96a507231a1ec4a33894a7d8764d3dcffface32 /core/java/android/widget/ScrollView.java | |
| parent | ab682f318a55d53d2f409a199fad46af95557413 (diff) | |
Clear popups on KEYCODE_ESCAPE as well as KEYCODE_BACK
On desktop devices, users expect that the Escape key will clear various
popup windows in the same way as the Back button will on mobile devices.
This adds support for Escape to places the Back button currently clears
ListPopupWindow, AutoCompleteTextView, PopupWindow, and ScrollView.
Bug: 174164194
Test: Open popups of each type on a device with a physical keyboard and
press escape.
Change-Id: I32e65ce4317db7de043c8a050d87126b0f38acce
Diffstat (limited to 'core/java/android/widget/ScrollView.java')
| -rw-r--r-- | core/java/android/widget/ScrollView.java | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/core/java/android/widget/ScrollView.java b/core/java/android/widget/ScrollView.java index 693b13bbf224..3ad7b46d503a 100644 --- a/core/java/android/widget/ScrollView.java +++ b/core/java/android/widget/ScrollView.java @@ -509,7 +509,8 @@ public class ScrollView extends FrameLayout { mTempRect.setEmpty(); if (!canScroll()) { - if (isFocused() && event.getKeyCode() != KeyEvent.KEYCODE_BACK) { + if (isFocused() && event.getKeyCode() != KeyEvent.KEYCODE_BACK + && event.getKeyCode() != KeyEvent.KEYCODE_ESCAPE) { View currentFocused = findFocus(); if (currentFocused == this) currentFocused = null; View nextFocused = FocusFinder.getInstance().findNextFocus(this, |
