New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 910556 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Dec 10
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 2
Type: Bug
Team-Accessibility



Sign in to add a comment

Assistant settings page: unable to reach with keyboard or screen reader

Project Member Reported by leberly@chromium.org, Nov 30

Issue description

Google Chrome	72.0.3623.3 (Official Build) dev (64-bit)
Firmware Version	Google_Eve.9584.174.0

Steps:
# Use a Chromebook with assistant built in, I used Eve
# Enable Assistant's wake word "OK Google"
# Say "OK Google" to launch Assistant UI
# Navigate via tab key to get to the Settings icon and invoke, Settings page loads
# Press tab and arrow keys to navigate the page
Expected: able to reach all settings with keyboard
Actual: only able to reach back and close buttons

This also applies to screen reader users. If you follow the above steps with ChromeVox on, the same applies. You can turn on ChromeVox with ctrl + alt + z. 
 
Assistant Settings_nokeyboardaccess.png
140 KB View Download
Cc: dsexton@chromium.org
+dsexton just for his own reference
Cc: xiy...@chromium.org dmblack@google.com croissant-eng@google.com
It seems ChromeVox is not able to navigate into webview anymore. This seems a regression. The most recent change is that we moved to use content service to create these webviews.

dmblack@ can you help verify if this regression is caused by content service integration?
Labels: a11y-Assistant
Sure, looking into it...
Cc: roc...@chromium.org
I've confirmed that this regression was introduced when we migrated to using the content service.

Ken, I notice that the WebView code has logic to hande forwarding of focus to the underlying web contents:
https://cs.chromium.org/search/?q=focus+file:webview.cc&type=cs

Is there plans to do something similar for the views backing NavigableContentsView?

I did some rough investigation (which only considered the case of LocalViewHost) here:
https://chromium-review.googlesource.com/c/chromium/src/+/1359696
In general the plan for content service is to add features carefully, only as they're needed. This sounds like something we definitely need, though I admit my knowledge of this area (a11y and focus behavior in general) is pretty limited.

Is there any way to test the broken behavior without using assistant specifically? Like do any accessibility features break in a way that can be observed in a developer build?
Owner: rockot@google.com
Status: Started (was: Available)
Oh, nevermind. ChromeVox. Got it. I'll take a look, unless someone else understands this area better and can fix it faster. :)
Thanks for looking into it Ken! :)
Project Member

Comment 10 by bugdroid1@chromium.org, Dec 10

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

commit 71e957aaa499195b5ccb380c66b6a734596cc49d
Author: Ken Rockot <rockot@google.com>
Date: Mon Dec 10 20:49:53 2018

Fix assistant UI focus and ax behavior

This corrects the behavior of UI focus (including Tab cycling) and
accessibility interaction in the Chrome OS Assistant UI. This requires
minimal changes to Assistant code to forward focus events to its
NavigableContents.

More substantial changes are made to Content Service, namely:

- NavigableContents now supports forwarding simple focus events to its
  service-side WebContents impl
- NavigableContents now receives updates about AX tree changes from the
  service-side WebContents impl, and forwards them to the UI subsystem
  within the client process.

Bug:  910556 
Change-Id: Ic7010b966b0a7c5304861780462b6c82685b0184
Reviewed-on: https://chromium-review.googlesource.com/c/1366757
Reviewed-by: Dominic Mazzoni <dmazzoni@chromium.org>
Reviewed-by: Tom Sepez <tsepez@chromium.org>
Reviewed-by: Xiaohui Chen <xiaohuic@chromium.org>
Reviewed-by: Camille Lamy <clamy@chromium.org>
Commit-Queue: Ken Rockot <rockot@google.com>
Cr-Commit-Position: refs/heads/master@{#615244}
[modify] https://crrev.com/71e957aaa499195b5ccb380c66b6a734596cc49d/ash/assistant/ui/assistant_container_view.cc
[modify] https://crrev.com/71e957aaa499195b5ccb380c66b6a734596cc49d/ash/assistant/ui/assistant_container_view_focus_traversable.cc
[modify] https://crrev.com/71e957aaa499195b5ccb380c66b6a734596cc49d/ash/assistant/ui/assistant_web_view.cc
[modify] https://crrev.com/71e957aaa499195b5ccb380c66b6a734596cc49d/ash/assistant/ui/assistant_web_view.h
[modify] https://crrev.com/71e957aaa499195b5ccb380c66b6a734596cc49d/content/browser/content_service_delegate_impl.cc
[modify] https://crrev.com/71e957aaa499195b5ccb380c66b6a734596cc49d/services/content/navigable_contents_delegate.h
[modify] https://crrev.com/71e957aaa499195b5ccb380c66b6a734596cc49d/services/content/navigable_contents_impl.cc
[modify] https://crrev.com/71e957aaa499195b5ccb380c66b6a734596cc49d/services/content/navigable_contents_impl.h
[modify] https://crrev.com/71e957aaa499195b5ccb380c66b6a734596cc49d/services/content/public/cpp/BUILD.gn
[modify] https://crrev.com/71e957aaa499195b5ccb380c66b6a734596cc49d/services/content/public/cpp/DEPS
[modify] https://crrev.com/71e957aaa499195b5ccb380c66b6a734596cc49d/services/content/public/cpp/navigable_contents.cc
[modify] https://crrev.com/71e957aaa499195b5ccb380c66b6a734596cc49d/services/content/public/cpp/navigable_contents.h
[modify] https://crrev.com/71e957aaa499195b5ccb380c66b6a734596cc49d/services/content/public/cpp/navigable_contents_view.cc
[modify] https://crrev.com/71e957aaa499195b5ccb380c66b6a734596cc49d/services/content/public/cpp/navigable_contents_view.h
[modify] https://crrev.com/71e957aaa499195b5ccb380c66b6a734596cc49d/services/content/public/cpp/test/fake_navigable_contents.cc
[modify] https://crrev.com/71e957aaa499195b5ccb380c66b6a734596cc49d/services/content/public/cpp/test/fake_navigable_contents.h
[modify] https://crrev.com/71e957aaa499195b5ccb380c66b6a734596cc49d/services/content/public/mojom/BUILD.gn
[modify] https://crrev.com/71e957aaa499195b5ccb380c66b6a734596cc49d/services/content/public/mojom/navigable_contents.mojom
[modify] https://crrev.com/71e957aaa499195b5ccb380c66b6a734596cc49d/services/content/service_unittest.cc

Status: Fixed (was: Started)

Sign in to add a comment