
This is a reland of commit a45292dec7
It was reverted after a bot that does not run on the CQ started
failing. After looking into it the issue was that
chromecast/graphics tests did not have an AXPlatform instance
initialized. As such, I added it and updated the deps/build files.
I manually added the bot to run and it now passes.
Original change's description:
> [views-ax] Making Widget an AXModeObserver
>
> This CL makes Widget an AXModeObserver, this is so we can listen
> to when accessibility gets turned on with the kNativeAPIs AXMode,
> at which point we can complete the cache initialization for all
> the descendant views of that Widget.
>
> This allows Views authors the ability to offload the computation
> of expensive accessibility attributes until we know for sure
> that accessibility is "on". In order for Views authors to make
> use of this, the View in question needs to override
> `OnAccessibilityInitializing`. See the comment on view.h for the
> `OnAccessibilityInitializing` function for more detail on how to
> do this.
>
> This required changes to test files and their deps, this is because
> not all test suites initialize an AXPlatform. This is now required
> since now we will be checking for the AXMode (checking if a11y is
> enabled) anytime we add a View as a child. This is done through
> the AXPlatform singleton. There were some test suites that then
> were crashing since we were trying to access the AXPlatform
> singleton and since none was initialized for those test suites
> they would crash. As a result, changes to these test suites were
> needed so they could initialize an AXPlatform for tests.
>
> This CL is part of the ViewsAX project:
> https://docs.google.com/document/d/1Ku7HOyDsiZem1yaV6ccZ-tz3lO2XR2NEcm8HjR6d-VY/edit#heading=h.ke1u3utej413
>
> Bug: 325137417
> Change-Id: I66e6affdcca5def5d8a31d5f681a257b05cf3343
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5886957
> Reviewed-by: Jacques Newman <janewman@microsoft.com>
> Commit-Queue: Javier Contreras <javiercon@microsoft.com>
> Reviewed-by: Benjamin Beaudry <benjamin.beaudry@microsoft.com>
> Reviewed-by: Scott Violet <sky@chromium.org>
> Reviewed-by: Joe Downing <joedow@chromium.org>
> Cr-Commit-Position: refs/heads/main@{#1367799}
Bug: 325137417
Change-Id: I9d6144b5be56f414460e024d66610d144d0b1ed7
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5935144
Reviewed-by: Benjamin Beaudry <benjamin.beaudry@microsoft.com>
Reviewed-by: Jacques Newman <janewman@microsoft.com>
Reviewed-by: Scott Violet <sky@chromium.org>
Reviewed-by: Joe Downing <joedow@chromium.org>
Reviewed-by: Antonio Rivera <antoniori@google.com>
Commit-Queue: Javier Contreras <javiercon@microsoft.com>
Cr-Commit-Position: refs/heads/main@{#1369755}
Chromium
Chromium is an open-source browser project that aims to build a safer, faster, and more stable way for all users to experience the web.
The project's web site is https://www.chromium.org.
To check out the source code locally, don't use git clone
! Instead,
follow the instructions on how to get the code.
Documentation in the source is rooted in docs/README.md.
Learn how to Get Around the Chromium Source Code Directory Structure.
For historical reasons, there are some small top level directories. Now the guidance is that new top level directories are for product (e.g. Chrome, Android WebView, Ash). Even if these products have multiple executables, the code should be in subdirectories of the product.
If you found a bug, please file it at https://crbug.com/new.