Issue metadata
Sign in to add a comment
|
Add more fine-grained accessibility modes |
||||||||||||||||||||||
Issue descriptionChrome's accessibility support is basically either off or on right now. Since there's overhead associated with enabling accessibility, this hurts the performance of many Chrome users who only need a fraction of accessibility support. Based on UMA logging we've confirmed that the vast majority of accessibility clients of Chrome are only basically accessing the role, state, name, value, and location of objects. By only computing those attributes and skipping the rest, we could save a lot of overhead. As soon as additional attributes are requested we can automatically enable those attributes from then on. Even screen reader users will potentially benefit from this change, as not all screen readers need all Chrome accessibility features enabled at all times. The initial breakdown will be: 1. Web accessibility (role, state, name, value, and location) 2. Inline text boxes (enables support for getting the bounds of an arbitrary character range) 3. HTML (expose the HTML tag name and HTML attributes) 4. Screen reader support (things like live regions, table cell attributes, etc. - basically everything else)
,
Dec 14 2016
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/5adc955230fdddec66eb327d8cdbe5004a3c34c3 commit 5adc955230fdddec66eb327d8cdbe5004a3c34c3 Author: dmazzoni <dmazzoni@chromium.org> Date: Wed Dec 14 20:24:25 2016 Enable toggling of new accessibility modes in chrome://accessibility Replaces links that toggled a single accessibility mode with a set of checkboxes representing more fine-grained control over accessibility support. Adds some more help text to the UI to explain to users what this is for. There's more to be done but I don't want to completely overhaul the UI in this change, I'd like to just make a good incremental step and most importantly add support for all of the possible accessibility modes. Depends on: https://codereview.chromium.org/2558933002/ BUG= 672205 Review-Url: https://codereview.chromium.org/2552203005 Cr-Commit-Position: refs/heads/master@{#438606} [modify] https://crrev.com/5adc955230fdddec66eb327d8cdbe5004a3c34c3/content/browser/accessibility/accessibility_ui.cc [modify] https://crrev.com/5adc955230fdddec66eb327d8cdbe5004a3c34c3/content/browser/accessibility/accessibility_ui.h [modify] https://crrev.com/5adc955230fdddec66eb327d8cdbe5004a3c34c3/content/browser/resources/accessibility/accessibility.css [modify] https://crrev.com/5adc955230fdddec66eb327d8cdbe5004a3c34c3/content/browser/resources/accessibility/accessibility.html [modify] https://crrev.com/5adc955230fdddec66eb327d8cdbe5004a3c34c3/content/browser/resources/accessibility/accessibility.js
,
Dec 20 2016
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/368ea13e43a18dec62a7f72610398a2f9757b1c9 commit 368ea13e43a18dec62a7f72610398a2f9757b1c9 Author: dmazzoni <dmazzoni@chromium.org> Date: Tue Dec 20 08:22:42 2016 Add support for faster, more limited accessibility modes. See bug for context. This patch begins the implementation of more limited accessibility modes by only fetching a subset of accessibility attributes from Blink unless more are explicitly needed. Only Windows is affected initially. By default now when accessibility support is enabled on Windows, only a few key accessibility attributes are fetched, like role, state, name, value, and location. As individual APIs are accessed that go beyond these, Chrome's accessibility mode is automatically changed to start fetching more. Screen readers are unaffected by this change. I manually tested JAWS and NVDA. Password managers and single-sign-on software should continue to work fine, but users should experience a performance boost. BUG= 672205 Review-Url: https://codereview.chromium.org/2581483002 Cr-Commit-Position: refs/heads/master@{#439750} [modify] https://crrev.com/368ea13e43a18dec62a7f72610398a2f9757b1c9/content/browser/accessibility/accessibility_mode_browsertest.cc [modify] https://crrev.com/368ea13e43a18dec62a7f72610398a2f9757b1c9/content/browser/accessibility/browser_accessibility_state_impl.cc [modify] https://crrev.com/368ea13e43a18dec62a7f72610398a2f9757b1c9/content/browser/accessibility/browser_accessibility_win.cc [modify] https://crrev.com/368ea13e43a18dec62a7f72610398a2f9757b1c9/content/browser/renderer_host/legacy_render_widget_host_win.cc [modify] https://crrev.com/368ea13e43a18dec62a7f72610398a2f9757b1c9/content/renderer/accessibility/blink_ax_tree_source.cc [modify] https://crrev.com/368ea13e43a18dec62a7f72610398a2f9757b1c9/content/renderer/accessibility/blink_ax_tree_source.h [modify] https://crrev.com/368ea13e43a18dec62a7f72610398a2f9757b1c9/content/renderer/accessibility/render_accessibility_impl.cc [modify] https://crrev.com/368ea13e43a18dec62a7f72610398a2f9757b1c9/content/renderer/accessibility/render_accessibility_impl.h [modify] https://crrev.com/368ea13e43a18dec62a7f72610398a2f9757b1c9/content/renderer/accessibility/render_accessibility_impl_browsertest.cc [modify] https://crrev.com/368ea13e43a18dec62a7f72610398a2f9757b1c9/content/renderer/render_frame_impl.cc [modify] https://crrev.com/368ea13e43a18dec62a7f72610398a2f9757b1c9/tools/metrics/histograms/histograms.xml
,
Jan 11 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/451daad4f60a3ca0f7508097309d11a15da480fe commit 451daad4f60a3ca0f7508097309d11a15da480fe Author: dmazzoni <dmazzoni@chromium.org> Date: Wed Jan 11 01:26:22 2017 Don't enable accessibility just because IAccessible2 APIs are queried. Chrome now has support for more fine-grained accessibility modes. Individual accessibility APIs now enable parts of accessibility support as needed, but log data is suggesting that lots of clients are calling QueryService with IAccessible2 as the IID argument even though they don't need full accessibility support, so let's delete this particular trigger. BUG= 672205 ,644647 Review-Url: https://codereview.chromium.org/2627733003 Cr-Commit-Position: refs/heads/master@{#442757} [modify] https://crrev.com/451daad4f60a3ca0f7508097309d11a15da480fe/content/browser/accessibility/browser_accessibility_win.cc
,
Jan 18 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/a83d31c69942f949f7970e607f8394e060444ecd commit a83d31c69942f949f7970e607f8394e060444ecd Author: dmazzoni <dmazzoni@chromium.org> Date: Wed Jan 18 16:26:02 2017 Relax another case where screen reader support was enabled. See previous changes on this bug for context. Take another case where we were enabling full accessibility support, and only enable limited web accessibility support instead. Full screen reader support will be enabled automatically as more advanced APIs are accessed. This change only affects Windows. BUG= 672205 , 644647 Review-Url: https://codereview.chromium.org/2641563003 Cr-Commit-Position: refs/heads/master@{#444384} [modify] https://crrev.com/a83d31c69942f949f7970e607f8394e060444ecd/content/browser/accessibility/browser_accessibility_manager_win.cc
,
Jan 27 2017
Logs are looking good, this is working on Windows. We need to do Android next.
,
Feb 7 2017
,
Mar 27 2017
,
Apr 21 2017
,
Apr 21 2017
,
May 23 2017
,
Aug 11 2017
Closing bug as it served its purpose on Windows. We may need to do something else on Android. |
|||||||||||||||||||||||
►
Sign in to add a comment |
|||||||||||||||||||||||
Comment 1 by bugdroid1@chromium.org
, Dec 14 2016