New issue
Advanced search Search tips

Issue 661195 link

Starred by 2 users

Issue metadata

Status: Archived
Owner:
Closed: Aug 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 2
Type: Bug
Team-Accessibility



Sign in to add a comment

A11y issue with accessing context menu in app launcher using keyboard only

Project Member Reported by lpalmaro@chromium.org, Nov 1 2016

Issue description

Version: long standing issue on all versions right now
OS: Chrome

What steps will reproduce the problem?
(1) Press Alt Shift L to get to launcher, press enter
(2) Use keyboard only to navigate to all apps, press enter
(3) Use arrow keys to focus one of the given apps
4) Press the keyboard shortcut to open the context menu for that app, Shift + Search + Volume Up

What is the expected output?
The correct context menu appears with options to pin, uninstall, etc. 

What do you see instead?
The context menu opens but it's the wrong one -- it's associated with the search bar since the cursor is there. Keyboard only users currently can't take actions on the apps the way that mouse users can. This needs to be addressed. 

Oshima@ is this something you can look at? 


Please use labels and text to provide additional information.


 
Owner: dmazz...@chromium.org
Labels: NewComponent-Accessibility NewComponent-Accessibility-Browser
Labels: NewComponent-Accessibility-Internals
Components: Internals>Accessibility
Components: -UI>Accessibility
Labels: -newcomponent-accessibility-internals -newcomponent-accessibility
Labels: -newcomponent-accessibility-browser
Owner: ----
Status: Available (was: Assigned)
Labels: triage-dtseng

Comment 9 by dtseng@chromium.org, Aug 11 2017

Labels: -triage-dtseng
Owner: osh...@chromium.org
Status: assigned (was: Available)
@lpalmaro, this is working with ChromeVox via Search+m. I think this has to do with the way focus works in the app list. Assigning to oshima for comment.
Owner: newcomer@chromium.org
newcomer@, can you look into this?
Cc: xiy...@chromium.org
Looks like the focus is still on the text field.

+xiyuan@ who may know more details.
Cc: newcomer@chromium.org
Components: UI>Shell>Launcher
Owner: weidongg@chromium.org
SearchBoxView's |search_box_| is designed to always have the focus in the widget so that it could always listen to keyboard events. Tab/Arrow key navigating focus through AppsGridView does not change the actual focus, but sets a background to the selected app. So Widget::GetFocusManager()->GetFocusedView() always return |search_box_|. The shortcut to open context menu is intercepted by PreEventDispatchHandler::OnKeyEvent in root_view.cc, and only the context menu for the focused view in the widget will be opened.

One possible solution is to change the actual focus when hitting tab/arrow key, but |search_box_| could not listen to keyboard event when focus is on other view. And this changes the original design, which is not expected. Any thoughts on this?
Can we just override view::ShowContextMenu in SearchBoxView?
Re #14, Yeah, you are right, it's a good idea. Let me try this. thanks!
Project Member

Comment 16 by bugdroid1@chromium.org, Aug 24 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/98a2767c0681402feb504825c99f660427900de4

commit 98a2767c0681402feb504825c99f660427900de4
Author: Weidong Guo <weidongg@chromium.org>
Date: Thu Aug 24 22:41:59 2017

cros: Fix keyboard shortcut opening context menu in app list

Changes:
1. Override View::ShowContextMenu in |search_box_| in SearchBoxView to
show context menu of selected view instead of that of focused view
which is always |search_box_|.
2. Add path to get selected view in ContentsView.

BUG= 661195 

