haikuwebkit/LayoutTests/accessibility/roles-exposed.html

454 lines
27 KiB
HTML
Raw Permalink Normal View History

<!DOCTYPE HTML>
<html>
<body>
<script src="../resources/js-test-pre.js"></script>
<!-- ==================================================================================================== -->
<!-- HTML elements in alphabetical order, excepting the need for nesting (e.g. <li> is with its <ol> and <ul> parents) -->
<!-- ==================================================================================================== -->
<a data-platform="atk,mac" href="#" data-note="[href]" class="ex">X</a>
<a data-platform="atk,mac" data-note=":not([href])" class="ex">X</a>
AX: [ATK] Inline text elements with accessible object attributes and/or event handlers are not exposed https://bugs.webkit.org/show_bug.cgi?id=139071 Reviewed by Chris Fleizach. Source/WebCore: Adds a new InlineRole accessibility role type for non-focusable inline elements which have an event handler or attribute suggesting possible inclusion by the platform. This is mapped to ATK_ROLE_STATIC for GTK and EFL. On the Mac, it is currently ignored to preserve existing behavior. Added new test cases to the existing roles-exposed.html test. * accessibility/AccessibilityObject.cpp: (WebCore::AccessibilityObject::supportsDatetimeAttribute): Added. * accessibility/AccessibilityObject.h: Added InlineRole. * accessibility/AccessibilityRenderObject.cpp: (WebCore::AccessibilityRenderObject::determineAccessibilityRole): Handle InlineRole. * accessibility/atk/AccessibilityObjectAtk.cpp: (WebCore::AccessibilityObject::accessibilityPlatformIncludesObject): Include InlineRole objects. * accessibility/atk/WebKitAccessibleWrapperAtk.cpp: (atkRole): * accessibility/mac/AccessibilityObjectMac.mm: (WebCore::AccessibilityObject::accessibilityPlatformIncludesObject): Ignore InlineRole objects. * html/HTMLTagNames.in: Added 'time'. Tools: Add string value for ATK_ROLE_STATIC in roleToString. * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp: LayoutTests: * accessibility/roles-exposed.html: New test cases added. * platform/efl/accessibility/roles-exposed-expected.txt: Updated for new test cases. * platform/gtk/accessibility/roles-exposed-expected.txt: Updated for new test cases. * platform/mac-mavericks/accessibility/roles-exposed-expected.txt: Updated for new test cases. * platform/mac-mountainlion/accessibility/roles-exposed-expected.txt: Updated for new test cases. * platform/mac/accessibility/roles-exposed-expected.txt: Updated for new test cases. Canonical link: https://commits.webkit.org/157076@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@176731 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2014-12-03 19:51:28 +00:00
<abbr data-platform="atk,mac" data-note=":not([title])" class="ex">X</abbr>
<abbr data-platform="atk,mac" title="Times" data-note="[title]" class="ex">X</abbr>
<!-- http://webkit.org/b/83989 --><address data-platform="atk,mac" class="ex">X</address>
<!-- skipped <area> -->
<article data-platform="atk,mac" class="ex">X</article>
<aside data-platform="atk,mac" class="ex">X</aside>
<audio data-platform="atk,mac" class="ex">X</audio>
<b data-platform="atk,mac" class="ex">X</b>
<bdo data-platform="atk,mac" class="ex">X</bdo>
<blockquote data-platform="atk,mac" class="ex">X</blockquote>
<button data-platform="atk,mac" class="ex">X</button>
<canvas data-platform="atk,mac" class="ex">X</canvas>
<cite data-platform="atk,mac" class="ex">X</cite>
<code data-platform="atk,mac" class="ex">X</code>
<!-- skipped <command> -->
<!-- skipped <datalist> -->
AX: [ATK] Inline text elements with accessible object attributes and/or event handlers are not exposed https://bugs.webkit.org/show_bug.cgi?id=139071 Reviewed by Chris Fleizach. Source/WebCore: Adds a new InlineRole accessibility role type for non-focusable inline elements which have an event handler or attribute suggesting possible inclusion by the platform. This is mapped to ATK_ROLE_STATIC for GTK and EFL. On the Mac, it is currently ignored to preserve existing behavior. Added new test cases to the existing roles-exposed.html test. * accessibility/AccessibilityObject.cpp: (WebCore::AccessibilityObject::supportsDatetimeAttribute): Added. * accessibility/AccessibilityObject.h: Added InlineRole. * accessibility/AccessibilityRenderObject.cpp: (WebCore::AccessibilityRenderObject::determineAccessibilityRole): Handle InlineRole. * accessibility/atk/AccessibilityObjectAtk.cpp: (WebCore::AccessibilityObject::accessibilityPlatformIncludesObject): Include InlineRole objects. * accessibility/atk/WebKitAccessibleWrapperAtk.cpp: (atkRole): * accessibility/mac/AccessibilityObjectMac.mm: (WebCore::AccessibilityObject::accessibilityPlatformIncludesObject): Ignore InlineRole objects. * html/HTMLTagNames.in: Added 'time'. Tools: Add string value for ATK_ROLE_STATIC in roleToString. * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp: LayoutTests: * accessibility/roles-exposed.html: New test cases added. * platform/efl/accessibility/roles-exposed-expected.txt: Updated for new test cases. * platform/gtk/accessibility/roles-exposed-expected.txt: Updated for new test cases. * platform/mac-mavericks/accessibility/roles-exposed-expected.txt: Updated for new test cases. * platform/mac-mountainlion/accessibility/roles-exposed-expected.txt: Updated for new test cases. * platform/mac/accessibility/roles-exposed-expected.txt: Updated for new test cases. Canonical link: https://commits.webkit.org/157076@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@176731 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2014-12-03 19:51:28 +00:00
<del data-platform="atk,mac" data-note=":not([datetime])" class="ex">X</del>
<del data-platform="atk,mac" datetime="2014-10-31 00:00" data-note="[datetime]" class="ex">X</del>
<!-- skipped <details/summary> http://webkit.org/b/108979 -->
<dfn data-platform="atk,mac" class="ex">X</dfn>
<dl data-platform="atk,mac" class="ex">
<dt data-platform="atk,mac" class="ex">X</dt>
<dd data-platform="atk,mac" class="ex">X</dd>
</dl>
<div data-platform="atk,mac" class="ex">X</div>
<em data-platform="atk,mac" class="ex">X</em>
<!-- skipped <embed> -->
<fieldset data-platform="atk,mac" class="ex">
<legend data-platform="atk,mac" class="ex">X</legend>
</fieldset>
<figure data-platform="atk,mac" class="ex">X</figure>
<footer data-platform="atk,mac" class="ex">X</footer>
<form data-platform="atk,mac" class="ex">X</form>
<!-- skipped <frame> -->
<!-- skipped <frameset> -->
<!-- skipped <head> -->
<!-- http://webkit.org/b/109013 --><header data-platform="atk,mac" class="ex">X</header>
<hgroup data-platform="atk,mac" class="ex">X</hgroup>
<h1 data-platform="atk,mac" class="ex">X</h1>
<h2 data-platform="atk,mac" class="ex">X</h2>
<h3 data-platform="atk,mac" class="ex">X</h3>
<h4 data-platform="atk,mac" class="ex">X</h4>
<h5 data-platform="atk,mac" class="ex">X</h5>
<h6 data-platform="atk,mac" class="ex">X</h6>
<hr data-platform="atk,mac" class="ex">
<!-- skipped <html> -->
<i data-platform="atk,mac" class="ex">X</i>
<!-- skipped <iframe> -->
<img data-platform="atk,mac" class="ex" data-note=":not([src]):not([alt])">
<img data-platform="atk,mac" class="ex" alt="" data-note="[alt='']">
<img data-platform="atk,mac" class="ex" src="foo.png" data-note="[src]:not([alt])">
<img data-platform="atk,mac" class="ex" alt="X" data-note="[alt='X']">
AX: [ATK] Accessible names missing for imagemap images and links https://bugs.webkit.org/show_bug.cgi?id=127288 Source/WebCore: Reviewed by Chris Fleizach. Return the alt text, if present, for the accessible name for image maps and image map links for ATK. Also expose the accessible element with ATK_ROLE_IMAGE_MAP instead of ATK_ROLE_IMAGE. Test: accessibility/image-with-alt-and-map.html * accessibility/AccessibilityObject.h: (WebCore::AccessibilityObject::isImageMap): * accessibility/atk/WebKitAccessibleWrapperAtk.cpp: (webkitAccessibleGetName): (atkRole): LayoutTests: New and updated tests to reflect the expected role, accessible hierarchy, and exposure of the alternative text for each platform. Reviewed by Chris Fleizach. * accessibility/image-with-alt-and-map.html: Added. * accessibility/roles-exposed.html: Added some more elements to the test. * platform/efl/accessibility/image-map1-expected.txt: Added. * platform/efl/accessibility/image-map2-expected.txt: Updated to reflect fix. * platform/efl/accessibility/image-with-alt-and-map-expected.txt: Added. * platform/efl/accessibility/roles-exposed-expected.txt: Updated for added elements. * platform/gtk/accessibility/image-map1-expected.txt: Added. * platform/gtk/accessibility/image-map2-expected.txt: Updated to reflect fix. * platform/gtk/accessibility/image-with-alt-and-map-expected.txt: Added. * platform/gtk/accessibility/roles-exposed-expected.txt: Updated for added elements. * platform/mac/accessibility/image-with-alt-and-map-expected.txt: Added. * platform/mac/accessibility/roles-exposed-expected.txt: Updated for added elements. * platform/mac-mavericks/accessibility/roles-exposed-expected.txt: Updated for added elements. * platform/mac-mountainlion/accessibility/roles-exposed-expected.txt: Updated for added elements. Canonical link: https://commits.webkit.org/156885@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@176505 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2014-11-22 18:18:11 +00:00
<img data-platform="atk,mac" class="ex" alt="X" usemap="imagemap" data-note="[usemap][alt='X']">
<img data-platform="atk,mac" class="ex" usemap="imagemap" data-note="[usemap]:not([alt])">
<input data-platform="atk,mac" type="button" value="X" class="ex" data-note="[type='button']">
<!-- skipped <menu><input type="button"></menu> -->
<!-- http://webkit.org/b/109017 --><input data-platform="atk,mac" type="color" value="X" class="ex" data-note="[type='color']">
<input data-platform="atk,mac" type="checkbox" class="ex" data-note="[type='checkbox']">
<!-- skipped <menu><input type="checkbox"></menu> -->
<!-- http://webkit.org/b/109017 --><input data-platform="atk,mac" type="date" value="X" class="ex" data-note="[type='date']">
<!-- http://webkit.org/b/109017 --><input data-platform="atk,mac" type="datetime" value="X" class="ex" data-note="[type='datetime']">
<!-- http://webkit.org/b/109017 --><input data-platform="atk,mac" type="datetime-local" value="X" class="ex" data-note="[type='datetime-local']">
<!-- http://webkit.org/b/109017 --><input data-platform="atk,mac" type="email" value="X" class="ex" data-note="[type='email']">
<input data-platform="atk,mac" type="file" class="ex" data-note="[type='file']">
<input data-platform="atk,mac" type="hidden" class="ex" data-note="[type='hidden']">
<input data-platform="atk,mac" type="image" class="ex" data-note="[type='image']">
<!-- http://webkit.org/b/109017 --><input data-platform="atk,mac" type="month" value="X" class="ex" data-note="[type='month']">
<!-- http://webkit.org/b/109017 --><input data-platform="atk,mac" type="number" value="X" class="ex" data-note="[type='number']">
<input data-platform="atk,mac" type="password" value="X" class="ex" data-note="[type='password']">
<input data-platform="atk,mac" type="radio" class="ex" data-note="[type='radio']">
<!-- skipped <menu><input type="radio"></menu> -->
<input data-platform="atk,mac" type="range" class="ex" data-note="[type='range']">
<input data-platform="atk,mac" type="reset" class="ex" data-note="[type='reset']">
<input data-platform="atk,mac" type="search" value="X" class="ex" data-note="[type='search']">
<input data-platform="atk,mac" type="submit" class="ex" data-note="[type='submit']">
<!-- http://webkit.org/b/109017 --><input data-platform="atk,mac" type="tel" value="X" class="ex" data-note="[type='tel']">
<input data-platform="atk,mac" type="text" value="X" class="ex" data-note="[type='text']">
<!-- skipped <input type="text"> with suggestions source element: http://www.w3.org/html/wg/drafts/html/master/forms.html#concept-input-list -->
<!-- http://webkit.org/b/109017 --><input data-platform="atk,mac" type="time" value="X" class="ex" data-note="[type='time']">
<!-- http://webkit.org/b/109017 --><input data-platform="atk,mac" type="url" value="X" class="ex" data-note="[type='url']">
<!-- http://webkit.org/b/109017 --><input data-platform="atk,mac" type="week" value="X" class="ex" data-note="[type='week']">
AX: [ATK] Inline text elements with accessible object attributes and/or event handlers are not exposed https://bugs.webkit.org/show_bug.cgi?id=139071 Reviewed by Chris Fleizach. Source/WebCore: Adds a new InlineRole accessibility role type for non-focusable inline elements which have an event handler or attribute suggesting possible inclusion by the platform. This is mapped to ATK_ROLE_STATIC for GTK and EFL. On the Mac, it is currently ignored to preserve existing behavior. Added new test cases to the existing roles-exposed.html test. * accessibility/AccessibilityObject.cpp: (WebCore::AccessibilityObject::supportsDatetimeAttribute): Added. * accessibility/AccessibilityObject.h: Added InlineRole. * accessibility/AccessibilityRenderObject.cpp: (WebCore::AccessibilityRenderObject::determineAccessibilityRole): Handle InlineRole. * accessibility/atk/AccessibilityObjectAtk.cpp: (WebCore::AccessibilityObject::accessibilityPlatformIncludesObject): Include InlineRole objects. * accessibility/atk/WebKitAccessibleWrapperAtk.cpp: (atkRole): * accessibility/mac/AccessibilityObjectMac.mm: (WebCore::AccessibilityObject::accessibilityPlatformIncludesObject): Ignore InlineRole objects. * html/HTMLTagNames.in: Added 'time'. Tools: Add string value for ATK_ROLE_STATIC in roleToString. * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp: LayoutTests: * accessibility/roles-exposed.html: New test cases added. * platform/efl/accessibility/roles-exposed-expected.txt: Updated for new test cases. * platform/gtk/accessibility/roles-exposed-expected.txt: Updated for new test cases. * platform/mac-mavericks/accessibility/roles-exposed-expected.txt: Updated for new test cases. * platform/mac-mountainlion/accessibility/roles-exposed-expected.txt: Updated for new test cases. * platform/mac/accessibility/roles-exposed-expected.txt: Updated for new test cases. Canonical link: https://commits.webkit.org/157076@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@176731 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2014-12-03 19:51:28 +00:00
<ins data-platform="atk,mac" data-note=":not([datetime])" class="ex">X</ins>
<ins data-platform="atk,mac" datetime="2014-10-31 00:00" data-note="[datetime]" class="ex">X</ins>
<!-- skipped <link> -->
AX: [ATK] Accessible names missing for imagemap images and links https://bugs.webkit.org/show_bug.cgi?id=127288 Source/WebCore: Reviewed by Chris Fleizach. Return the alt text, if present, for the accessible name for image maps and image map links for ATK. Also expose the accessible element with ATK_ROLE_IMAGE_MAP instead of ATK_ROLE_IMAGE. Test: accessibility/image-with-alt-and-map.html * accessibility/AccessibilityObject.h: (WebCore::AccessibilityObject::isImageMap): * accessibility/atk/WebKitAccessibleWrapperAtk.cpp: (webkitAccessibleGetName): (atkRole): LayoutTests: New and updated tests to reflect the expected role, accessible hierarchy, and exposure of the alternative text for each platform. Reviewed by Chris Fleizach. * accessibility/image-with-alt-and-map.html: Added. * accessibility/roles-exposed.html: Added some more elements to the test. * platform/efl/accessibility/image-map1-expected.txt: Added. * platform/efl/accessibility/image-map2-expected.txt: Updated to reflect fix. * platform/efl/accessibility/image-with-alt-and-map-expected.txt: Added. * platform/efl/accessibility/roles-exposed-expected.txt: Updated for added elements. * platform/gtk/accessibility/image-map1-expected.txt: Added. * platform/gtk/accessibility/image-map2-expected.txt: Updated to reflect fix. * platform/gtk/accessibility/image-with-alt-and-map-expected.txt: Added. * platform/gtk/accessibility/roles-exposed-expected.txt: Updated for added elements. * platform/mac/accessibility/image-with-alt-and-map-expected.txt: Added. * platform/mac/accessibility/roles-exposed-expected.txt: Updated for added elements. * platform/mac-mavericks/accessibility/roles-exposed-expected.txt: Updated for added elements. * platform/mac-mountainlion/accessibility/roles-exposed-expected.txt: Updated for added elements. Canonical link: https://commits.webkit.org/156885@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@176505 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2014-11-22 18:18:11 +00:00
<map data-platform="atk,mac" class="ex" name="imagemap">
<area data-platform="atk,mac" class="ex" shape="rect" coords="0,0,10,10" href="#" title="x" />
</map>
<!-- http://webkit.org/b/109018 --><mark data-platform="atk,mac" class="ex">X</mark>
AX: [ATK] MathML tokens, tables, and row-like elements are exposed with ATK_ROLE_UNKNOWN https://bugs.webkit.org/show_bug.cgi?id=139402 Reviewed by Chris Fleizach. Source/WebCore: Expose tables and their children using existing table AtkRole types, token elements using the new ATK_ROLE_STATIC, and row-like elements using ATK_ROLE_PANEL. Also expose <mlabeledtr> as a math table row and <ms> as math text. No new tests; instead, added MathML elements to roles-exposed.html. * accessibility/AccessibilityObject.h: (WebCore::AccessibilityObject::isMathToken): * accessibility/AccessibilityRenderObject.cpp: (WebCore::AccessibilityRenderObject::isMathToken): (WebCore::AccessibilityRenderObject::isMathText): (WebCore::AccessibilityRenderObject::isMathTableRow): * accessibility/AccessibilityRenderObject.h: * accessibility/atk/WebKitAccessibleWrapperAtk.cpp: (atkRole): * css/mathml.css: (ms, mi, mo, mrow, mfenced, mfrac, msub, msup, msubsup, mmultiscripts, mprescripts, none, munder, mover, munderover, msqrt, mroot, merror, mphantom, mstyle, menclose): (mi, mo, mrow, mfenced, mfrac, msub, msup, msubsup, mmultiscripts, mprescripts, none, munder, mover, munderover, msqrt, mroot, merror, mphantom, mstyle, menclose): Deleted. * mathml/mathtags.in: LayoutTests: * accessibility/roles-exposed.html: Added MathML elements. * platform/efl/accessibility/roles-exposed-expected.txt: Updated for added elements. * platform/gtk/accessibility/roles-exposed-expected.txt: Updated for added elements. * platform/mac-mavericks/accessibility/roles-exposed-expected.txt: Updated for added elements. * platform/mac-mountainlion/accessibility/roles-exposed-expected.txt: Updated for added elements. * platform/mac/accessibility/roles-exposed-expected.txt: Updated for added elements. Canonical link: https://commits.webkit.org/157302@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177025 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2014-12-09 18:31:53 +00:00
<!-- Some MathML elements do not become hidden by display: none, so hide them after the test via a parent element. http://webkit.org/b/139403 --><div class="ex">
<math data-platform="atk,mac" class="ex">X</math>
AX: [ATK] MathML tokens, tables, and row-like elements are exposed with ATK_ROLE_UNKNOWN https://bugs.webkit.org/show_bug.cgi?id=139402 Reviewed by Chris Fleizach. Source/WebCore: Expose tables and their children using existing table AtkRole types, token elements using the new ATK_ROLE_STATIC, and row-like elements using ATK_ROLE_PANEL. Also expose <mlabeledtr> as a math table row and <ms> as math text. No new tests; instead, added MathML elements to roles-exposed.html. * accessibility/AccessibilityObject.h: (WebCore::AccessibilityObject::isMathToken): * accessibility/AccessibilityRenderObject.cpp: (WebCore::AccessibilityRenderObject::isMathToken): (WebCore::AccessibilityRenderObject::isMathText): (WebCore::AccessibilityRenderObject::isMathTableRow): * accessibility/AccessibilityRenderObject.h: * accessibility/atk/WebKitAccessibleWrapperAtk.cpp: (atkRole): * css/mathml.css: (ms, mi, mo, mrow, mfenced, mfrac, msub, msup, msubsup, mmultiscripts, mprescripts, none, munder, mover, munderover, msqrt, mroot, merror, mphantom, mstyle, menclose): (mi, mo, mrow, mfenced, mfrac, msub, msup, msubsup, mmultiscripts, mprescripts, none, munder, mover, munderover, msqrt, mroot, merror, mphantom, mstyle, menclose): Deleted. * mathml/mathtags.in: LayoutTests: * accessibility/roles-exposed.html: Added MathML elements. * platform/efl/accessibility/roles-exposed-expected.txt: Updated for added elements. * platform/gtk/accessibility/roles-exposed-expected.txt: Updated for added elements. * platform/mac-mavericks/accessibility/roles-exposed-expected.txt: Updated for added elements. * platform/mac-mountainlion/accessibility/roles-exposed-expected.txt: Updated for added elements. * platform/mac/accessibility/roles-exposed-expected.txt: Updated for added elements. Canonical link: https://commits.webkit.org/157302@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177025 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2014-12-09 18:31:53 +00:00
<math><merror data-platform="atk,mac" class="ex">X</merror></math>
<math><mfenced data-platform="atk,mac" class="ex"><mi class="ex">X</mi></mfenced></math>
<math><mfrac data-platform="atk,mac" class="ex"><mi class="ex">X</mi><mn class="ex">Y</mn></mfrac></math>
<math><mi data-platform="atk,mac" class="ex">X</mi></math>
<math><mn data-platform="atk,mac" class="ex">X</mn></math>
<math><mo data-platform="atk,mac" class="ex">X</mo></math>
<math><mroot data-platform="atk,mac" class="ex">X</mroot></math>
<math><msqrt data-platform="atk,mac" class="ex">X</msqrt></math>
<math><mrow data-platform="atk,mac" class="ex"><mi class="ex">X</mi></mrow></math>
<math><ms data-platform="atk,mac" class="ex">X</ms></math>
AX: [ATK] Implement support for new AtkRole types for MathML https://bugs.webkit.org/show_bug.cgi?id=140916 Reviewed by Chris Fleizach. Source/WebCore: Expose mfrac as ATK_ROLE_MATH_FRACTION, and both mroot and msqrt as ATK_ROLE_MATH_ROOT. In the case of script elements, expose the container (msub, msup, msubsup, and mmultiscripts) using the generic text block role ATK_ROLE_SECTION. Then expose the actual script child elements using role ATK_ROLE_SUBSCRIPT/ATK_ROLE_SUPERSCRIPT. In the case of mmultiscripts, expose whether it is a prescript or postscript via AtkObject attribute. Test: accessibility/math-multiscript-attributes.html Also added additional test cases to accessibility/roles-exposed.html * accessibility/AccessibilityObject.h: (WebCore::AccessibilityObject::isMathScriptObject): Added. (WebCore::AccessibilityObject::isMathMultiscriptObject): Added. * accessibility/AccessibilityRenderObject.cpp: (WebCore::AccessibilityRenderObject::isMathScriptObject): Added. (WebCore::AccessibilityRenderObject::isMathMultiscriptObject): Added. * accessibility/AccessibilityRenderObject.h: * accessibility/atk/WebKitAccessibleWrapperAtk.cpp: (webkitAccessibleGetAttributes): Expose whether a multiscript object is a prescript or postscript. (atkRole): Map WebCore Accessibility objects to the new ATK roles. Tools: * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp: Add mapping for new ATK roles * gtk/jhbuild.modules: Bump minimum version of ATK used by jhbuild to 2.15.4 LayoutTests: * accessibility/math-multiscript-attributes.html: Added. * accessibility/roles-exposed.html: New test cases added. * platform/efl/accessibility/roles-exposed-expected.txt: Updated for new test cases. * platform/gtk/accessibility/math-multiscript-attributes-expected.txt: Added. * platform/gtk/accessibility/roles-exposed-expected.txt: Updated for new test cases. * platform/mac-mavericks/accessibility/roles-exposed-expected.txt: Updated for new test cases. * platform/mac-mountainlion/accessibility/roles-exposed-expected.txt: Updated for new test cases. * platform/mac/accessibility/math-multiscript-attributes-expected.txt: Added. * platform/mac/accessibility/roles-exposed-expected.txt: Updated for new test cases. Canonical link: https://commits.webkit.org/158979@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@179253 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2015-01-28 17:02:32 +00:00
<math>
<msub data-platform="atk,mac" class="ex">
<mi data-platform="atk,mac" class="ex">X</mi>
<mi data-platform="atk,mac" class="ex">X</mi>
</msub>
<msup data-platform="atk,mac" class="ex">
<mi data-platform="atk,mac" class="ex">X</mi>
<mi data-platform="atk,mac" class="ex">X</mi>
</msup>
<msubsup data-platform="atk,mac" class="ex">
<mi data-platform="atk,mac" class="ex">X</mi>
<mi data-platform="atk,mac" class="ex">X</mi>
<mi data-platform="atk,mac" class="ex">x</mi>
</msubsup>
<mmultiscripts data-platform="atk,mac" class="ex">
<mi data-platform="atk,mac" class="ex">X</mi>
<mi data-platform="atk,mac" class="ex">X</mi>
<mi data-platform="atk,mac" class="ex">x</mi>
<mprescripts data-platform="atk,mac" class="ex" />
<mi data-platform="atk,mac" class="ex">X</mi>
<mi data-platform="atk,mac" class="ex">x</mi>
</mmultiscripts>
</math>
</math>
AX: [ATK] MathML tokens, tables, and row-like elements are exposed with ATK_ROLE_UNKNOWN https://bugs.webkit.org/show_bug.cgi?id=139402 Reviewed by Chris Fleizach. Source/WebCore: Expose tables and their children using existing table AtkRole types, token elements using the new ATK_ROLE_STATIC, and row-like elements using ATK_ROLE_PANEL. Also expose <mlabeledtr> as a math table row and <ms> as math text. No new tests; instead, added MathML elements to roles-exposed.html. * accessibility/AccessibilityObject.h: (WebCore::AccessibilityObject::isMathToken): * accessibility/AccessibilityRenderObject.cpp: (WebCore::AccessibilityRenderObject::isMathToken): (WebCore::AccessibilityRenderObject::isMathText): (WebCore::AccessibilityRenderObject::isMathTableRow): * accessibility/AccessibilityRenderObject.h: * accessibility/atk/WebKitAccessibleWrapperAtk.cpp: (atkRole): * css/mathml.css: (ms, mi, mo, mrow, mfenced, mfrac, msub, msup, msubsup, mmultiscripts, mprescripts, none, munder, mover, munderover, msqrt, mroot, merror, mphantom, mstyle, menclose): (mi, mo, mrow, mfenced, mfrac, msub, msup, msubsup, mmultiscripts, mprescripts, none, munder, mover, munderover, msqrt, mroot, merror, mphantom, mstyle, menclose): Deleted. * mathml/mathtags.in: LayoutTests: * accessibility/roles-exposed.html: Added MathML elements. * platform/efl/accessibility/roles-exposed-expected.txt: Updated for added elements. * platform/gtk/accessibility/roles-exposed-expected.txt: Updated for added elements. * platform/mac-mavericks/accessibility/roles-exposed-expected.txt: Updated for added elements. * platform/mac-mountainlion/accessibility/roles-exposed-expected.txt: Updated for added elements. * platform/mac/accessibility/roles-exposed-expected.txt: Updated for added elements. Canonical link: https://commits.webkit.org/157302@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@177025 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2014-12-09 18:31:53 +00:00
<math><mtext data-platform="atk,mac" class="ex">X</mtext></math>
<math>
<mtable data-platform="atk,mac" class="ex">
<mlabeledtr data-platform="atk,mac" class="ex"><mtd data-platform="atk,mac" class="ex">X</mtd></mlabeledtr>
<mtr data-platform="atk,mac" class="ex"><mtd data-platform="atk,mac" class="ex">X</mtd></mtr>
</mtable>
</math>
</div>
<!-- skipped <menu> -->
<!-- skipped <meta> -->
<!-- reenable for atk after http://webkit.org/b/163383 fixed --><meter data-platform="mac" class="ex" value="0.75">X</meter>
<nav data-platform="atk,mac" class="ex">X</nav>
<!-- skipped <noscript> -->
<!-- skipped <object> -->
<ol data-platform="atk,mac" class="ex">
<li data-platform="atk,mac" class="ex">X</li>
</ol>
<!-- skipped <optgroup> -->
<!-- skipped <option> -->
<!-- skipped <output> -->
<p data-platform="atk,mac" class="ex">X</p>
<!-- skipped <param> -->
<pre data-platform="atk,mac" class="ex">X</pre>
<progress data-platform="atk,mac" class="ex" value="0.75">X</progress>
<q data-platform="atk,mac" class="ex">X</q>
<!-- skipped <ruby/rp/rt> -->
<s data-platform="atk,mac" class="ex">X</s>
<samp data-platform="atk,mac" class="ex">X</samp>
<!-- skipped <script> -->
AX: ARIA 'region' role is now a landmark; HTML 'section' element should be a landmark only if named https://bugs.webkit.org/show_bug.cgi?id=157331 Reviewed by Chris Fleizach. Source/WebCore: The 'region' role is now mapped as a landmark: The WebCore DocumentRegionRole AccessibilityRole has been renamed to LandmarkRegionRole. The AXDocumentRegion subrole has been renamed to AXLandmarkRegion. A 'section' element is mapped to the LandmarkRegionRole if it has an author-provided accessible name via either the aria-label or aria-labelledby attribute. Otherwise, it is mapped as GroupRole with no subrole. Our existing test coverage for exposure of the 'region' role and the 'section' element is sufficient. These tests were updated to reflect the new behavior. Several new test cases were added to cover both sections with accessible names and those without. * accessibility/AccessibilityObject.cpp: (WebCore::AccessibilityObject::accessibleNameDerivesFromContent): (WebCore::AccessibilityObject::isLandmark): (WebCore::initializeRoleMap): * accessibility/AccessibilityObject.h: * accessibility/AccessibilityRenderObject.cpp: (WebCore::AccessibilityRenderObject::computeAccessibilityIsIgnored): (WebCore::AccessibilityRenderObject::determineAccessibilityRole): * accessibility/atk/WebKitAccessibleWrapperAtk.cpp: (atkRole): * accessibility/ios/WebAccessibilityObjectWrapperIOS.mm: (-[WebAccessibilityObjectWrapper _accessibilityIsLandmarkRole:]): (-[WebAccessibilityObjectWrapper determineIsAccessibilityElement]): * accessibility/mac/WebAccessibilityObjectWrapperBase.mm: (-[WebAccessibilityObjectWrapperBase ariaLandmarkRoleDescription]): * accessibility/mac/WebAccessibilityObjectWrapperMac.mm: (createAccessibilityRoleMap): (-[WebAccessibilityObjectWrapper subrole]): * platform/LocalizedStrings.cpp: (WebCore::AXARIAContentGroupText): Source/WebKit/win: As part of this change, the WebCore DocumentRegionRole AccessibilityRole has been renamed to LandmarkRegionRole. Update MSAARole() to use the new name. * AccessibleBase.cpp: (MSAARole): Tools: Add AXLandmarkRegion to the landmark strings handled by roleToString for objects with ATK_ROLE_LANDMARK. * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp: LayoutTests: Our existing test coverage for exposure of the 'region' role and the 'section' element is sufficient. These tests were updated to reflect the new behavior. Several new test cases were added to cover both sections with accessible names and those without. * accessibility/gtk/xml-roles-exposed-expected.txt: Updated. * accessibility/mac/aria-grouping-roles-expected.txt: Updated. * accessibility/mac/aria-grouping-roles.html: Updated. * accessibility/mac/html-section-elements-expected.txt: Updated. * accessibility/mac/html-section-elements.html: Updated. * accessibility/mac/landmark-not-ignored-expected.txt: Updated. * accessibility/mac/landmark-not-ignored.html: Updated. * accessibility/roles-computedRoleString-expected.txt: Updated. * accessibility/roles-computedRoleString.html: New test cases added. * accessibility/roles-exposed.html: New test cases added. * platform/efl/accessibility/roles-exposed-expected.txt: Updated. * platform/gtk/accessibility/roles-computedRoleString-expected.txt: Updated. * platform/gtk/accessibility/roles-exposed-expected.txt: Updated. * platform/mac-mavericks/accessibility/roles-exposed-expected.txt: Updated. * platform/mac/accessibility/roles-exposed-expected.txt: Updated. * platform/win/accessibility/roles-exposed-expected.txt: Updated. Canonical link: https://commits.webkit.org/175448@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@200415 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2016-05-04 12:54:59 +00:00
<!-- http://webkit.org/b/109024 --><section data-platform="atk,mac" data-note=":not([aria-label]:not([aria-labelledby])" class="ex">X</section>
<section data-platform="atk,mac" class="ex" aria-label="x" data-note="[aria-label]">X</section>
<section data-platform="atk,mac" class="ex" aria-labelledby="section-label" data-note="[aria-labelledby]">
<h2 id="section-label">X</h2>
</section>
<select data-platform="atk,mac" class="ex" data-note=":not([multiple])">
<option data-platform="atk,mac" class="ex">X</option>
<optgroup data-platform="atk,mac" class="ex" label="more">
<option data-platform="atk,mac">X</option>
</optgroup>
</select>
<select data-platform="atk,mac" class="ex" multiple data-note="[multiple]">
<option data-platform="atk,mac" class="ex">X</option>
<optgroup data-platform="atk,mac" class="ex" label="more">
<option>Y</option>
<option>Z</option>
</optgroup>
</select>
<small data-platform="atk,mac" class="ex">X</small>
<!-- skipped <source> -->
AX: [ATK] Inline text elements with accessible object attributes and/or event handlers are not exposed https://bugs.webkit.org/show_bug.cgi?id=139071 Reviewed by Chris Fleizach. Source/WebCore: Adds a new InlineRole accessibility role type for non-focusable inline elements which have an event handler or attribute suggesting possible inclusion by the platform. This is mapped to ATK_ROLE_STATIC for GTK and EFL. On the Mac, it is currently ignored to preserve existing behavior. Added new test cases to the existing roles-exposed.html test. * accessibility/AccessibilityObject.cpp: (WebCore::AccessibilityObject::supportsDatetimeAttribute): Added. * accessibility/AccessibilityObject.h: Added InlineRole. * accessibility/AccessibilityRenderObject.cpp: (WebCore::AccessibilityRenderObject::determineAccessibilityRole): Handle InlineRole. * accessibility/atk/AccessibilityObjectAtk.cpp: (WebCore::AccessibilityObject::accessibilityPlatformIncludesObject): Include InlineRole objects. * accessibility/atk/WebKitAccessibleWrapperAtk.cpp: (atkRole): * accessibility/mac/AccessibilityObjectMac.mm: (WebCore::AccessibilityObject::accessibilityPlatformIncludesObject): Ignore InlineRole objects. * html/HTMLTagNames.in: Added 'time'. Tools: Add string value for ATK_ROLE_STATIC in roleToString. * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp: LayoutTests: * accessibility/roles-exposed.html: New test cases added. * platform/efl/accessibility/roles-exposed-expected.txt: Updated for new test cases. * platform/gtk/accessibility/roles-exposed-expected.txt: Updated for new test cases. * platform/mac-mavericks/accessibility/roles-exposed-expected.txt: Updated for new test cases. * platform/mac-mountainlion/accessibility/roles-exposed-expected.txt: Updated for new test cases. * platform/mac/accessibility/roles-exposed-expected.txt: Updated for new test cases. Canonical link: https://commits.webkit.org/157076@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@176731 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2014-12-03 19:51:28 +00:00
<span data-platform="atk,mac" data-note=":not([onclick])" class="ex">X</span>
<span data-platform="atk,mac" onclick="return;" data-note="[onclick]" class="ex">X</span>
<strong data-platform="atk,mac" class="ex">X</strong>
<!-- skipped <style> -->
<sub data-platform="atk,mac" class="ex">X</sub>
<sup data-platform="atk,mac" class="ex">X</sup>
<svg data-platform="atk,mac" class="ex">X</svg>
<table data-platform="atk,mac" class="ex">
AX: [ATK] Table captions and table rows are missing from the accessible hierarchy https://bugs.webkit.org/show_bug.cgi?id=139005 Reviewed by Chris Fleizach. Source/WebCore: Expose table captions and rows via ATK. Accomplishing the former is done by role mapping and inclusion of the object as a child of the table for ATK. Accomplishing the latter was mostly a matter of deleting all the ATK platform code that had been forcing rows to be ignored. Because captions are not being exposed on the Mac, they are now explicitly being ignored for that platform. Tests: accessibility/aria-table-hierarchy.html accessibility/table-hierarchy.html * accessibility/AccessibilityObject.h: * accessibility/AccessibilityRenderObject.cpp: (WebCore::AccessibilityRenderObject::determineAccessibilityRole): Added CaptionRole. * accessibility/AccessibilityTable.cpp: (WebCore::AccessibilityTable::addChildren): Include non-ignored captions as table children. * accessibility/atk/WebKitAccessibleWrapperAtk.cpp: (webkitAccessibleGetNChildren): Removed special handling for tables. (webkitAccessibleRefChild): Removed special handling for tables. (webkitAccessibleGetIndexInParent): Removed special handling for table cells. (atkRole): Corrected broken mapping for RowRole. (getNChildrenForTable): Deleted. (getChildForTable): Deleted. (getIndexInParentForCellInRow): Deleted. * accessibility/mac/AccessibilityObjectMac.mm: (WebCore::AccessibilityObject::accessibilityPlatformIncludesObject): Ignore captions as table children. Tools: * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp: Add mapping for ATK_ROLE_CAPTION to roleToString LayoutTests: * accessibility/aria-table-hierarchy.html: Added. * accessibility/roles-exposed.html: Removed comment pointing to this bug. * accessibility/table-hierarchy.html: Added. * platform/efl/accessibility/aria-table-hierarchy-expected.txt: Added. * platform/efl/accessibility/roles-exposed-expected.txt: Updated to reflect new behavior. * platform/efl/accessibility/table-detection-expected.txt: Updated to reflect new behavior. * platform/efl/accessibility/table-hierarchy-expected.txt: Added. * platform/efl/accessibility/table-roles-hierarchy-expected.txt: Added. * platform/efl/accessibility/table-with-rules-expected.txt: Updated to reflect new behavior. * platform/gtk/accessibility/aria-table-hierarchy-expected.txt: Updated to reflect new behavior. * platform/gtk/accessibility/aria-table-hierarchy.html: Removed (made into a shared test). * platform/gtk/accessibility/caret-offsets-expected.txt: Updated to reflect new behavior. * platform/gtk/accessibility/caret-offsets.html: Modified to handle inclusion of rows. * platform/gtk/accessibility/roles-exposed-expected.txt: Updated to reflect new behavior. * platform/gtk/accessibility/table-detection-expected.txt: Updated to reflect new behavior. * platform/gtk/accessibility/table-hierarchy-expected.txt: Updated to reflect new behavior. * platform/gtk/accessibility/table-hierarchy.html: Removed (made into a shared test). * platform/gtk/accessibility/table-roles-hierarchy-expected.txt: Added. * platform/gtk/accessibility/table-with-rules-expected.txt: Updated to reflect new behavior. * platform/gtk/accessibility/text-for-range-table-cells.html: Updated to reflect new behavior. * platform/mac/accessibility/aria-table-hierarchy-expected.txt: Added. * platform/mac/accessibility/table-hierarchy-expected.txt: Added. Canonical link: https://commits.webkit.org/157053@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@176706 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2014-12-03 02:02:36 +00:00
<caption data-platform="atk,mac" class="ex">X</caption>
<thead data-platform="atk,mac" class="ex">
<!-- [ATK] Object not exposed (webkit.org/b/139005) --><tr data-platform="atk,mac" class="ex">
<!-- Need separate test to verify colheader/rowheader -->
<th data-platform="atk,mac" class="ex">X</th>
</tr>
</thead>
<tbody data-platform="atk,mac" class="ex">
<!-- [ATK] Object not exposed (webkit.org/b/139005) --><tr data-platform="atk,mac" class="ex">
<td data-platform="atk,mac" class="ex">X</td>
</tr>
</tbody>
<tfoot data-platform="atk,mac" class="ex">
<!-- [ATK] Object not exposed (webkit.org/b/139005) --><tr data-platform="atk,mac" class="ex">
<!-- Need separate test to verify colheader/rowheader -->
<th data-platform="atk,mac" class="ex">X</th>
</tr>
</tfoot>
</table>
<textarea data-platform="atk,mac" class="ex">X</textarea>
AX: [ATK] Inline text elements with accessible object attributes and/or event handlers are not exposed https://bugs.webkit.org/show_bug.cgi?id=139071 Reviewed by Chris Fleizach. Source/WebCore: Adds a new InlineRole accessibility role type for non-focusable inline elements which have an event handler or attribute suggesting possible inclusion by the platform. This is mapped to ATK_ROLE_STATIC for GTK and EFL. On the Mac, it is currently ignored to preserve existing behavior. Added new test cases to the existing roles-exposed.html test. * accessibility/AccessibilityObject.cpp: (WebCore::AccessibilityObject::supportsDatetimeAttribute): Added. * accessibility/AccessibilityObject.h: Added InlineRole. * accessibility/AccessibilityRenderObject.cpp: (WebCore::AccessibilityRenderObject::determineAccessibilityRole): Handle InlineRole. * accessibility/atk/AccessibilityObjectAtk.cpp: (WebCore::AccessibilityObject::accessibilityPlatformIncludesObject): Include InlineRole objects. * accessibility/atk/WebKitAccessibleWrapperAtk.cpp: (atkRole): * accessibility/mac/AccessibilityObjectMac.mm: (WebCore::AccessibilityObject::accessibilityPlatformIncludesObject): Ignore InlineRole objects. * html/HTMLTagNames.in: Added 'time'. Tools: Add string value for ATK_ROLE_STATIC in roleToString. * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp: LayoutTests: * accessibility/roles-exposed.html: New test cases added. * platform/efl/accessibility/roles-exposed-expected.txt: Updated for new test cases. * platform/gtk/accessibility/roles-exposed-expected.txt: Updated for new test cases. * platform/mac-mavericks/accessibility/roles-exposed-expected.txt: Updated for new test cases. * platform/mac-mountainlion/accessibility/roles-exposed-expected.txt: Updated for new test cases. * platform/mac/accessibility/roles-exposed-expected.txt: Updated for new test cases. Canonical link: https://commits.webkit.org/157076@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@176731 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2014-12-03 19:51:28 +00:00
<time data-platform="atk,mac" data-note=":not([datetime])" class="ex">X</time>
<time data-platform="atk,mac" datetime="2014-10-31 00:00" data-note="[datetime]" class="ex">X</time>
<!-- skipped <title> -->
<ul data-platform="atk,mac" class="ex">
<li data-platform="atk,mac" class="ex">X</li>
</ul>
<var data-platform="atk,mac" class="ex">X</var>
<!-- skipped <video> -->
<wbr data-platform="atk,mac" class="ex">X</wbr>
<!-- Todo: I left off adding HTML5 elements here at previous element: https://dvcs.w3.org/hg/html-api-map/raw-file/default/Overview.html -->
<!-- ==================================================================================================== -->
<!-- Abstract ARIA roles in alphabetical order; only generic AXGroup role should be exposed on abstract roles -->
<!-- ==================================================================================================== -->
<div role="command" data-platform="atk,mac" class="ex">X</div>
<div role="composite" data-platform="atk,mac" class="ex">X</div>
<div role="input" data-platform="atk,mac" class="ex">X</div>
<div role="landmark" data-platform="atk,mac" class="ex">X</div>
<div role="range" data-platform="atk,mac" class="ex">X</div>
<div role="roletype" data-platform="atk,mac" class="ex">X</div>
<div role="section" data-platform="atk,mac" class="ex">X</div>
<div role="sectionhead" data-platform="atk,mac" class="ex">X</div>
<div role="select" data-platform="atk,mac" class="ex">X</div>
<div role="structure" data-platform="atk,mac" class="ex">X</div>
<div role="widget" data-platform="atk,mac" class="ex">X</div>
<div role="window" data-platform="atk,mac" class="ex">X</div>
<!-- ==================================================================================================== -->
<!-- Non-abstract ARIA roles in alphabetical order, excepting the need for nesting (e.g. row is with its grid parent) -->
<!-- ==================================================================================================== -->
<div role="alert" data-platform="atk,mac" class="ex">X</div>
<div role="alertdialog" data-platform="atk,mac" class="ex">X</div>
<div role="application" data-platform="atk,mac" class="ex">X</div>
<div role="article" data-platform="atk,mac" class="ex">X</div>
<div role="banner" data-platform="atk,mac" class="ex">X</div>
AX: Implement support for new blockquote, caption, and paragraph ARIA roles https://bugs.webkit.org/show_bug.cgi?id=186274 Reviewed by Chris Fleizach. Source/WebCore: Add the three new ARIA roles to the internal rolemap so that they are treated in the same fashion as their HTML element counterparts. Also ensure that an element with an explicit caption role does not get pruned from the macOS accessibility tree. No new tests. Instead add the roles to the existing role-exposure tests. * accessibility/AccessibilityObject.cpp: (WebCore::initializeRoleMap): * accessibility/mac/AccessibilityObjectMac.mm: (WebCore::AccessibilityObject::accessibilityPlatformIncludesObject const): * accessibility/mac/WebAccessibilityObjectWrapperMac.mm: (createAccessibilityRoleMap): LayoutTests: Add the three ARIA roles to the existing role-exposure tests and update expectations accordingly. Also update several additional GTK tests because the mapping of these ARIA roles results in new object attributes appearing for native HTML blockquote, paragraph, and caption elements. * accessibility/gtk/object-attributes-expected.txt: * accessibility/gtk/xml-roles-exposed-expected.txt: * accessibility/gtk/xml-roles-exposed.html: * accessibility/roles-computedRoleString-expected.txt: * accessibility/roles-computedRoleString.html: * accessibility/roles-exposed.html: * inspector/dom/hideHighlight-expected.txt: * platform/gtk/accessibility/roles-computedRoleString-expected.txt: * platform/gtk/accessibility/roles-exposed-expected.txt: * platform/gtk/accessibility/table-one-cell-expected.txt: * platform/mac/accessibility/roles-computedRoleString-expected.txt: * platform/mac/accessibility/roles-exposed-expected.txt: Canonical link: https://commits.webkit.org/201689@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@232508 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2018-06-05 15:55:06 +00:00
<div role="blockquote" data-platform="atk,mac" class="ex">X</div>
<div role="button" data-platform="atk,mac" class="ex">X</div>
AX: Implement support for new blockquote, caption, and paragraph ARIA roles https://bugs.webkit.org/show_bug.cgi?id=186274 Reviewed by Chris Fleizach. Source/WebCore: Add the three new ARIA roles to the internal rolemap so that they are treated in the same fashion as their HTML element counterparts. Also ensure that an element with an explicit caption role does not get pruned from the macOS accessibility tree. No new tests. Instead add the roles to the existing role-exposure tests. * accessibility/AccessibilityObject.cpp: (WebCore::initializeRoleMap): * accessibility/mac/AccessibilityObjectMac.mm: (WebCore::AccessibilityObject::accessibilityPlatformIncludesObject const): * accessibility/mac/WebAccessibilityObjectWrapperMac.mm: (createAccessibilityRoleMap): LayoutTests: Add the three ARIA roles to the existing role-exposure tests and update expectations accordingly. Also update several additional GTK tests because the mapping of these ARIA roles results in new object attributes appearing for native HTML blockquote, paragraph, and caption elements. * accessibility/gtk/object-attributes-expected.txt: * accessibility/gtk/xml-roles-exposed-expected.txt: * accessibility/gtk/xml-roles-exposed.html: * accessibility/roles-computedRoleString-expected.txt: * accessibility/roles-computedRoleString.html: * accessibility/roles-exposed.html: * inspector/dom/hideHighlight-expected.txt: * platform/gtk/accessibility/roles-computedRoleString-expected.txt: * platform/gtk/accessibility/roles-exposed-expected.txt: * platform/gtk/accessibility/table-one-cell-expected.txt: * platform/mac/accessibility/roles-computedRoleString-expected.txt: * platform/mac/accessibility/roles-exposed-expected.txt: Canonical link: https://commits.webkit.org/201689@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@232508 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2018-06-05 15:55:06 +00:00
<div role="caption" data-platform="atk,mac" class="ex">X</div>
<div role="checkbox" data-platform="atk,mac" class="ex">X</div>
<div role="combobox" data-platform="atk,mac" class="ex">X</div>
<div role="complementary" data-platform="atk,mac" class="ex">X</div>
<div role="contentinfo" data-platform="atk,mac" class="ex">X</div>
<div role="definition" data-platform="atk,mac" class="ex">X</div>
AX: Implement support for ARIA roles insertion, deletion, subscript, superscript, and time https://bugs.webkit.org/show_bug.cgi?id=199692 Reviewed by Chris Fleizach. Source/WebCore: Create new AccessibilityRole types which correspond to the new ARIA roles and update AccessibilityRenderObject::determineAccessibilityRole() to assign these internal roles to the related HTML elements. Update both ATK and Mac to recognize these new internal roles. In addition, update the ATK mappings for the ins and del elements to ATK_ROLE_CONTENT_INSERTION and ATK_ROLE_CONTENT_DELETION respectively. Also expose "insertion" and "deletion" via the AtkObject xml-roles attribute so that this information is not completely absent for GTK or WPE built against earlier versions of ATK. Remove AccessibilityObject's isSubscriptStyleGroup() and isSuperscriptStyleGroup(). These two methods were only being used by ATK and are no longer needed for platform role mapping. No new tests. Instead add the roles to the existing role-exposure tests. * accessibility/AccessibilityObject.cpp: (WebCore::initializeRoleMap): (WebCore::AccessibilityObject::isSubscriptStyleGroup const): Deleted. (WebCore::AccessibilityObject::isSuperscriptStyleGroup const): Deleted. * accessibility/AccessibilityObject.h: * accessibility/AccessibilityObjectInterface.h: * accessibility/AccessibilityRenderObject.cpp: (WebCore::AccessibilityRenderObject::determineAccessibilityRole): * accessibility/atk/WebKitAccessible.cpp: (webkitAccessibleGetAttributes): (atkRole): * accessibility/ios/WebAccessibilityObjectWrapperIOS.mm: (-[WebAccessibilityObjectWrapper determineIsAccessibilityElement]): * accessibility/mac/WebAccessibilityObjectWrapperMac.mm: (createAccessibilityRoleMap): (-[WebAccessibilityObjectWrapper subrole]): Tools: Add support for output of AXDeletion and AXInsertion roles for tests. Update GTK and WPE jhbuild modules to use version of ATK and AT-SPI2 which include ROLE_CONTENT_DELETION and ROLE_CONTENT_INSERTION. * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp: * gtk/jhbuild.modules: * wpe/jhbuild.modules: LayoutTests: Add the new roles to the existing role-exposure tests and update expectations accordingly. * accessibility/gtk/object-attributes-expected.txt: * accessibility/gtk/object-attributes.html: * accessibility/gtk/xml-roles-exposed-expected.txt: * accessibility/gtk/xml-roles-exposed.html: * accessibility/roles-computedRoleString.html: * accessibility/roles-exposed.html: * platform/gtk/accessibility/roles-computedRoleString-expected.txt: * platform/gtk/accessibility/roles-exposed-expected.txt: * platform/mac-wk2/accessibility/roles-exposed-expected.txt: * platform/mac/accessibility/roles-computedRoleString-expected.txt: * platform/mac/accessibility/roles-exposed-expected.txt: * platform/wpe/accessibility/roles-computedRoleString-expected.txt: * platform/wpe/accessibility/roles-exposed-expected.txt: Canonical link: https://commits.webkit.org/213585@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@247349 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2019-07-11 13:36:50 +00:00
<div role="deletion" data-platform="atk,mac" class="ex">X</div>
<div role="dialog" data-platform="atk,mac" class="ex">X</div>
<div role="directory" data-platform="atk,mac" class="ex">X</div>
<!-- The 'doc-*' roles are defined the ARIA DPUB mobile: https://www.w3.org/TR/dpub-aam-1.0/ -->
<!-- Editor's draft is currently at https://rawgit.com/w3c/aria/master/dpub-aam/dpub-aam.html -->
<div role="doc-abstract" data-platform="atk,mac" class="ex">X</div>
<div role="doc-acknowledgments" data-platform="atk,mac" class="ex">X</div>
<div role="doc-afterword" data-platform="atk,mac" class="ex">X</div>
<div role="doc-appendix" data-platform="atk,mac" class="ex">X</div>
<div role="doc-backlink" data-platform="atk,mac" class="ex">X</div>
<div role="doc-biblioentry" data-platform="atk,mac" class="ex">X</div>
<div role="doc-bibliography" data-platform="atk,mac" class="ex">X</div>
<div role="doc-biblioref" data-platform="atk,mac" class="ex">X</div>
<div role="doc-chapter" data-platform="atk,mac" class="ex">X</div>
<div role="doc-colophon" data-platform="atk,mac" class="ex">X</div>
<div role="doc-conclusion" data-platform="atk,mac" class="ex">X</div>
<div role="doc-cover" data-platform="atk,mac" class="ex">X</div>
<div role="doc-credit" data-platform="atk,mac" class="ex">X</div>
<div role="doc-credits" data-platform="atk,mac" class="ex">X</div>
<div role="doc-dedication" data-platform="atk,mac" class="ex">X</div>
<div role="doc-endnote" data-platform="atk,mac" class="ex">X</div>
<div role="doc-endnotes" data-platform="atk,mac" class="ex">X</div>
<div role="doc-epigraph" data-platform="atk,mac" class="ex">X</div>
<div role="doc-epilogue" data-platform="atk,mac" class="ex">X</div>
<div role="doc-errata" data-platform="atk,mac" class="ex">X</div>
<div role="doc-example" data-platform="atk,mac" class="ex">X</div>
<div role="doc-footnote" data-platform="atk,mac" class="ex">X</div>
<div role="doc-foreword" data-platform="atk,mac" class="ex">X</div>
<div role="doc-glossary" data-platform="atk,mac" class="ex">X</div>
<div role="doc-glossref" data-platform="atk,mac" class="ex">X</div>
<div role="doc-index" data-platform="atk,mac" class="ex">X</div>
<div role="doc-introduction" data-platform="atk,mac" class="ex">X</div>
<div role="doc-noteref" data-platform="atk,mac" class="ex">X</div>
<div role="doc-notice" data-platform="atk,mac" class="ex">X</div>
<div role="doc-pagebreak" data-platform="atk,mac" class="ex">X</div>
<div role="doc-pagelist" data-platform="atk,mac" class="ex">X</div>
<div role="doc-part" data-platform="atk,mac" class="ex">X</div>
<div role="doc-preface" data-platform="atk,mac" class="ex">X</div>
<div role="doc-prologue" data-platform="atk,mac" class="ex">X</div>
<div role="doc-pullquote" data-platform="atk,mac" class="ex">X</div>
<div role="doc-qna" data-platform="atk,mac" class="ex">X</div>
<div role="doc-subtitle" data-platform="atk,mac" class="ex">X</div>
<div role="doc-tip" data-platform="atk,mac" class="ex">X</div>
<div role="doc-toc" data-platform="atk,mac" class="ex">X</div>
<div role="document" data-platform="atk,mac" class="ex">X</div>
AX: Implement support for ARIA "figure" and "term" roles; update AXRoleDescription mapping for "feed" role https://bugs.webkit.org/show_bug.cgi?id=171183 Reviewed by Chris Fleizach. Source/WebCore: Create FeedRole, FigureRole, and TermRole and map them on the Mac and Gtk ports. Also rename AccessibilityObject::isFigure() to isFigureElement() for clarity as this method is specific to the HTML element and not the role. No new tests needed: We have existing tests that cover mappings. Add new test cases to roles-exposed.html, xml-roles-exposed.html, and roles-computedRoleString.html. * English.lproj/Localizable.strings: * accessibility/AccessibilityNodeObject.cpp: (WebCore::AccessibilityNodeObject::captionForFigure): (WebCore::AccessibilityNodeObject::alternativeText): * accessibility/AccessibilityObject.cpp: (WebCore::initializeRoleMap): (WebCore::AccessibilityObject::isFigureElement): Added. (WebCore::AccessibilityObject::isFigure): Deleted. * accessibility/AccessibilityObject.h: * accessibility/AccessibilityRenderObject.cpp: (WebCore::AccessibilityRenderObject::exposesTitleUIElement): (WebCore::AccessibilityRenderObject::titleUIElement): (WebCore::AccessibilityRenderObject::computeAccessibilityIsIgnored): (WebCore::AccessibilityRenderObject::determineAccessibilityRole): * accessibility/atk/WebKitAccessibleWrapperAtk.cpp: (atkRole): * accessibility/ios/WebAccessibilityObjectWrapperIOS.mm: (-[WebAccessibilityObjectWrapper determineIsAccessibilityElement]): * accessibility/mac/WebAccessibilityObjectWrapperMac.mm: (createAccessibilityRoleMap): (-[WebAccessibilityObjectWrapper subrole]): (-[WebAccessibilityObjectWrapper roleDescription]): * platform/LocalizedStrings.cpp: (WebCore::AXFeedText): * platform/LocalizedStrings.h: LayoutTests: New test cases added and expectations updated. * accessibility/gtk/xml-roles-exposed-expected.txt: * accessibility/gtk/xml-roles-exposed.html: * accessibility/roles-computedRoleString.html: * accessibility/roles-exposed.html: * platform/gtk/accessibility/roles-exposed-expected.txt: * platform/mac/accessibility/roles-computedRoleString-expected.txt: * platform/mac/accessibility/roles-exposed-expected.txt: Canonical link: https://commits.webkit.org/188394@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@216007 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2017-05-01 07:49:23 +00:00
<div role="figure" data-platform="atk,mac" class="ex">X</div>
<div role="form" data-platform="atk,mac" class="ex">X</div>
AX: Implement support for Graphics ARIA roles https://bugs.webkit.org/show_bug.cgi?id=181796 Reviewed by Chris Fleizach. Source/WebCore: Add mappings for the three new roles (graphics-document, graphics-object, and graphics-symbol) as per the Graphics Accessibility API Mappings spec. No new tests; instead, new test cases added to roles-computedRoleString.html and roles-exposed.html. * accessibility/AccessibilityObject.cpp: (WebCore::initializeRoleMap): (WebCore::AccessibilityObject::computedRoleString const): * accessibility/AccessibilityObject.h: * accessibility/atk/WebKitAccessibleWrapperAtk.cpp: (atkRole): * accessibility/ios/WebAccessibilityObjectWrapperIOS.mm: (-[WebAccessibilityObjectWrapper determineIsAccessibilityElement]): * accessibility/mac/WebAccessibilityObjectWrapperMac.mm: (createAccessibilityRoleMap): (-[WebAccessibilityObjectWrapper subrole]): (-[WebAccessibilityObjectWrapper roleDescription]): LayoutTests: Add new test cases and update expectations accordingly. * accessibility/gtk/xml-roles-exposed-expected.txt: * accessibility/gtk/xml-roles-exposed.html: * accessibility/roles-computedRoleString.html: * accessibility/roles-exposed.html: * platform/gtk/accessibility/roles-computedRoleString-expected.txt: * platform/gtk/accessibility/roles-exposed-expected.txt: * platform/mac/accessibility/roles-computedRoleString-expected.txt: * platform/mac/accessibility/roles-exposed-expected.txt: Canonical link: https://commits.webkit.org/197772@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@227344 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2018-01-22 19:16:52 +00:00
<div role="graphics-document" data-platform="atk,mac" class="ex">X</div>
<div role="graphics-object" data-platform="atk,mac" class="ex">X</div>
<div role="graphics-symbol" data-platform="atk,mac" class="ex">X</div>
<div role="grid" data-platform="atk,mac" class="ex">
<div role="rowgroup" data-platform="atk,mac" class="ex">
<div role="row" data-platform="atk,mac" class="ex">
<!-- Note: diff between rowheader, columnheader, and gridcell is in cross-reference from grid; need additional non-role verification in another test. -->
<div role="rowheader" data-platform="atk,mac" class="ex">X</div>
<div role="columnheader" data-platform="atk,mac" class="ex">X</div>
<div role="gridcell" data-platform="atk,mac" class="ex">X</div>
</div>
</div>
</div>
<div role="feed" data-platform="atk,mac" class="ex">X</div>
<div role="group" data-platform="atk,mac" class="ex">X</div>
<div role="heading" data-platform="atk,mac" class="ex">X</div>
<div role="img" data-platform="atk,mac" class="ex">X</div>
AX: Implement support for ARIA roles insertion, deletion, subscript, superscript, and time https://bugs.webkit.org/show_bug.cgi?id=199692 Reviewed by Chris Fleizach. Source/WebCore: Create new AccessibilityRole types which correspond to the new ARIA roles and update AccessibilityRenderObject::determineAccessibilityRole() to assign these internal roles to the related HTML elements. Update both ATK and Mac to recognize these new internal roles. In addition, update the ATK mappings for the ins and del elements to ATK_ROLE_CONTENT_INSERTION and ATK_ROLE_CONTENT_DELETION respectively. Also expose "insertion" and "deletion" via the AtkObject xml-roles attribute so that this information is not completely absent for GTK or WPE built against earlier versions of ATK. Remove AccessibilityObject's isSubscriptStyleGroup() and isSuperscriptStyleGroup(). These two methods were only being used by ATK and are no longer needed for platform role mapping. No new tests. Instead add the roles to the existing role-exposure tests. * accessibility/AccessibilityObject.cpp: (WebCore::initializeRoleMap): (WebCore::AccessibilityObject::isSubscriptStyleGroup const): Deleted. (WebCore::AccessibilityObject::isSuperscriptStyleGroup const): Deleted. * accessibility/AccessibilityObject.h: * accessibility/AccessibilityObjectInterface.h: * accessibility/AccessibilityRenderObject.cpp: (WebCore::AccessibilityRenderObject::determineAccessibilityRole): * accessibility/atk/WebKitAccessible.cpp: (webkitAccessibleGetAttributes): (atkRole): * accessibility/ios/WebAccessibilityObjectWrapperIOS.mm: (-[WebAccessibilityObjectWrapper determineIsAccessibilityElement]): * accessibility/mac/WebAccessibilityObjectWrapperMac.mm: (createAccessibilityRoleMap): (-[WebAccessibilityObjectWrapper subrole]): Tools: Add support for output of AXDeletion and AXInsertion roles for tests. Update GTK and WPE jhbuild modules to use version of ATK and AT-SPI2 which include ROLE_CONTENT_DELETION and ROLE_CONTENT_INSERTION. * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp: * gtk/jhbuild.modules: * wpe/jhbuild.modules: LayoutTests: Add the new roles to the existing role-exposure tests and update expectations accordingly. * accessibility/gtk/object-attributes-expected.txt: * accessibility/gtk/object-attributes.html: * accessibility/gtk/xml-roles-exposed-expected.txt: * accessibility/gtk/xml-roles-exposed.html: * accessibility/roles-computedRoleString.html: * accessibility/roles-exposed.html: * platform/gtk/accessibility/roles-computedRoleString-expected.txt: * platform/gtk/accessibility/roles-exposed-expected.txt: * platform/mac-wk2/accessibility/roles-exposed-expected.txt: * platform/mac/accessibility/roles-computedRoleString-expected.txt: * platform/mac/accessibility/roles-exposed-expected.txt: * platform/wpe/accessibility/roles-computedRoleString-expected.txt: * platform/wpe/accessibility/roles-exposed-expected.txt: Canonical link: https://commits.webkit.org/213585@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@247349 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2019-07-11 13:36:50 +00:00
<div role="insertion" data-platform="atk,mac" class="ex">X</div>
<div role="link" data-platform="atk,mac" class="ex">X</div>
<div role="list" data-platform="atk,mac" class="ex">
<div role="listitem" data-platform="atk,mac" class="ex">X</div>
</div>
<div role="listbox" data-platform="atk,mac" class="ex">
<div role="option" data-platform="atk,mac" class="ex">X</div>
</div>
<div role="log" data-platform="atk,mac" class="ex">X</div>
<div role="main" data-platform="atk,mac" class="ex">X</div>
<div role="marquee" data-platform="atk,mac" class="ex">X</div>
<div role="math" data-platform="atk,mac" class="ex">X</div>
<div role="menu" data-platform="atk,mac" class="ex">
<!-- Note: diff between menuitem types is an attribute; need additional non-role verification in another test. -->
<div role="menuitem" data-platform="atk,mac" class="ex">X</div>
<div role="menuitemcheckbox" data-platform="atk,mac" class="ex">X</div>
<div role="menuitemradio" data-platform="atk,mac" class="ex">X</div>
</div>
<div role="menubar" data-platform="atk,mac" class="ex">
<!-- Note: diff between menuitem types is an attribute; need additional non-role verification in another test. -->
<div role="menuitem" data-platform="atk,mac" class="ex">X</div>
<div role="menuitemcheckbox" data-platform="atk,mac" class="ex">X</div>
<div role="menuitemradio" data-platform="atk,mac" class="ex">X</div>
</div>
2019-03-20 13:09:02 +00:00
<div role="meter" data-platform="atk,mac" class="ex">X</div>
<div role="navigation" data-platform="atk,mac" class="ex">X</div>
<div role="note" data-platform="atk,mac" class="ex">X</div>
AX: Implement support for new blockquote, caption, and paragraph ARIA roles https://bugs.webkit.org/show_bug.cgi?id=186274 Reviewed by Chris Fleizach. Source/WebCore: Add the three new ARIA roles to the internal rolemap so that they are treated in the same fashion as their HTML element counterparts. Also ensure that an element with an explicit caption role does not get pruned from the macOS accessibility tree. No new tests. Instead add the roles to the existing role-exposure tests. * accessibility/AccessibilityObject.cpp: (WebCore::initializeRoleMap): * accessibility/mac/AccessibilityObjectMac.mm: (WebCore::AccessibilityObject::accessibilityPlatformIncludesObject const): * accessibility/mac/WebAccessibilityObjectWrapperMac.mm: (createAccessibilityRoleMap): LayoutTests: Add the three ARIA roles to the existing role-exposure tests and update expectations accordingly. Also update several additional GTK tests because the mapping of these ARIA roles results in new object attributes appearing for native HTML blockquote, paragraph, and caption elements. * accessibility/gtk/object-attributes-expected.txt: * accessibility/gtk/xml-roles-exposed-expected.txt: * accessibility/gtk/xml-roles-exposed.html: * accessibility/roles-computedRoleString-expected.txt: * accessibility/roles-computedRoleString.html: * accessibility/roles-exposed.html: * inspector/dom/hideHighlight-expected.txt: * platform/gtk/accessibility/roles-computedRoleString-expected.txt: * platform/gtk/accessibility/roles-exposed-expected.txt: * platform/gtk/accessibility/table-one-cell-expected.txt: * platform/mac/accessibility/roles-computedRoleString-expected.txt: * platform/mac/accessibility/roles-exposed-expected.txt: Canonical link: https://commits.webkit.org/201689@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@232508 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2018-06-05 15:55:06 +00:00
<div role="paragraph" data-platform="atk,mac" class="ex">X</div>
<div role="presentation" data-platform="atk,mac" class="ex">X</div>
<div role="progressbar" data-platform="atk,mac" class="ex">X</div>
<div role="radiogroup" data-platform="atk,mac" class="ex">
<div role="radio" data-platform="atk,mac" class="ex">X</div>
</div>
AX: ARIA "region" role which lacks an accessible name should not be treated as a landmark https://bugs.webkit.org/show_bug.cgi?id=171180 Reviewed by Chris Fleizach. Source/WebCore: Remove mapping of LandmarkRegionRole for regions which lack an accessible name. Doing so had a side effect of causing a number of DPub ARIA roles to stop being mapped as ARIA landmarks. This is due to our internal role mappings, namely treating the DPub ARIA landmark roles as if they were regions. Because DPub's landmarks do not subclass region, and do not have the same name-from-author requirement as region, create a new LandmarkDocRegionRole AccessibilityRole and map DPub ARIA's generic landmarks to it. No new tests because we already have sufficient coverage. Several existing tests were given additional test cases to cover named and unnamed regions, and test expectations updated accordingly. * accessibility/AccessibilityNodeObject.cpp: (WebCore::AccessibilityNodeObject::determineAriaRoleAttribute): * accessibility/AccessibilityObject.cpp: (WebCore::AccessibilityObject::accessibleNameDerivesFromContent): (WebCore::AccessibilityObject::isLandmark): (WebCore::initializeRoleMap): (WebCore::AccessibilityObject::computedRoleString): * accessibility/AccessibilityObject.h: * accessibility/atk/WebKitAccessibleWrapperAtk.cpp: (atkRole): * accessibility/ios/WebAccessibilityObjectWrapperIOS.mm: (-[WebAccessibilityObjectWrapper _accessibilityIsLandmarkRole:]): (-[WebAccessibilityObjectWrapper determineIsAccessibilityElement]): * accessibility/mac/WebAccessibilityObjectWrapperBase.mm: (-[WebAccessibilityObjectWrapperBase ariaLandmarkRoleDescription]): * accessibility/mac/WebAccessibilityObjectWrapperMac.mm: (createAccessibilityRoleMap): (-[WebAccessibilityObjectWrapper subrole]): LayoutTests: Add new test cases to several tests so that we have coverage for both named and unnamed regions, which now have different mappings. In aria-namefrom-author.html, the region role was replaced with the table role because the test requires elements which have mapped ARIA roles and lack an author-provided name. A region which lacks an author-provided name is no longer mapped as an ARIA role as per the spec. Table was introduced in ARIA 1.1 and serves the same purpose with respect to what is being tested. * accessibility/aria-namefrom-author.html: * accessibility/gtk/xml-roles-exposed-expected.txt: * accessibility/gtk/xml-roles-exposed.html: * accessibility/mac/aria-grouping-roles.html: * accessibility/roles-computedRoleString.html: * accessibility/roles-exposed.html: * platform/gtk/accessibility/roles-exposed-expected.txt: * platform/mac/accessibility/roles-computedRoleString-expected.txt: * platform/mac/accessibility/roles-exposed-expected.txt: Canonical link: https://commits.webkit.org/188359@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@215968 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2017-04-29 02:07:21 +00:00
<div role="region" data-platform="atk,mac" class="ex" data-note=":not([aria-label]:not([aria-labelledby])">X</div>
<div role="region" data-platform="atk,mac" class="ex" aria-label="x" data-note="[aria-label]">X</div>
<div role="region" data-platform="atk,mac" class="ex" aria-labelledby="region-label" data-note="[aria-labelledby]">
<h2 id="region-label">X</h2>
</div>
<div role="scrollbar" data-platform="atk,mac" class="ex">X</div>
<div role="search" data-platform="atk,mac" class="ex">X</div>
AX: Implement support for ARIA 1.1 'searchbox' role https://bugs.webkit.org/show_bug.cgi?id=142004 Reviewed by Chris Fleizach. Source/WebCore: Add a new accessible SearchFieldRole to handle both the ARIA role and the "search" input type. No new tests. Instead, added a new test case to roles-exposed.html for the mapping, and updated roles-computedRoleString.html because there is now a one-to-one mapping between the "search" input type and an ARIA role. * accessibility/AccessibilityNodeObject.cpp: (WebCore::AccessibilityNodeObject::determineAccessibilityRole): (WebCore::AccessibilityNodeObject::isSearchField): * accessibility/AccessibilityObject.cpp: (WebCore::AccessibilityObject::isARIATextControl): (WebCore::AccessibilityObject::isARIAInput): (WebCore::initializeRoleMap): * accessibility/AccessibilityObject.h: * accessibility/AccessibilityRenderObject.cpp: (WebCore::AccessibilityRenderObject::determineAccessibilityRole): * accessibility/atk/WebKitAccessibleWrapperAtk.cpp: (atkRole): * accessibility/ios/WebAccessibilityObjectWrapperIOS.mm: (-[WebAccessibilityObjectWrapper accessibilityCanFuzzyHitTest]): (-[WebAccessibilityObjectWrapper accessibilityTraits]): (-[WebAccessibilityObjectWrapper determineIsAccessibilityElement]): * accessibility/mac/WebAccessibilityObjectWrapperMac.mm: (createAccessibilityRoleMap): LayoutTests: * accessibility/roles-computedRoleString-expected.txt: Updated for new role. * accessibility/roles-computedRoleString.html: Updated for new role. * accessibility/roles-exposed.html: New test case added. * platform/efl/accessibility/roles-exposed-expected.txt: Updated for new test case. * platform/gtk/accessibility/roles-exposed-expected.txt: Updated for new test case. * platform/mac-mavericks/accessibility/roles-exposed-expected.txt: Updated for new test case. * platform/mac/accessibility/roles-exposed-expected.txt: Updated for new test case. Canonical link: https://commits.webkit.org/160036@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@180621 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2015-02-25 10:04:16 +00:00
<div role="searchbox" data-platform="atk,mac" class="ex">X</div>
<div role="separator" data-platform="atk,mac" class="ex">X</div>
<div role="slider" data-platform="atk,mac" class="ex">X</div>
<div role="spinbutton" data-platform="atk,mac" class="ex">X</div>
<div role="status" data-platform="atk,mac" class="ex">X</div>
AX: Implement support for ARIA roles insertion, deletion, subscript, superscript, and time https://bugs.webkit.org/show_bug.cgi?id=199692 Reviewed by Chris Fleizach. Source/WebCore: Create new AccessibilityRole types which correspond to the new ARIA roles and update AccessibilityRenderObject::determineAccessibilityRole() to assign these internal roles to the related HTML elements. Update both ATK and Mac to recognize these new internal roles. In addition, update the ATK mappings for the ins and del elements to ATK_ROLE_CONTENT_INSERTION and ATK_ROLE_CONTENT_DELETION respectively. Also expose "insertion" and "deletion" via the AtkObject xml-roles attribute so that this information is not completely absent for GTK or WPE built against earlier versions of ATK. Remove AccessibilityObject's isSubscriptStyleGroup() and isSuperscriptStyleGroup(). These two methods were only being used by ATK and are no longer needed for platform role mapping. No new tests. Instead add the roles to the existing role-exposure tests. * accessibility/AccessibilityObject.cpp: (WebCore::initializeRoleMap): (WebCore::AccessibilityObject::isSubscriptStyleGroup const): Deleted. (WebCore::AccessibilityObject::isSuperscriptStyleGroup const): Deleted. * accessibility/AccessibilityObject.h: * accessibility/AccessibilityObjectInterface.h: * accessibility/AccessibilityRenderObject.cpp: (WebCore::AccessibilityRenderObject::determineAccessibilityRole): * accessibility/atk/WebKitAccessible.cpp: (webkitAccessibleGetAttributes): (atkRole): * accessibility/ios/WebAccessibilityObjectWrapperIOS.mm: (-[WebAccessibilityObjectWrapper determineIsAccessibilityElement]): * accessibility/mac/WebAccessibilityObjectWrapperMac.mm: (createAccessibilityRoleMap): (-[WebAccessibilityObjectWrapper subrole]): Tools: Add support for output of AXDeletion and AXInsertion roles for tests. Update GTK and WPE jhbuild modules to use version of ATK and AT-SPI2 which include ROLE_CONTENT_DELETION and ROLE_CONTENT_INSERTION. * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp: * gtk/jhbuild.modules: * wpe/jhbuild.modules: LayoutTests: Add the new roles to the existing role-exposure tests and update expectations accordingly. * accessibility/gtk/object-attributes-expected.txt: * accessibility/gtk/object-attributes.html: * accessibility/gtk/xml-roles-exposed-expected.txt: * accessibility/gtk/xml-roles-exposed.html: * accessibility/roles-computedRoleString.html: * accessibility/roles-exposed.html: * platform/gtk/accessibility/roles-computedRoleString-expected.txt: * platform/gtk/accessibility/roles-exposed-expected.txt: * platform/mac-wk2/accessibility/roles-exposed-expected.txt: * platform/mac/accessibility/roles-computedRoleString-expected.txt: * platform/mac/accessibility/roles-exposed-expected.txt: * platform/wpe/accessibility/roles-computedRoleString-expected.txt: * platform/wpe/accessibility/roles-exposed-expected.txt: Canonical link: https://commits.webkit.org/213585@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@247349 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2019-07-11 13:36:50 +00:00
<div role="subscript" data-platform="atk,mac" class="ex">X</div>
<div role="superscript" data-platform="atk,mac" class="ex">X</div>
<div role="switch" data-platform="atk,mac" class="ex">X</div>
<div role="tablist" data-platform="atk,mac" class="ex">
<div role="tab" data-platform="atk,mac" class="ex">X</div>
</div>
<div role="tabpanel" data-platform="atk,mac" class="ex">X</div>
AX: Implement support for ARIA "figure" and "term" roles; update AXRoleDescription mapping for "feed" role https://bugs.webkit.org/show_bug.cgi?id=171183 Reviewed by Chris Fleizach. Source/WebCore: Create FeedRole, FigureRole, and TermRole and map them on the Mac and Gtk ports. Also rename AccessibilityObject::isFigure() to isFigureElement() for clarity as this method is specific to the HTML element and not the role. No new tests needed: We have existing tests that cover mappings. Add new test cases to roles-exposed.html, xml-roles-exposed.html, and roles-computedRoleString.html. * English.lproj/Localizable.strings: * accessibility/AccessibilityNodeObject.cpp: (WebCore::AccessibilityNodeObject::captionForFigure): (WebCore::AccessibilityNodeObject::alternativeText): * accessibility/AccessibilityObject.cpp: (WebCore::initializeRoleMap): (WebCore::AccessibilityObject::isFigureElement): Added. (WebCore::AccessibilityObject::isFigure): Deleted. * accessibility/AccessibilityObject.h: * accessibility/AccessibilityRenderObject.cpp: (WebCore::AccessibilityRenderObject::exposesTitleUIElement): (WebCore::AccessibilityRenderObject::titleUIElement): (WebCore::AccessibilityRenderObject::computeAccessibilityIsIgnored): (WebCore::AccessibilityRenderObject::determineAccessibilityRole): * accessibility/atk/WebKitAccessibleWrapperAtk.cpp: (atkRole): * accessibility/ios/WebAccessibilityObjectWrapperIOS.mm: (-[WebAccessibilityObjectWrapper determineIsAccessibilityElement]): * accessibility/mac/WebAccessibilityObjectWrapperMac.mm: (createAccessibilityRoleMap): (-[WebAccessibilityObjectWrapper subrole]): (-[WebAccessibilityObjectWrapper roleDescription]): * platform/LocalizedStrings.cpp: (WebCore::AXFeedText): * platform/LocalizedStrings.h: LayoutTests: New test cases added and expectations updated. * accessibility/gtk/xml-roles-exposed-expected.txt: * accessibility/gtk/xml-roles-exposed.html: * accessibility/roles-computedRoleString.html: * accessibility/roles-exposed.html: * platform/gtk/accessibility/roles-exposed-expected.txt: * platform/mac/accessibility/roles-computedRoleString-expected.txt: * platform/mac/accessibility/roles-exposed-expected.txt: Canonical link: https://commits.webkit.org/188394@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@216007 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2017-05-01 07:49:23 +00:00
<div role="term" data-platform="atk,mac" class="ex">X</div>
<div role="textbox" data-platform="atk,mac" class="ex">X</div>
AX: Implement support for ARIA roles insertion, deletion, subscript, superscript, and time https://bugs.webkit.org/show_bug.cgi?id=199692 Reviewed by Chris Fleizach. Source/WebCore: Create new AccessibilityRole types which correspond to the new ARIA roles and update AccessibilityRenderObject::determineAccessibilityRole() to assign these internal roles to the related HTML elements. Update both ATK and Mac to recognize these new internal roles. In addition, update the ATK mappings for the ins and del elements to ATK_ROLE_CONTENT_INSERTION and ATK_ROLE_CONTENT_DELETION respectively. Also expose "insertion" and "deletion" via the AtkObject xml-roles attribute so that this information is not completely absent for GTK or WPE built against earlier versions of ATK. Remove AccessibilityObject's isSubscriptStyleGroup() and isSuperscriptStyleGroup(). These two methods were only being used by ATK and are no longer needed for platform role mapping. No new tests. Instead add the roles to the existing role-exposure tests. * accessibility/AccessibilityObject.cpp: (WebCore::initializeRoleMap): (WebCore::AccessibilityObject::isSubscriptStyleGroup const): Deleted. (WebCore::AccessibilityObject::isSuperscriptStyleGroup const): Deleted. * accessibility/AccessibilityObject.h: * accessibility/AccessibilityObjectInterface.h: * accessibility/AccessibilityRenderObject.cpp: (WebCore::AccessibilityRenderObject::determineAccessibilityRole): * accessibility/atk/WebKitAccessible.cpp: (webkitAccessibleGetAttributes): (atkRole): * accessibility/ios/WebAccessibilityObjectWrapperIOS.mm: (-[WebAccessibilityObjectWrapper determineIsAccessibilityElement]): * accessibility/mac/WebAccessibilityObjectWrapperMac.mm: (createAccessibilityRoleMap): (-[WebAccessibilityObjectWrapper subrole]): Tools: Add support for output of AXDeletion and AXInsertion roles for tests. Update GTK and WPE jhbuild modules to use version of ATK and AT-SPI2 which include ROLE_CONTENT_DELETION and ROLE_CONTENT_INSERTION. * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp: * gtk/jhbuild.modules: * wpe/jhbuild.modules: LayoutTests: Add the new roles to the existing role-exposure tests and update expectations accordingly. * accessibility/gtk/object-attributes-expected.txt: * accessibility/gtk/object-attributes.html: * accessibility/gtk/xml-roles-exposed-expected.txt: * accessibility/gtk/xml-roles-exposed.html: * accessibility/roles-computedRoleString.html: * accessibility/roles-exposed.html: * platform/gtk/accessibility/roles-computedRoleString-expected.txt: * platform/gtk/accessibility/roles-exposed-expected.txt: * platform/mac-wk2/accessibility/roles-exposed-expected.txt: * platform/mac/accessibility/roles-computedRoleString-expected.txt: * platform/mac/accessibility/roles-exposed-expected.txt: * platform/wpe/accessibility/roles-computedRoleString-expected.txt: * platform/wpe/accessibility/roles-exposed-expected.txt: Canonical link: https://commits.webkit.org/213585@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@247349 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2019-07-11 13:36:50 +00:00
<div role="time" data-platform="atk,mac" class="ex">X</div>
<div role="timer" data-platform="atk,mac" class="ex">X</div>
<div role="toolbar" data-platform="atk,mac" class="ex">X</div>
<div role="tooltip" data-platform="atk,mac" class="ex">X</div>
<div role="tree" data-platform="atk,mac" class="ex">
<div role="treeitem" data-platform="atk,mac" class="ex">X</div>
<div role="group" data-platform="atk,mac" class="ex">
<div role="treeitem" data-platform="atk,mac" class="ex">X</div>
</div>
</div>
<div role="treegrid" data-platform="atk,mac" class="ex">
<div role="rowgroup" data-platform="atk,mac" class="ex">
<div role="row" data-platform="atk,mac" class="ex">
<!-- Note: diff between rowheader, columnheader, and gridcell is in cross-reference from grid; need additional non-role verification in another test. -->
[ATK] Changing the mapping of ARIA rowheader and columnheader into respective ATK roles. https://bugs.webkit.org/show_bug.cgi?id=136150 Patch by Andrzej Badowski <a.badowski@samsung.com> on 2014-10-10 Reviewed by Chris Fleizach. Source/WebCore: Expose ColumnHeaderRole and RowHeaderRole objects into ATK. Test: accessibility/table-roles-hierarchy.html * accessibility/AccessibilityRenderObject.cpp: (WebCore::AccessibilityRenderObject::determineAccessibilityRole): Platforms based on ATK: added distinction of roles for the <th> elements. * accessibility/AccessibilityTableCell.cpp: (WebCore::AccessibilityTableCell::determineAccessibilityRole): Platforms based on ATK: the return value is determined in the ancestor. * accessibility/atk/AccessibilityObjectAtk.cpp: (WebCore::AccessibilityObject::accessibilityPlatformIncludesObject): In addition to CellRole also included ColumnHeaderRole and RowHeaderRole. * accessibility/atk/WebKitAccessibleWrapperAtk.cpp: (atkRole): Changing the mapping of ARIA rowheader and columnheader into respective ATK roles. (getInterfaceMaskFromObject): In addition to CellRole also included ColumnHeaderRole and RowHeaderRole. LayoutTests: Minor changes in the roles-exposed test to check the mapping of rowheader and columnheader. As a result of changes in the code test also shows the changes for the <th> element. Changes expectations so that they cover propoer mapping of RowHeaderRole and ColumnHeaderRole. * accessibility/aria-tables-expected.txt: * accessibility/roles-exposed.html: * accessibility/table-roles-hierarchy-expected.txt: Added. * accessibility/table-roles-hierarchy.html: Added. * platform/efl/accessibility/roles-exposed-expected.txt: Added. * platform/efl/accessibility/table-attributes-expected.txt: * platform/efl/accessibility/table-cells-expected.txt: * platform/efl/accessibility/table-detection-expected.txt: * platform/gtk/accessibility/roles-exposed-expected.txt: Added. * platform/gtk/accessibility/table-attributes-expected.txt: * platform/gtk/accessibility/table-cells-expected.txt: * platform/gtk/accessibility/table-sections-expected.txt: * platform/mac/accessibility/aria-tables-expected.txt: Copied from LayoutTests/accessibility/aria-tables-expected.txt. * platform/mac/accessibility/table-roles-hierarchy-expected.txt: Added. Canonical link: https://commits.webkit.org/155444@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@174567 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2014-10-10 08:32:58 +00:00
<div role="rowheader" data-platform="atk,mac" class="ex">X</div>
<div role="columnheader" data-platform="atk,mac" class="ex">X</div>
<div role="gridcell" data-platform="atk,mac" class="ex">X</div>
</div>
</div>
</div>
<div id="console"></div>
<script>
if (window.testRunner && window.accessibilityController) {
description("This tests that native elements and ARIA overrides result in the expected role, subrole and role description.")
var currentPlatform = accessibilityController.platformName;
var examples = document.querySelectorAll('.ex');
var indent = "\n "; // newline and six spaces
var el, supportedPlatforms, ariaRole, axElement, role, subrole, roleDescription, output, result;
for (var i = 0, c = examples.length; i < c; i++) {
el = examples[i];
supportedPlatforms = el.getAttribute('data-platform');
if (!supportedPlatforms || supportedPlatforms.indexOf(currentPlatform) == -1)
continue;
el.id = 'ex' + i;
ariaRole = el.getAttribute('role');
axElement = accessibilityController.accessibleElementById(el.id);
if (axElement) {
role = axElement.role;
subrole = axElement.subrole;
roleDescription = axElement.roleDescription;
} else {
role = 'AXRole: ';
subrole = 'AXSubrole: ';
roleDescription = 'AXRoleDescription: ';
}
output = el.tagName.toLowerCase() + (ariaRole?("[role="+ariaRole+"]"):'');
if (el.getAttribute('data-note')) {
output += el.getAttribute('data-note');
}
output += indent;
output += role + indent;
// In the Mac platform more things than just the role
// are tested so we need to expand a bit the output.
if (currentPlatform == "mac")
output += subrole + indent + roleDescription + indent;
result = document.getElementById('console');
result.innerText += output + "\n";
}
// Once tests are complete, hide all the example markup.
examples = document.querySelectorAll('.ex');
for (var i = 0, c = examples.length; i < c; i++) {
el = examples[i];
Move 'style' from Element to HTMLElement / SVGElement and make it settable https://bugs.webkit.org/show_bug.cgi?id=171795 Reviewed by Alex Christensen. Source/WebCore: Move 'style' from Element to HTMLElement / SVGElement and make it settable as per: - https://drafts.csswg.org/cssom/#the-elementcssinlinestyle-interface Both Firefox and Chrome already match the specification (both for the property location and having it settable). Test: fast/css/Element-style.html * CMakeLists.txt: * DerivedSources.make: * WebCore.xcodeproj/project.pbxproj: * css/ElementCSSInlineStyle.idl: Added. * css/PropertySetCSSStyleDeclaration.h: * css/StyleProperties.cpp: (WebCore::MutableStyleProperties::ensureCSSStyleDeclaration): (WebCore::MutableStyleProperties::ensureInlineCSSStyleDeclaration): * css/StyleProperties.h: * dom/Attr.cpp: (WebCore::Attr::style): * dom/Document.cpp: (WebCore::Document::createCSSStyleDeclaration): * dom/Element.cpp: * dom/Element.h: * dom/Element.idl: * dom/StyledElement.cpp: (WebCore::StyledElement::cssomStyle): * dom/StyledElement.h: * editing/Editor.cpp: (WebCore::Editor::applyEditingStyleToElement): * editing/ReplaceSelectionCommand.cpp: (WebCore::ReplaceSelectionCommand::removeRedundantStylesAndKeepStyleSpanInline): * html/HTMLElement.idl: * html/ImageInputType.cpp: (WebCore::ImageInputType::height): (WebCore::ImageInputType::width): Fix bug that was found by fast/forms/input-width-height-attributes-without-renderer-loaded-image.html. That test relied on setting HTMLElement.style which did not work until now. Call updateLayout() *before* doing the renderer check. * inspector/InspectorCSSAgent.cpp: (WebCore::InspectorCSSAgent::getMatchedStylesForNode): (WebCore::InspectorCSSAgent::getInlineStylesForNode): (WebCore::InspectorCSSAgent::getComputedStyleForNode): (WebCore::InspectorCSSAgent::asInspectorStyleSheet): (WebCore::InspectorCSSAgent::buildObjectForAttributesStyle): * inspector/InspectorCSSAgent.h: * inspector/InspectorStyleSheet.cpp: (WebCore::InspectorStyle::create): (WebCore::InspectorStyle::InspectorStyle): (WebCore::InspectorStyle::extractSourceData): (WebCore::InspectorStyle::setText): (WebCore::InspectorStyleSheet::inspectorStyleForId): (WebCore::InspectorStyleSheetForInlineStyle::create): (WebCore::InspectorStyleSheetForInlineStyle::InspectorStyleSheetForInlineStyle): (WebCore::InspectorStyleSheetForInlineStyle::didModifyElementAttribute): (WebCore::InspectorStyleSheetForInlineStyle::setStyleText): (WebCore::InspectorStyleSheetForInlineStyle::ensureParsedDataReady): (WebCore::InspectorStyleSheetForInlineStyle::inlineStyle): * inspector/InspectorStyleSheet.h: * svg/SVGElement.idl: Source/WebKit/mac: Build fix. * DOM/DOMElement.mm: (-[DOMElement style]): * WebCoreSupport/WebEditorClient.mm: (WebEditorClient::shouldApplyStyle): * WebView/WebFrame.mm: (-[WebFrame _typingStyle]): Source/WebKit2: Build fix. * WebProcess/WebCoreSupport/WebEditorClient.cpp: (WebKit::WebEditorClient::shouldApplyStyle): LayoutTests: * accessibility/roles-exposed.html: Add null check for element.style. * fast/css/Element-style-expected.txt: Added. * fast/css/Element-style.html: Added. Add layout test coverage. * fast/forms/input-width-height-attributes-without-renderer-loaded-image-expected.txt: Rebaseline test that was setting HTMLElement.style which was a no-op until this patch. Now that it actually does something, the input element actually looses its renderer. This found a bug which I fixed in this patch. * js/dom/dom-static-property-for-in-iteration-expected.txt: Rebaseline as property enumeration order has changed. Canonical link: https://commits.webkit.org/188715@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@216426 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2017-05-08 16:50:46 +00:00
if (el.style)
el.style.display = 'none';
}
}
</script>
<script src="../resources/js-test-post.js"></script>
</body>
</html>