This is a hack that was implemented a long time ago before IAccessible2.
However, it violates the MSAA API, breaks Microsoft's Inspect tool and violates the Core/HTML AAM specs.
In terms of backwards compatibility, anyone who wants to really access web content will be using IAccessible2 anyway.
Also, Chromium has never implemented this hack.
The mappings were largely taken from the Core and HTML AAM specs.
Where those specs didn't specify an MSAA role, ROLE_SYSTEM_GROUPING has been used, which is the closest we can get to a generic mapping and is also used by Chromium for these cases.
Differential Revision: https://phabricator.services.mozilla.com/D183828
Adding ARIAMap for nsGkAtoms::image and mapping to it GRAPHIC to nsGkAtoms::image instead of img in RoleMap. This allows both tests listed in the expectations metadata file in `testing/web-platform/meta/wai-aria/role/synonym-roles.html.ini` to be passing, thus removing this file.
Differential Revision: https://phabricator.services.mozilla.com/D179720
This commit adds mappings for HTML sub and sup elements, as well as ARIA
role mappings for subscript, superscript roles, with the goal of properly
exposing this information to the accessibility tree. This commit also updates
text attribute code to account for the attributes implied by those roles.
Finally, this commit updates tests to verify that the role and attribute
information is working properly.
Differential Revision: https://phabricator.services.mozilla.com/D155523
Safari maps role=tooltip to AXGroup/AXUserInterfaceTooltip.
I suspect AXHelpTag is meant for native tooltips.
This fixes an issue when VO encounters a tooltip in read-all it jumps out of the web content.
Differential Revision: https://phabricator.services.mozilla.com/D96626
It seems that VoiceOver expects AXDescriptionList and AXDescription
as subroles in order to report the correct number of items in a dl.
Differential Revision: https://phabricator.services.mozilla.com/D88890
This adds both the role as well as calculation of the posinset, setsize, and level calculation if not provided by the author.
Differential Revision: https://phabricator.services.mozilla.com/D64590
--HG--
extra : moz-landing-system : lando
Instead, subclass nsTextControlFrame. This simplifies the code and avoids
correctness issues.
I kept the localization functionality though it is not spec compliant. But I
filed a bug to remove it in a followup.
Differential Revision: https://phabricator.services.mozilla.com/D57193
--HG--
extra : moz-landing-system : lando
Mark the html:mark element to the new ROLE_MARK, which currently maps the same as role_text, and the xml-role of "mark", make sure we expose the roleDescription on Mac, and adjust the test so it tests that the attributes don't pick up any unexpected color for this particular element. So, the background attribute is empty when there is no unexpected, non-default background color.
Differential Revision: https://phabricator.services.mozilla.com/D52989
--HG--
extra : moz-landing-system : lando
1. When role="document" is (redundantly) used on the body element, still expose the URL via accValue, just like we do for role="application".
2. Expose ROLE_SYSTEM_DOCUMENT for role="document" (rather than the string "document") as per the spec. (Chrome already does this, so I don't expect backwards compat problems with clients.)
Differential Revision: https://phabricator.services.mozilla.com/D20582
--HG--
extra : moz-landing-system : lando
This is a best effort attempt at ensuring that the adverse impact of
reformatting the entire tree over the comments would be minimal. I've used a
combination of strategies including disabling of formatting, some manual
formatting and some changes to formatting to work around some clang-format
limitations.
Differential Revision: https://phabricator.services.mozilla.com/D13046
--HG--
extra : moz-landing-system : lando
If html:form has a name given via ARIA, expose it as a landmark to platform APIS that require it. At the time of this submission, this is the case for ATK.
Differential Revision: https://phabricator.services.mozilla.com/D9552
--HG--
extra : moz-landing-system : lando
Change the name calculation rule of HTML 'table' element from eNoNameRule
to eNameFromSubtreeIfReqRule. That way the table won't get an accessible
name, but will be descended when building a name from a parent element's
contents.
--HG--
extra : rebase_source : 218aec9f90b0c420a5f6785e929e5512b6704567