Change-Id: Ica26cf507bd6327d5b82fd2e2c44f65613c1c401
Reviewed-on: https://chromium-review.googlesource.com/630999
Commit-Queue: Weidong Guo <weidongg@chromium.org>
Reviewed-by: Xiyuan Xia <xiyuan@chromium.org>
Cr-Commit-Position: refs/heads/master@{#497228}
[modify] https://crrev.com/98a2767c0681402feb504825c99f660427900de4/ui/app_list/views/app_list_page.cc
[modify] https://crrev.com/98a2767c0681402feb504825c99f660427900de4/ui/app_list/views/app_list_page.h
[modify] https://crrev.com/98a2767c0681402feb504825c99f660427900de4/ui/app_list/views/apps_container_view.cc
[modify] https://crrev.com/98a2767c0681402feb504825c99f660427900de4/ui/app_list/views/apps_container_view.h
[modify] https://crrev.com/98a2767c0681402feb504825c99f660427900de4/ui/app_list/views/apps_grid_view.cc
[modify] https://crrev.com/98a2767c0681402feb504825c99f660427900de4/ui/app_list/views/apps_grid_view.h
[modify] https://crrev.com/98a2767c0681402feb504825c99f660427900de4/ui/app_list/views/contents_view.cc
[modify] https://crrev.com/98a2767c0681402feb504825c99f660427900de4/ui/app_list/views/contents_view.h
[modify] https://crrev.com/98a2767c0681402feb504825c99f660427900de4/ui/app_list/views/search_box_view.cc
[modify] https://crrev.com/98a2767c0681402feb504825c99f660427900de4/ui/app_list/views/search_box_view.h
[modify] https://crrev.com/98a2767c0681402feb504825c99f660427900de4/ui/app_list/views/search_result_answer_card_view.cc
[modify] https://crrev.com/98a2767c0681402feb504825c99f660427900de4/ui/app_list/views/search_result_answer_card_view.h
[modify] https://crrev.com/98a2767c0681402feb504825c99f660427900de4/ui/app_list/views/search_result_container_view.h
[modify] https://crrev.com/98a2767c0681402feb504825c99f660427900de4/ui/app_list/views/search_result_list_view.cc
[modify] https://crrev.com/98a2767c0681402feb504825c99f660427900de4/ui/app_list/views/search_result_list_view.h
[modify] https://crrev.com/98a2767c0681402feb504825c99f660427900de4/ui/app_list/views/search_result_page_view.cc
[modify] https://crrev.com/98a2767c0681402feb504825c99f660427900de4/ui/app_list/views/search_result_page_view.h
[modify] https://crrev.com/98a2767c0681402feb504825c99f660427900de4/ui/app_list/views/search_result_tile_item_list_view.cc
[modify] https://crrev.com/98a2767c0681402feb504825c99f660427900de4/ui/app_list/views/search_result_tile_item_list_view.h
[modify] https://crrev.com/98a2767c0681402feb504825c99f660427900de4/ui/app_list/views/suggestions_container_view.cc
[modify] https://crrev.com/98a2767c0681402feb504825c99f660427900de4/ui/app_list/views/suggestions_container_view.h

Status: Fixed (was: Assigned)
Project Member

Comment 18 by bugdroid1@chromium.org, Aug 30 2017

Labels: merge-merged-3163
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/37846764b2e165ad2672bda7d3209560c4db00ba

commit 37846764b2e165ad2672bda7d3209560c4db00ba
Author: Maajid <maajid@chromium.org>
Date: Wed Aug 30 20:42:42 2017

cros: Fix keyboard shortcut opening context menu in app list

Changes:
1. Override View::ShowContextMenu in |search_box_| in SearchBoxView to
show context menu of selected view instead of that of focused view
which is always |search_box_|.
2. Add path to get selected view in ContentsView.

BUG= 661195 
TBR=weidongg@chromium.org

(cherry picked from commit 98a2767c0681402feb504825c99f660427900de4)

Change-Id: Ica26cf507bd6327d5b82fd2e2c44f65613c1c401
Reviewed-on: https://chromium-review.googlesource.com/630999
Commit-Queue: Weidong Guo <weidongg@chromium.org>
Reviewed-by: Xiyuan Xia <xiyuan@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#497228}
Reviewed-on: https://chromium-review.googlesource.com/644366
Reviewed-by: Vadim Tryshev <vadimt@chromium.org>
Cr-Commit-Position: refs/branch-heads/3163@{#1006}
Cr-Branched-From: ff259bab28b35d242e10186cd63af7ed404fae0d-refs/heads/master@{#488528}
[modify] https://crrev.com/37846764b2e165ad2672bda7d3209560c4db00ba/ui/app_list/views/app_list_page.cc
[modify] https://crrev.com/37846764b2e165ad2672bda7d3209560c4db00ba/ui/app_list/views/app_list_page.h
[modify] https://crrev.com/37846764b2e165ad2672bda7d3209560c4db00ba/ui/app_list/views/apps_container_view.cc
[modify] https://crrev.com/37846764b2e165ad2672bda7d3209560c4db00ba/ui/app_list/views/apps_container_view.h
[modify] https://crrev.com/37846764b2e165ad2672bda7d3209560c4db00ba/ui/app_list/views/apps_grid_view.cc
[modify] https://crrev.com/37846764b2e165ad2672bda7d3209560c4db00ba/ui/app_list/views/apps_grid_view.h
[modify] https://crrev.com/37846764b2e165ad2672bda7d3209560c4db00ba/ui/app_list/views/contents_view.cc
[modify] https://crrev.com/37846764b2e165ad2672bda7d3209560c4db00ba/ui/app_list/views/contents_view.h
[modify] https://crrev.com/37846764b2e165ad2672bda7d3209560c4db00ba/ui/app_list/views/search_box_view.cc
[modify] https://crrev.com/37846764b2e165ad2672bda7d3209560c4db00ba/ui/app_list/views/search_box_view.h
[modify] https://crrev.com/37846764b2e165ad2672bda7d3209560c4db00ba/ui/app_list/views/search_result_answer_card_view.cc
[modify] https://crrev.com/37846764b2e165ad2672bda7d3209560c4db00ba/ui/app_list/views/search_result_answer_card_view.h
[modify] https://crrev.com/37846764b2e165ad2672bda7d3209560c4db00ba/ui/app_list/views/search_result_container_view.h
[modify] https://crrev.com/37846764b2e165ad2672bda7d3209560c4db00ba/ui/app_list/views/search_result_list_view.cc
[modify] https://crrev.com/37846764b2e165ad2672bda7d3209560c4db00ba/ui/app_list/views/search_result_list_view.h
[modify] https://crrev.com/37846764b2e165ad2672bda7d3209560c4db00ba/ui/app_list/views/search_result_page_view.cc
[modify] https://crrev.com/37846764b2e165ad2672bda7d3209560c4db00ba/ui/app_list/views/search_result_page_view.h
[modify] https://crrev.com/37846764b2e165ad2672bda7d3209560c4db00ba/ui/app_list/views/search_result_tile_item_list_view.cc
[modify] https://crrev.com/37846764b2e165ad2672bda7d3209560c4db00ba/ui/app_list/views/search_result_tile_item_list_view.h
[modify] https://crrev.com/37846764b2e165ad2672bda7d3209560c4db00ba/ui/app_list/views/suggestions_container_view.cc
[modify] https://crrev.com/37846764b2e165ad2672bda7d3209560c4db00ba/ui/app_list/views/suggestions_container_view.h

Comment 19 by dchan@chromium.org, Jan 22 2018

Status: Archived (was: Fixed)

Sign in to add a comment