From c345079b74f74531767240dbfa6cf049b2861a2d Mon Sep 17 00:00:00 2001 From: Ben Kwa Date: Thu, 11 Feb 2016 13:29:12 -0800 Subject: [PATCH] Handle spacebar events. Space/Shift-space scrolls the files list up/down. BUG=25195555 This is a re-land of ag/864217. Change-Id: I496d43d8a0c0833493ec2d5b36ecb7cbeb619853 --- .../android/documentsui/dirlist/FocusManager.java | 12 ++++++++++++ 1 file changed, 12 insertions(+) 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);