diff --git a/packages/DocumentsUI/src/com/android/documentsui/dirlist/FocusManager.java b/packages/DocumentsUI/src/com/android/documentsui/dirlist/FocusManager.java index 40ce2b4d02d79..93ec8426e74f6 100644 --- a/packages/DocumentsUI/src/com/android/documentsui/dirlist/FocusManager.java +++ b/packages/DocumentsUI/src/com/android/documentsui/dirlist/FocusManager.java @@ -52,6 +52,18 @@ class FocusManager implements View.OnFocusChangeListener { * @return Whether the event was handled. */ public boolean handleKey(DocumentHolder doc, int keyCode, KeyEvent event) { + boolean extendSelection = false; + // Translate space/shift-space into PgDn/PgUp + if (keyCode == KeyEvent.KEYCODE_SPACE) { + if (event.isShiftPressed()) { + keyCode = KeyEvent.KEYCODE_PAGE_UP; + } else { + keyCode = KeyEvent.KEYCODE_PAGE_DOWN; + } + } else { + extendSelection = event.isShiftPressed(); + } + if (Events.isNavigationKeyCode(keyCode)) { // Find the target item and focus it. int endPos = findTargetPosition(doc.itemView, keyCode, event);