New issue
Advanced search Search tips

Issue 851578 link

Starred by 2 users

Issue metadata

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

Blocking:
issue 841020



Sign in to add a comment

ws: ChromeVox support for Window Services views mojo apps

Project Member Reported by msw@chromium.org, Jun 11 2018

Issue description

ws: ChromeVox support for Window Services views mojo apps
(1) Launch chromeos with --keyboard-shortcut-viewer-app
(2) Open Keyboard Shortcut Viewer Ctrl-Alt-/
(3) Open ChromeVox Ctrl-Alt-Z
(4) Try to tab through the window's elements
Expected: ChromeVox focuses and verbalizes window elements
Actual: Nothing besides the window title is spoken/focused

We probably need to plumb the views ax tree/interaction over mojo?
There may be an existing bug filed for that? Issue 756054?
We should audit other a11y integration with the app.
 
Status: Started (was: Assigned)
Project Member

Comment 2 by bugdroid1@chromium.org, Jun 19 2018

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

commit dfd53f11533c7d0861541e78e982e89f2dd33043
Author: James Cook <jamescook@chromium.org>
Date: Tue Jun 19 20:49:03 2018

Add InitParams for views::AuraInit

It's up to 7 parameters and I'm about to add an 8th.

Bug:  851578 
Test: existing tests
Change-Id: I5dbfb98c90861a334ef9046cec4d69fb756879a1
Reviewed-on: https://chromium-review.googlesource.com/1106431
Reviewed-by: Scott Violet <sky@chromium.org>
Commit-Queue: James Cook <jamescook@chromium.org>
Cr-Commit-Position: refs/heads/master@{#568594}
[modify] https://crrev.com/dfd53f11533c7d0861541e78e982e89f2dd33043/ash/components/autoclick/autoclick_application.cc
[modify] https://crrev.com/dfd53f11533c7d0861541e78e982e89f2dd33043/ash/components/quick_launch/quick_launch_application.cc
[modify] https://crrev.com/dfd53f11533c7d0861541e78e982e89f2dd33043/ash/components/shortcut_viewer/shortcut_viewer_application.cc
[modify] https://crrev.com/dfd53f11533c7d0861541e78e982e89f2dd33043/ash/components/tap_visualizer/tap_visualizer_app.cc
[modify] https://crrev.com/dfd53f11533c7d0861541e78e982e89f2dd33043/ash/window_manager_service.cc
[modify] https://crrev.com/dfd53f11533c7d0861541e78e982e89f2dd33043/mash/catalog_viewer/catalog_viewer.cc
[modify] https://crrev.com/dfd53f11533c7d0861541e78e982e89f2dd33043/mash/example/views_examples/views_examples.cc
[modify] https://crrev.com/dfd53f11533c7d0861541e78e982e89f2dd33043/mash/example/window_type_launcher/window_type_launcher.cc
[modify] https://crrev.com/dfd53f11533c7d0861541e78e982e89f2dd33043/mash/simple_wm/simple_wm.cc
[modify] https://crrev.com/dfd53f11533c7d0861541e78e982e89f2dd33043/mash/task_viewer/task_viewer.cc
[modify] https://crrev.com/dfd53f11533c7d0861541e78e982e89f2dd33043/ui/views/mus/aura_init.cc
[modify] https://crrev.com/dfd53f11533c7d0861541e78e982e89f2dd33043/ui/views/mus/aura_init.h

Project Member

Comment 3 by bugdroid1@chromium.org, Jun 20 2018

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

commit e959c2d7418e28eaf18df776bf039a16cfd8a8dd
Author: weiliangc <weiliangc@chromium.org>
Date: Wed Jun 20 01:16:21 2018

Revert "Add InitParams for views::AuraInit"

This reverts commit dfd53f11533c7d0861541e78e982e89f2dd33043.

Reason for revert: GPU FYI Windows bots compile failure
 crbug.com/854442 

Compile error:
[40824/45748] LINK task_viewer.service.exe task_viewer.service.exe.pdb
FAILED: task_viewer.service.exe task_viewer.service.exe.pdb 
C:/b/swarming/w/ir/cache/vpython/80ee9f/Scripts/python.exe ../../build/toolchain/win/tool_wrapper.py link-wrapper environment.x64 False ../../third_party/llvm-build/Release+Asserts/bin/lld-link.exe /nologo /OUT:./task_viewer.service.exe /PDB:./task_viewer.service.exe.pdb @./task_viewer.service.exe.rsp
C:\b\swarming\w\ir\cache\builder\src\third_party\llvm-build\Release+Asserts\bin\lld-link.exe: error: undefined symbol: ??0InitParams@AuraInit@views@@QEAA@XZ
>>> referenced by obj/mash/task_viewer/lib/task_viewer.obj:(?OnStart@TaskViewer@task_viewer@mash@@EEAAXXZ)
C:\b\swarming\w\ir\cache\builder\src\third_party\llvm-build\Release+Asserts\bin\lld-link.exe: error: undefined symbol: ??1InitParams@AuraInit@views@@QEAA@XZ
>>> referenced by obj/mash/task_viewer/lib/task_viewer.obj:(?OnStart@TaskViewer@task_viewer@mash@@EEAAXXZ)

Original change's description:
> Add InitParams for views::AuraInit
> 
> It's up to 7 parameters and I'm about to add an 8th.
> 
> Bug:  851578 
> Test: existing tests
> Change-Id: I5dbfb98c90861a334ef9046cec4d69fb756879a1
> Reviewed-on: https://chromium-review.googlesource.com/1106431
> Reviewed-by: Scott Violet <sky@chromium.org>
> Commit-Queue: James Cook <jamescook@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#568594}

TBR=jamescook@chromium.org,sky@chromium.org

Change-Id: Iea7d59178394a95cbc6f419cd7079d00d66a8ac6
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug:  851578 ,  854442 
Reviewed-on: https://chromium-review.googlesource.com/1107139
Reviewed-by: weiliangc <weiliangc@chromium.org>
Commit-Queue: weiliangc <weiliangc@chromium.org>
Cr-Commit-Position: refs/heads/master@{#568678}
[modify] https://crrev.com/e959c2d7418e28eaf18df776bf039a16cfd8a8dd/ash/components/autoclick/autoclick_application.cc
[modify] https://crrev.com/e959c2d7418e28eaf18df776bf039a16cfd8a8dd/ash/components/quick_launch/quick_launch_application.cc
[modify] https://crrev.com/e959c2d7418e28eaf18df776bf039a16cfd8a8dd/ash/components/shortcut_viewer/shortcut_viewer_application.cc
[modify] https://crrev.com/e959c2d7418e28eaf18df776bf039a16cfd8a8dd/ash/components/tap_visualizer/tap_visualizer_app.cc
[modify] https://crrev.com/e959c2d7418e28eaf18df776bf039a16cfd8a8dd/ash/window_manager_service.cc
[modify] https://crrev.com/e959c2d7418e28eaf18df776bf039a16cfd8a8dd/mash/catalog_viewer/catalog_viewer.cc
[modify] https://crrev.com/e959c2d7418e28eaf18df776bf039a16cfd8a8dd/mash/example/views_examples/views_examples.cc
[modify] https://crrev.com/e959c2d7418e28eaf18df776bf039a16cfd8a8dd/mash/example/window_type_launcher/window_type_launcher.cc
[modify] https://crrev.com/e959c2d7418e28eaf18df776bf039a16cfd8a8dd/mash/simple_wm/simple_wm.cc
[modify] https://crrev.com/e959c2d7418e28eaf18df776bf039a16cfd8a8dd/mash/task_viewer/task_viewer.cc
[modify] https://crrev.com/e959c2d7418e28eaf18df776bf039a16cfd8a8dd/ui/views/mus/aura_init.cc
[modify] https://crrev.com/e959c2d7418e28eaf18df776bf039a16cfd8a8dd/ui/views/mus/aura_init.h

Project Member

Comment 4 by bugdroid1@chromium.org, Jun 20 2018

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

commit fc1b03375d01bfd52272e49e72694c00b3f6d16f
Author: James Cook <jamescook@chromium.org>
Date: Wed Jun 20 16:18:27 2018

Reland "Add InitParams for views::AuraInit"

This reverts commit e959c2d7418e28eaf18df776bf039a16cfd8a8dd.

Fixed by adding EXPORT macro on the new struct.

Original change's description:
> Revert "Add InitParams for views::AuraInit"
>
> This reverts commit dfd53f11533c7d0861541e78e982e89f2dd33043.
>
> Reason for revert: GPU FYI Windows bots compile failure
>  crbug.com/854442 
>
> Compile error:
> [40824/45748] LINK task_viewer.service.exe task_viewer.service.exe.pdb
> FAILED: task_viewer.service.exe task_viewer.service.exe.pdb
> C:/b/swarming/w/ir/cache/vpython/80ee9f/Scripts/python.exe ../../build/toolchain/win/tool_wrapper.py link-wrapper environment.x64 False ../../third_party/llvm-build/Release+Asserts/bin/lld-link.exe /nologo /OUT:./task_viewer.service.exe /PDB:./task_viewer.service.exe.pdb @./task_viewer.service.exe.rsp
> C:\b\swarming\w\ir\cache\builder\src\third_party\llvm-build\Release+Asserts\bin\lld-link.exe: error: undefined symbol: ??0InitParams@AuraInit@views@@QEAA@XZ
> >>> referenced by obj/mash/task_viewer/lib/task_viewer.obj:(?OnStart@TaskViewer@task_viewer@mash@@EEAAXXZ)
> C:\b\swarming\w\ir\cache\builder\src\third_party\llvm-build\Release+Asserts\bin\lld-link.exe: error: undefined symbol: ??1InitParams@AuraInit@views@@QEAA@XZ
> >>> referenced by obj/mash/task_viewer/lib/task_viewer.obj:(?OnStart@TaskViewer@task_viewer@mash@@EEAAXXZ)
>
> Original change's description:
> > Add InitParams for views::AuraInit
> >
> > It's up to 7 parameters and I'm about to add an 8th.
> >
> > Bug:  851578 
> > Test: existing tests
> > Change-Id: I5dbfb98c90861a334ef9046cec4d69fb756879a1
> > Reviewed-on: https://chromium-review.googlesource.com/1106431
> > Reviewed-by: Scott Violet <sky@chromium.org>
> > Commit-Queue: James Cook <jamescook@chromium.org>
> > Cr-Commit-Position: refs/heads/master@{#568594}
>
> TBR=jamescook@chromium.org,sky@chromium.org
>
> Change-Id: Iea7d59178394a95cbc6f419cd7079d00d66a8ac6
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Bug:  851578 ,  854442 
> Reviewed-on: https://chromium-review.googlesource.com/1107139
> Reviewed-by: weiliangc <weiliangc@chromium.org>
> Commit-Queue: weiliangc <weiliangc@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#568678}

TBR=jamescook@chromium.org,sky@chromium.org,weiliangc@chromium.org

Change-Id: Id0a3e75d0e02c87165375ecc345553041ecc4252
Bug:  851578 ,  854442 
Reviewed-on: https://chromium-review.googlesource.com/1107997
Reviewed-by: Scott Violet <sky@chromium.org>
Reviewed-by: James Cook <jamescook@chromium.org>
Commit-Queue: James Cook <jamescook@chromium.org>
Cr-Commit-Position: refs/heads/master@{#568862}
[modify] https://crrev.com/fc1b03375d01bfd52272e49e72694c00b3f6d16f/ash/components/autoclick/autoclick_application.cc
[modify] https://crrev.com/fc1b03375d01bfd52272e49e72694c00b3f6d16f/ash/components/quick_launch/quick_launch_application.cc
[modify] https://crrev.com/fc1b03375d01bfd52272e49e72694c00b3f6d16f/ash/components/shortcut_viewer/shortcut_viewer_application.cc
[modify] https://crrev.com/fc1b03375d01bfd52272e49e72694c00b3f6d16f/ash/components/tap_visualizer/tap_visualizer_app.cc
[modify] https://crrev.com/fc1b03375d01bfd52272e49e72694c00b3f6d16f/ash/window_manager_service.cc
[modify] https://crrev.com/fc1b03375d01bfd52272e49e72694c00b3f6d16f/mash/catalog_viewer/catalog_viewer.cc
[modify] https://crrev.com/fc1b03375d01bfd52272e49e72694c00b3f6d16f/mash/example/views_examples/views_examples.cc
[modify] https://crrev.com/fc1b03375d01bfd52272e49e72694c00b3f6d16f/mash/example/window_type_launcher/window_type_launcher.cc
[modify] https://crrev.com/fc1b03375d01bfd52272e49e72694c00b3f6d16f/mash/simple_wm/simple_wm.cc
[modify] https://crrev.com/fc1b03375d01bfd52272e49e72694c00b3f6d16f/mash/task_viewer/task_viewer.cc
[modify] https://crrev.com/fc1b03375d01bfd52272e49e72694c00b3f6d16f/ui/views/mus/aura_init.cc
[modify] https://crrev.com/fc1b03375d01bfd52272e49e72694c00b3f6d16f/ui/views/mus/aura_init.h

Project Member

Comment 5 by bugdroid1@chromium.org, Jun 26 2018

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

commit d3330fe004e76a6b4b8b8042efa1669116ee0502
Author: James Cook <jamescook@chromium.org>
Date: Tue Jun 26 17:41:26 2018

Add AXEvent mojo serializer

Supporting ChromeVox for out-of-process views applications requires the
ability to serialize ui::AXEvent over mojo.

Split out of https://chromium-review.googlesource.com/1099572 because
that CL is getting too big.

Bug:  851578 
Change-Id: Id92f9025e880f3e7d2055c0f445152330a468d9b
Reviewed-on: https://chromium-review.googlesource.com/1114139
Reviewed-by: Dominic Mazzoni <dmazzoni@chromium.org>
Reviewed-by: Tom Sepez <tsepez@chromium.org>
Commit-Queue: James Cook <jamescook@chromium.org>
Cr-Commit-Position: refs/heads/master@{#570455}
[modify] https://crrev.com/d3330fe004e76a6b4b8b8042efa1669116ee0502/ui/accessibility/BUILD.gn
[modify] https://crrev.com/d3330fe004e76a6b4b8b8042efa1669116ee0502/ui/accessibility/mojom/BUILD.gn
[add] https://crrev.com/d3330fe004e76a6b4b8b8042efa1669116ee0502/ui/accessibility/mojom/ax_event.mojom
[add] https://crrev.com/d3330fe004e76a6b4b8b8042efa1669116ee0502/ui/accessibility/mojom/ax_event.typemap
[add] https://crrev.com/d3330fe004e76a6b4b8b8042efa1669116ee0502/ui/accessibility/mojom/ax_event_mojom_traits.cc
[add] https://crrev.com/d3330fe004e76a6b4b8b8042efa1669116ee0502/ui/accessibility/mojom/ax_event_mojom_traits.h
[add] https://crrev.com/d3330fe004e76a6b4b8b8042efa1669116ee0502/ui/accessibility/mojom/ax_event_mojom_traits_unittest.cc
[modify] https://crrev.com/d3330fe004e76a6b4b8b8042efa1669116ee0502/ui/accessibility/mojom/typemaps.gni

Project Member

Comment 6 by bugdroid1@chromium.org, Jun 28 2018

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

commit db17de0f04a29ad62ff60a199a20bb24aea629d5
Author: James Cook <jamescook@chromium.org>
Date: Thu Jun 28 20:40:52 2018

OopAsh: Support accessibility trees for out-of-process mojo apps

This makes spoken feedback work in the shortcut_viewer app.

* AXHostService in the browser receives AX node trees and events from
  remote apps and forwards them to the ChromeVox extension
* AXHostServiceClient sends the initial tree from the remote app
  when ChromeVox is enabled. It sends updates when MusViewsDelegate
  sees views events (similar to ChromeViewsDelegate in browser).
* The node tree comes from the widget's client area because oop-ash
  creates a widget in both the window manager (for its frame) and
  in the client app (in case it wants to draw a frame). For now
  we assume the window manager owns the frame.

TODOs:
* Focus support
* Multiple widgets in client app
* Multiple client apps

TBR=sky@chromium.org
NOPRESUBMIT=true

Bug:  851578 
Change-Id: I92a9fb7dbead9b329b0e4ea12d238428a63b4212
Reviewed-on: https://chromium-review.googlesource.com/1099572
Commit-Queue: James Cook <jamescook@chromium.org>
Reviewed-by: Tom Sepez <tsepez@chromium.org>
Reviewed-by: James Cook <jamescook@chromium.org>
Reviewed-by: Dominic Mazzoni <dmazzoni@chromium.org>
Reviewed-by: Michael Wasserman <msw@chromium.org>
Cr-Commit-Position: refs/heads/master@{#571249}
[modify] https://crrev.com/db17de0f04a29ad62ff60a199a20bb24aea629d5/ash/components/shortcut_viewer/shortcut_viewer_application.cc
[modify] https://crrev.com/db17de0f04a29ad62ff60a199a20bb24aea629d5/ash/components/shortcut_viewer/views/keyboard_shortcut_view.cc
[modify] https://crrev.com/db17de0f04a29ad62ff60a199a20bb24aea629d5/ash/wm/non_client_frame_controller.cc
[modify] https://crrev.com/db17de0f04a29ad62ff60a199a20bb24aea629d5/chrome/app/BUILD.gn
[modify] https://crrev.com/db17de0f04a29ad62ff60a199a20bb24aea629d5/chrome/browser/ash_service_registry.cc
[modify] https://crrev.com/db17de0f04a29ad62ff60a199a20bb24aea629d5/chrome/browser/chrome_content_browser_client.cc
[modify] https://crrev.com/db17de0f04a29ad62ff60a199a20bb24aea629d5/chrome/browser/chrome_content_browser_manifest_overlay.json
[modify] https://crrev.com/db17de0f04a29ad62ff60a199a20bb24aea629d5/chrome/browser/chromeos/BUILD.gn
[add] https://crrev.com/db17de0f04a29ad62ff60a199a20bb24aea629d5/chrome/browser/chromeos/accessibility/ax_host_service.cc
[add] https://crrev.com/db17de0f04a29ad62ff60a199a20bb24aea629d5/chrome/browser/chromeos/accessibility/ax_host_service.h
[add] https://crrev.com/db17de0f04a29ad62ff60a199a20bb24aea629d5/chrome/browser/chromeos/accessibility/ax_host_service_unittest.cc
[modify] https://crrev.com/db17de0f04a29ad62ff60a199a20bb24aea629d5/chrome/browser/ui/ash/ksv/keyboard_shortcut_viewer_util.cc
[modify] https://crrev.com/db17de0f04a29ad62ff60a199a20bb24aea629d5/chrome/browser/ui/aura/accessibility/automation_manager_aura.cc
[modify] https://crrev.com/db17de0f04a29ad62ff60a199a20bb24aea629d5/chrome/browser/ui/aura/accessibility/ax_root_obj_wrapper.h
[modify] https://crrev.com/db17de0f04a29ad62ff60a199a20bb24aea629d5/ui/accessibility/BUILD.gn
[modify] https://crrev.com/db17de0f04a29ad62ff60a199a20bb24aea629d5/ui/accessibility/OWNERS
[add] https://crrev.com/db17de0f04a29ad62ff60a199a20bb24aea629d5/ui/accessibility/ax_host_service_manifest.json
[modify] https://crrev.com/db17de0f04a29ad62ff60a199a20bb24aea629d5/ui/accessibility/mojom/BUILD.gn
[add] https://crrev.com/db17de0f04a29ad62ff60a199a20bb24aea629d5/ui/accessibility/mojom/ax_host.mojom
[modify] https://crrev.com/db17de0f04a29ad62ff60a199a20bb24aea629d5/ui/views/accessibility/ax_aura_obj_cache.h
[modify] https://crrev.com/db17de0f04a29ad62ff60a199a20bb24aea629d5/ui/views/mus/BUILD.gn
[modify] https://crrev.com/db17de0f04a29ad62ff60a199a20bb24aea629d5/ui/views/mus/aura_init.cc
[modify] https://crrev.com/db17de0f04a29ad62ff60a199a20bb24aea629d5/ui/views/mus/aura_init.h
[add] https://crrev.com/db17de0f04a29ad62ff60a199a20bb24aea629d5/ui/views/mus/ax_remote_host.cc
[add] https://crrev.com/db17de0f04a29ad62ff60a199a20bb24aea629d5/ui/views/mus/ax_remote_host.h
[add] https://crrev.com/db17de0f04a29ad62ff60a199a20bb24aea629d5/ui/views/mus/ax_remote_host_unittest.cc
[add] https://crrev.com/db17de0f04a29ad62ff60a199a20bb24aea629d5/ui/views/mus/ax_tree_source_mus.cc
[add] https://crrev.com/db17de0f04a29ad62ff60a199a20bb24aea629d5/ui/views/mus/ax_tree_source_mus.h
[add] https://crrev.com/db17de0f04a29ad62ff60a199a20bb24aea629d5/ui/views/mus/ax_tree_source_mus_unittest.cc
[modify] https://crrev.com/db17de0f04a29ad62ff60a199a20bb24aea629d5/ui/views/mus/desktop_window_tree_host_mus.cc
[modify] https://crrev.com/db17de0f04a29ad62ff60a199a20bb24aea629d5/ui/views/mus/mus_client.cc
[modify] https://crrev.com/db17de0f04a29ad62ff60a199a20bb24aea629d5/ui/views/mus/mus_client.h
[add] https://crrev.com/db17de0f04a29ad62ff60a199a20bb24aea629d5/ui/views/mus/mus_client_test_api.h
[modify] https://crrev.com/db17de0f04a29ad62ff60a199a20bb24aea629d5/ui/views/mus/mus_views_delegate.cc
[modify] https://crrev.com/db17de0f04a29ad62ff60a199a20bb24aea629d5/ui/views/mus/mus_views_delegate.h

Project Member

Comment 7 by bugdroid1@chromium.org, Jun 29 2018

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

commit 2f29d8e838efd3261f47d8eea2f0bf3d7a29ac88
Author: James Cook <jamescook@chromium.org>
Date: Fri Jun 29 22:05:18 2018

a11y: Extract base class AXTreeSourceViews

AXTreeSourceAura and AXTreeSourceMus share code, so extract a common
base class.

Bug:  851578 
Test: views_unittests, views_mus_unittests, unit_tests
Change-Id: I64a245dc6cdb97aaba8e2e05c0a6c7d008a38ef5
Reviewed-on: https://chromium-review.googlesource.com/1117918
Reviewed-by: Dominic Mazzoni <dmazzoni@chromium.org>
Reviewed-by: Michael Wasserman <msw@chromium.org>
Commit-Queue: James Cook <jamescook@chromium.org>
Cr-Commit-Position: refs/heads/master@{#571662}
[modify] https://crrev.com/2f29d8e838efd3261f47d8eea2f0bf3d7a29ac88/chrome/browser/ui/ash/accessibility/ax_tree_source_aura_unittest.cc
[modify] https://crrev.com/2f29d8e838efd3261f47d8eea2f0bf3d7a29ac88/chrome/browser/ui/aura/accessibility/ax_tree_source_aura.cc
[modify] https://crrev.com/2f29d8e838efd3261f47d8eea2f0bf3d7a29ac88/chrome/browser/ui/aura/accessibility/ax_tree_source_aura.h
[modify] https://crrev.com/2f29d8e838efd3261f47d8eea2f0bf3d7a29ac88/ui/views/BUILD.gn
[add] https://crrev.com/2f29d8e838efd3261f47d8eea2f0bf3d7a29ac88/ui/views/accessibility/ax_tree_source_views.cc
[add] https://crrev.com/2f29d8e838efd3261f47d8eea2f0bf3d7a29ac88/ui/views/accessibility/ax_tree_source_views.h
[add] https://crrev.com/2f29d8e838efd3261f47d8eea2f0bf3d7a29ac88/ui/views/accessibility/ax_tree_source_views_unittest.cc
[modify] https://crrev.com/2f29d8e838efd3261f47d8eea2f0bf3d7a29ac88/ui/views/mus/ax_tree_source_mus.cc
[modify] https://crrev.com/2f29d8e838efd3261f47d8eea2f0bf3d7a29ac88/ui/views/mus/ax_tree_source_mus.h
[modify] https://crrev.com/2f29d8e838efd3261f47d8eea2f0bf3d7a29ac88/ui/views/mus/ax_tree_source_mus_unittest.cc

Project Member

Comment 8 by bugdroid1@chromium.org, Jun 30 2018

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

commit 551f89b3d46f47c2952f9d2d235a662bd37325d9
Author: James Cook <jamescook@chromium.org>
Date: Sat Jun 30 01:20:00 2018

OopAsh: Wire up accessibility PerformAction for remote mojo apps

When an accessibility extension requests an action the request comes
into the browser process AutomationManagerAura. We send the action data
over mojo to the remote app and dispatch it there using the existing
views toolkit accessibility code.

TBR=slan@chromium.org

Bug:  851578 
Test: added unit tests
Change-Id: I37fde88af43de4cee45ca563d4b279a3ddeb02d6
Reviewed-on: https://chromium-review.googlesource.com/1118828
Reviewed-by: James Cook <jamescook@chromium.org>
Reviewed-by: Dominic Mazzoni <dmazzoni@chromium.org>
Reviewed-by: Tom Sepez <tsepez@chromium.org>
Commit-Queue: James Cook <jamescook@chromium.org>
Cr-Commit-Position: refs/heads/master@{#571732}
[modify] https://crrev.com/551f89b3d46f47c2952f9d2d235a662bd37325d9/chrome/browser/chromeos/accessibility/ax_host_service.cc
[modify] https://crrev.com/551f89b3d46f47c2952f9d2d235a662bd37325d9/chrome/browser/chromeos/accessibility/ax_host_service.h
[modify] https://crrev.com/551f89b3d46f47c2952f9d2d235a662bd37325d9/chrome/browser/chromeos/accessibility/ax_host_service_unittest.cc
[modify] https://crrev.com/551f89b3d46f47c2952f9d2d235a662bd37325d9/chrome/browser/chromeos/arc/accessibility/arc_accessibility_helper_bridge.cc
[modify] https://crrev.com/551f89b3d46f47c2952f9d2d235a662bd37325d9/chromecast/browser/ui/aura/accessibility/ax_tree_source_aura.cc
[modify] https://crrev.com/551f89b3d46f47c2952f9d2d235a662bd37325d9/ui/accessibility/BUILD.gn
[modify] https://crrev.com/551f89b3d46f47c2952f9d2d235a662bd37325d9/ui/accessibility/ax_action_data.h
[modify] https://crrev.com/551f89b3d46f47c2952f9d2d235a662bd37325d9/ui/accessibility/ax_host_delegate.h
[modify] https://crrev.com/551f89b3d46f47c2952f9d2d235a662bd37325d9/ui/accessibility/mojom/BUILD.gn
[add] https://crrev.com/551f89b3d46f47c2952f9d2d235a662bd37325d9/ui/accessibility/mojom/ax_action_data.mojom
[add] https://crrev.com/551f89b3d46f47c2952f9d2d235a662bd37325d9/ui/accessibility/mojom/ax_action_data.typemap
[add] https://crrev.com/551f89b3d46f47c2952f9d2d235a662bd37325d9/ui/accessibility/mojom/ax_action_data_mojom_traits.cc
[add] https://crrev.com/551f89b3d46f47c2952f9d2d235a662bd37325d9/ui/accessibility/mojom/ax_action_data_mojom_traits.h
[add] https://crrev.com/551f89b3d46f47c2952f9d2d235a662bd37325d9/ui/accessibility/mojom/ax_action_data_mojom_traits_unittest.cc
[modify] https://crrev.com/551f89b3d46f47c2952f9d2d235a662bd37325d9/ui/accessibility/mojom/ax_host.mojom
[modify] https://crrev.com/551f89b3d46f47c2952f9d2d235a662bd37325d9/ui/accessibility/mojom/typemaps.gni
[modify] https://crrev.com/551f89b3d46f47c2952f9d2d235a662bd37325d9/ui/views/mus/ax_remote_host.cc
[modify] https://crrev.com/551f89b3d46f47c2952f9d2d235a662bd37325d9/ui/views/mus/ax_remote_host.h
[modify] https://crrev.com/551f89b3d46f47c2952f9d2d235a662bd37325d9/ui/views/mus/ax_remote_host_unittest.cc

Project Member

Comment 9 by bugdroid1@chromium.org, Jul 2

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

commit a6f0dbf74599a22d703662a6399f37df5eca50c6
Author: James Cook <jamescook@chromium.org>
Date: Mon Jul 02 19:10:20 2018

Convert AXActionData.value from string16 to string

Accessibility values are typically UTF-8 strings.

This addresses a comment on:
https://chromium-review.googlesource.com/c/chromium/src/+/1118828

TBR=rmrossi@chromium.org

Bug:  851578 
Test: bots
Change-Id: I05f5cf68d5731b3c22956d86da3a2e865cd8bf1d
Reviewed-on: https://chromium-review.googlesource.com/1121539
Reviewed-by: Tom Sepez <tsepez@chromium.org>
Reviewed-by: James Cook <jamescook@chromium.org>
Reviewed-by: Dominic Mazzoni <dmazzoni@chromium.org>
Commit-Queue: James Cook <jamescook@chromium.org>
Cr-Commit-Position: refs/heads/master@{#571959}
[modify] https://crrev.com/a6f0dbf74599a22d703662a6399f37df5eca50c6/chrome/browser/extensions/api/automation_internal/automation_internal_api.cc
[modify] https://crrev.com/a6f0dbf74599a22d703662a6399f37df5eca50c6/chrome/browser/ui/views/omnibox/omnibox_view_views.cc
[modify] https://crrev.com/a6f0dbf74599a22d703662a6399f37df5eca50c6/chromecast/browser/extensions/api/automation_internal/automation_internal_api.cc
[modify] https://crrev.com/a6f0dbf74599a22d703662a6399f37df5eca50c6/content/browser/accessibility/browser_accessibility_manager.cc
[modify] https://crrev.com/a6f0dbf74599a22d703662a6399f37df5eca50c6/content/browser/accessibility/browser_accessibility_manager.h
[modify] https://crrev.com/a6f0dbf74599a22d703662a6399f37df5eca50c6/content/browser/accessibility/web_contents_accessibility_android.cc
[modify] https://crrev.com/a6f0dbf74599a22d703662a6399f37df5eca50c6/content/renderer/accessibility/render_accessibility_impl.cc
[modify] https://crrev.com/a6f0dbf74599a22d703662a6399f37df5eca50c6/ui/accessibility/ax_action_data.h
[modify] https://crrev.com/a6f0dbf74599a22d703662a6399f37df5eca50c6/ui/accessibility/mojom/ax_action_data.mojom
[modify] https://crrev.com/a6f0dbf74599a22d703662a6399f37df5eca50c6/ui/accessibility/mojom/ax_action_data_mojom_traits.h
[modify] https://crrev.com/a6f0dbf74599a22d703662a6399f37df5eca50c6/ui/accessibility/mojom/ax_action_data_mojom_traits_unittest.cc
[modify] https://crrev.com/a6f0dbf74599a22d703662a6399f37df5eca50c6/ui/accessibility/platform/ax_platform_node_mac.mm
[modify] https://crrev.com/a6f0dbf74599a22d703662a6399f37df5eca50c6/ui/accessibility/platform/ax_platform_node_win.cc
[modify] https://crrev.com/a6f0dbf74599a22d703662a6399f37df5eca50c6/ui/views/controls/textfield/textfield.cc

Project Member

Comment 10 by bugdroid1@chromium.org, Jul 19

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

commit a0692e97e6e018072e35a47877f00261806bd1b2
Author: James Cook <jamescook@chromium.org>
Date: Thu Jul 19 18:34:13 2018

Add accessibility focus support for remote mojo apps

Needed to support ChromeVox in the keyboard shortcut viewer app.

Changes the AX hierarchy connection point between the browser's
AX tree and the remote app's tree from the client_view to the
ContentsView. This allows the browser/ash to place focus on
their widget's ContentsView, which is a leaf node in the AX tree.

The remote app's Widget's root, client, and non-client views are
tagged as "invalid" nodes in the AX tree. This ensures that the
ContentsView is the root of the AX tree hierarchy in the remote
app.

The end results is we glue together a leaf in the browser/ash
and a root in the remote app. The AX extension knows how to
handle focus tracking in this case.

BUG= 851578 
TEST=added unit tests

Change-Id: Ibaddd316fb5d3f6789111eceab3f4dde93999885
Reviewed-on: https://chromium-review.googlesource.com/1123654
Commit-Queue: Michael Wasserman <msw@chromium.org>
Reviewed-by: Dominic Mazzoni <dmazzoni@chromium.org>
Reviewed-by: Alex Sakhartchouk <alexst@chromium.org>
Reviewed-by: Michael Wasserman <msw@chromium.org>
Cr-Commit-Position: refs/heads/master@{#576568}
[modify] https://crrev.com/a0692e97e6e018072e35a47877f00261806bd1b2/ash/BUILD.gn
[modify] https://crrev.com/a0692e97e6e018072e35a47877f00261806bd1b2/ash/components/shortcut_viewer/views/keyboard_shortcut_view.cc
[modify] https://crrev.com/a0692e97e6e018072e35a47877f00261806bd1b2/ash/components/shortcut_viewer/views/keyboard_shortcut_view.h
[modify] https://crrev.com/a0692e97e6e018072e35a47877f00261806bd1b2/ash/wm/non_client_frame_controller.cc
[modify] https://crrev.com/a0692e97e6e018072e35a47877f00261806bd1b2/ash/wm/non_client_frame_controller.h
[modify] https://crrev.com/a0692e97e6e018072e35a47877f00261806bd1b2/ash/wm/non_client_frame_controller_unittest.cc
[modify] https://crrev.com/a0692e97e6e018072e35a47877f00261806bd1b2/chrome/browser/ui/aura/accessibility/ax_root_obj_wrapper.cc
[modify] https://crrev.com/a0692e97e6e018072e35a47877f00261806bd1b2/chrome/browser/ui/aura/accessibility/ax_root_obj_wrapper.h
[modify] https://crrev.com/a0692e97e6e018072e35a47877f00261806bd1b2/chrome/browser/ui/aura/accessibility/ax_tree_source_aura.cc
[modify] https://crrev.com/a0692e97e6e018072e35a47877f00261806bd1b2/chrome/browser/ui/aura/accessibility/ax_tree_source_aura.h
[modify] https://crrev.com/a0692e97e6e018072e35a47877f00261806bd1b2/chromecast/browser/ui/aura/accessibility/ax_root_obj_wrapper.cc
[modify] https://crrev.com/a0692e97e6e018072e35a47877f00261806bd1b2/chromecast/browser/ui/aura/accessibility/ax_root_obj_wrapper.h
[modify] https://crrev.com/a0692e97e6e018072e35a47877f00261806bd1b2/ui/accessibility/platform/ax_unique_id.cc
[modify] https://crrev.com/a0692e97e6e018072e35a47877f00261806bd1b2/ui/views/accessibility/ax_aura_obj_wrapper.h
[modify] https://crrev.com/a0692e97e6e018072e35a47877f00261806bd1b2/ui/views/accessibility/ax_tree_source_views.cc
[modify] https://crrev.com/a0692e97e6e018072e35a47877f00261806bd1b2/ui/views/accessibility/ax_tree_source_views_unittest.cc
[modify] https://crrev.com/a0692e97e6e018072e35a47877f00261806bd1b2/ui/views/accessibility/ax_view_obj_wrapper.cc
[modify] https://crrev.com/a0692e97e6e018072e35a47877f00261806bd1b2/ui/views/accessibility/ax_view_obj_wrapper.h
[modify] https://crrev.com/a0692e97e6e018072e35a47877f00261806bd1b2/ui/views/accessibility/ax_widget_obj_wrapper.cc
[modify] https://crrev.com/a0692e97e6e018072e35a47877f00261806bd1b2/ui/views/accessibility/ax_widget_obj_wrapper.h
[modify] https://crrev.com/a0692e97e6e018072e35a47877f00261806bd1b2/ui/views/accessibility/ax_window_obj_wrapper.cc
[modify] https://crrev.com/a0692e97e6e018072e35a47877f00261806bd1b2/ui/views/accessibility/ax_window_obj_wrapper.h
[modify] https://crrev.com/a0692e97e6e018072e35a47877f00261806bd1b2/ui/views/accessibility/view_accessibility.h
[modify] https://crrev.com/a0692e97e6e018072e35a47877f00261806bd1b2/ui/views/mus/ax_remote_host.cc
[modify] https://crrev.com/a0692e97e6e018072e35a47877f00261806bd1b2/ui/views/mus/ax_remote_host_unittest.cc
[modify] https://crrev.com/a0692e97e6e018072e35a47877f00261806bd1b2/ui/views/mus/ax_tree_source_mus.cc
[modify] https://crrev.com/a0692e97e6e018072e35a47877f00261806bd1b2/ui/views/mus/ax_tree_source_mus.h
[modify] https://crrev.com/a0692e97e6e018072e35a47877f00261806bd1b2/ui/views/mus/ax_tree_source_mus_unittest.cc
[modify] https://crrev.com/a0692e97e6e018072e35a47877f00261806bd1b2/ui/views/mus/desktop_window_tree_host_mus.cc
[modify] https://crrev.com/a0692e97e6e018072e35a47877f00261806bd1b2/ui/views/mus/desktop_window_tree_host_mus_unittest.cc
[modify] https://crrev.com/a0692e97e6e018072e35a47877f00261806bd1b2/ui/views/widget/widget.h

Project Member

Comment 11 by bugdroid1@chromium.org, Jul 23

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

commit efd86b0833125973320f63adc9164704753ae690
Author: James Cook <jamescook@chromium.org>
Date: Mon Jul 23 17:33:16 2018

chromeos: Add LoggedInSpokenFeedbackTest.KeyboardShortcutViewer

This tests ChromeVox integration with an out-of-process mojo app.

Bug:  851578 
Test: interactive_ui_tests
Change-Id: I23a6cbf9bf93d675f5cc774e3df82eb4be5a334f
Reviewed-on: https://chromium-review.googlesource.com/1132555
Commit-Queue: James Cook <jamescook@chromium.org>
Reviewed-by: Dominic Mazzoni <dmazzoni@chromium.org>
Cr-Commit-Position: refs/heads/master@{#577197}
[modify] https://crrev.com/efd86b0833125973320f63adc9164704753ae690/chrome/browser/chromeos/accessibility/spoken_feedback_browsertest.cc

Status: Fixed (was: Started)
Core ChromeVox support is landed. I have other bugs filed for remaining issues.

Project Member

Comment 13 by bugdroid1@chromium.org, Aug 10

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

commit 69ecbb7f92e4d38ff504a372e4acbed6cf429f55
Author: James Cook <jamescook@chromium.org>
Date: Fri Aug 10 17:27:50 2018

chromeos: Fix ChromeVox highlight rects for shortcut viewer with hidpi

The serialized AX node locations need to be adjusted by the display
device scale factor. This is similar to how AXTreeSourceArc handles
remote ARC++ apps.

Bug:  851578 
Test: added to views_mus_unittests
Change-Id: Ibf17c76584e1ec54e5b214866a7cd1abbcc88f7f
Reviewed-on: https://chromium-review.googlesource.com/1168120
Commit-Queue: James Cook <jamescook@chromium.org>
Reviewed-by: David Tseng <dtseng@chromium.org>
Cr-Commit-Position: refs/heads/master@{#582226}
[modify] https://crrev.com/69ecbb7f92e4d38ff504a372e4acbed6cf429f55/ui/views/mus/ax_remote_host.cc
[modify] https://crrev.com/69ecbb7f92e4d38ff504a372e4acbed6cf429f55/ui/views/mus/ax_remote_host.h
[modify] https://crrev.com/69ecbb7f92e4d38ff504a372e4acbed6cf429f55/ui/views/mus/ax_remote_host_unittest.cc
[modify] https://crrev.com/69ecbb7f92e4d38ff504a372e4acbed6cf429f55/ui/views/mus/ax_tree_source_mus.cc
[modify] https://crrev.com/69ecbb7f92e4d38ff504a372e4acbed6cf429f55/ui/views/mus/ax_tree_source_mus.h
[modify] https://crrev.com/69ecbb7f92e4d38ff504a372e4acbed6cf429f55/ui/views/mus/ax_tree_source_mus_unittest.cc

Sign in to add a comment