[webkit-changes] [WebKit/WebKit] c3140a: AX: implement 'generic' role mapping to unblock so...

Tyler Wilcock noreply at github.com
Mon Mar 20 16:36:43 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: c3140a0b79c99106072d9bb6c2f96990679e7b23
      https://github.com/WebKit/WebKit/commit/c3140a0b79c99106072d9bb6c2f96990679e7b23
  Author: Tyler Wilcock <tyler_w at apple.com>
  Date:   2023-03-20 (Mon, 20 Mar 2023)

  Changed paths:
    M LayoutTests/accessibility/display-contents-element-roles-expected.txt
    A LayoutTests/accessibility/generic-role-expected.txt
    A LayoutTests/accessibility/generic-role.html
    M LayoutTests/accessibility/gtk/aria-current-expected.txt
    M LayoutTests/accessibility/roles-computedRoleString.html
    M LayoutTests/inspector/dom/getAccessibilityPropertiesForNode-expected.txt
    M LayoutTests/platform/glib/accessibility/aria-visible-element-roles-expected.txt
    M LayoutTests/platform/glib/accessibility/display-contents-element-roles-expected.txt
    M LayoutTests/platform/glib/accessibility/image-map2-expected.txt
    M LayoutTests/platform/glib/accessibility/transformed-element-expected.txt
    M LayoutTests/platform/gtk/accessibility/gtk/xml-roles-exposed-expected.txt
    M LayoutTests/platform/gtk/inspector/dom/getAccessibilityPropertiesForNode-expected.txt
    M LayoutTests/platform/ios/accessibility/aria-roles-unignored-expected.txt
    M LayoutTests/platform/ios/accessibility/display-contents-dynamically-added-children-expected.txt
    M LayoutTests/platform/ios/accessibility/display-contents-element-roles-expected.txt
    M LayoutTests/platform/ios/accessibility/dynamically-ignored-canvas-expected.txt
    M LayoutTests/platform/mac-wk1/accessibility/aria-visible-element-roles-expected.txt
    M LayoutTests/platform/mac-wk2/accessibility/aria-visible-element-roles-expected.txt
    M LayoutTests/platform/mac/accessibility/roles-computedRoleString-expected.txt
    M LayoutTests/platform/wpe/accessibility/aria-visible-element-roles-expected.txt
    M Source/WebCore/accessibility/AccessibilityNodeObject.cpp
    M Source/WebCore/accessibility/AccessibilityObject.cpp
    M Source/WebCore/accessibility/AccessibilityObject.h
    M Source/WebCore/accessibility/AccessibilityObjectInterface.h
    M Source/WebCore/accessibility/atspi/AccessibilityAtspi.cpp
    M Source/WebCore/accessibility/atspi/AccessibilityObjectAtspi.cpp
    M Source/WebCore/accessibility/ios/WebAccessibilityObjectWrapperIOS.mm
    M Source/WebCore/accessibility/mac/AccessibilityObjectMac.mm

  Log Message:
  -----------
  AX: implement 'generic' role mapping to unblock some Interop 2023 Accessibility role and label tests
https://bugs.webkit.org/show_bug.cgi?id=253751
rdar://problem/106584266

Reviewed by Chris Fleizach.

We already had AccessibilityRole::Div. This patch replaces it with
AccessibilityRole::Generic, which covers both implicit generics (divs
and spans) and explicit generics (any element with role="generic").
This terminology also more closely matches the spec.

https://w3c.github.io/aria/#generic

* LayoutTests/accessibility/generic-role-expected.txt: Added.
* LayoutTests/accessibility/generic-role.html: Added.

* LayoutTests/accessibility/display-contents-element-roles-expected.txt:
* LayoutTests/accessibility/roles-computedRoleString.html:
* LayoutTests/accessibility/gtk/aria-current-expected.txt:
* LayoutTests/platform/glib/accessibility/aria-visible-element-roles-expected.txt:
* LayoutTests/platform/glib/accessibility/display-contents-element-roles-expected.txt:
* LayoutTests/platform/glib/accessibility/image-map2-expected.txt:
* LayoutTests/platform/glib/accessibility/transformed-element-expected.txt:
* LayoutTests/platform/gtk/accessibility/gtk/xml-roles-exposed-expected.txt:
* LayoutTests/platform/gtk/inspector/dom/getAccessibilityPropertiesForNode-expected.txt:
* LayoutTests/platform/wpe/accessibility/aria-visible-element-roles-expected.txt:
* LayoutTests/inspector/dom/getAccessibilityPropertiesForNode-expected.txt:
* LayoutTests/platform/ios/accessibility/aria-roles-unignored-expected.txt:
* LayoutTests/platform/ios/accessibility/display-contents-dynamically-added-children-expected.txt:
* LayoutTests/platform/ios/accessibility/display-contents-element-roles-expected.txt:
* LayoutTests/platform/ios/accessibility/dynamically-ignored-canvas-expected.txt:
* LayoutTests/platform/mac-wk1/accessibility/aria-visible-element-roles-expected.txt:
* LayoutTests/platform/mac-wk2/accessibility/aria-visible-element-roles-expected.txt:
* LayoutTests/platform/mac/accessibility/roles-computedRoleString-expected.txt:
Update test expectations.

* Source/WebCore/accessibility/AccessibilityNodeObject.cpp:
(WebCore::AccessibilityNodeObject::determineAccessibilityRoleFromNode const):
(WebCore::AccessibilityNodeObject::roleIgnoresTitle const):
* Source/WebCore/accessibility/AccessibilityObject.cpp:
(WebCore::initializeRoleMap):
(WebCore::AccessibilityObject::supportsARIARoleDescription const):
* Source/WebCore/accessibility/AccessibilityObject.h:
(WebCore::AccessibilityObject::hasExplicitGenericRole const):
(WebCore::AccessibilityObject::hasImplicitGenericRole const):
* Source/WebCore/accessibility/AccessibilityObjectInterface.h:
(WebCore::accessibilityRoleToString):
* Source/WebCore/accessibility/atspi/AccessibilityAtspi.cpp:
* Source/WebCore/accessibility/atspi/AccessibilityObjectAtspi.cpp:
* Source/WebCore/accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:
(-[WebAccessibilityObjectWrapper determineIsAccessibilityElement]):
* Source/WebCore/accessibility/mac/AccessibilityObjectMac.mm:
(WebCore::shouldIgnoreGroup):
(WebCore::Accessibility::createPlatformRoleMap):

Canonical link: https://commits.webkit.org/261894@main




More information about the webkit-changes mailing list