[webkit-changes] [WebKit/WebKit] 23e7f4: AX: Table structure broken for role grid, treegrid...

Tyler Wilcock noreply at github.com
Fri Jun 23 11:43:29 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 23e7f4efeb894ce46f230ca7298130f83563412c
      https://github.com/WebKit/WebKit/commit/23e7f4efeb894ce46f230ca7298130f83563412c
  Author: Tyler Wilcock <tyler_w at apple.com>
  Date:   2023-06-23 (Fri, 23 Jun 2023)

  Changed paths:
    A LayoutTests/accessibility/display-contents/aria-grid-expected.txt
    A LayoutTests/accessibility/display-contents/aria-grid.html
    A LayoutTests/platform/glib/accessibility/display-contents/aria-grid-expected.txt
    M Source/WebCore/accessibility/AXObjectCache.cpp
    M Source/WebCore/accessibility/AccessibilityARIAGrid.cpp
    M Source/WebCore/accessibility/AccessibilityARIAGrid.h
    M Source/WebCore/accessibility/AccessibilityARIAGridCell.cpp
    M Source/WebCore/accessibility/AccessibilityARIAGridCell.h
    M Source/WebCore/accessibility/AccessibilityARIAGridRow.cpp
    M Source/WebCore/accessibility/AccessibilityARIAGridRow.h

  Log Message:
  -----------
  AX: Table structure broken for role grid, treegrid, table, row, gridcell, cell, and columnheader elements with display:contents
https://bugs.webkit.org/show_bug.cgi?id=258430
rdar://problem/111193901

Reviewed by Chris Fleizach.

With this patch, we now create the appropriate subclass for node-only objects (like those with display:contents) with roles equal to
grid, treegrid, table, row, gridcell, cell, and columnheader. This enables the table structure to be built correctly in
AccessibilityTable::addChildren (and represented accurately in various other places that do class type-checking for these table / grid types).

* LayoutTests/accessibility/display-contents/aria-grid-expected.txt: Added.
* LayoutTests/accessibility/display-contents/aria-grid.html: Added.
* Source/WebCore/accessibility/AXObjectCache.cpp:
(WebCore::isAccessibilityARIAGrid):
(WebCore::isAccessibilityARIAGridRow):
(WebCore::isAccessibilityARIAGridCell):
(WebCore::AXObjectCache::createObjectFromRenderer):
(WebCore::createFromNode):
* Source/WebCore/accessibility/AccessibilityARIAGrid.cpp:
(WebCore::AccessibilityARIAGrid::AccessibilityARIAGrid):
(WebCore::AccessibilityARIAGrid::create):
* Source/WebCore/accessibility/AccessibilityARIAGrid.h:
* Source/WebCore/accessibility/AccessibilityARIAGridCell.cpp:
(WebCore::AccessibilityARIAGridCell::AccessibilityARIAGridCell):
(WebCore::AccessibilityARIAGridCell::create):
(WebCore::AccessibilityARIAGridCell::readOnlyValue const):
(WebCore::AccessibilityARIAGridCell::parentRowGroup const): Deleted.
* Source/WebCore/accessibility/AccessibilityARIAGridCell.h:
* Source/WebCore/accessibility/AccessibilityARIAGridRow.cpp:
(WebCore::AccessibilityARIAGridRow::AccessibilityARIAGridRow):
(WebCore::AccessibilityARIAGridRow::create):
* Source/WebCore/accessibility/AccessibilityARIAGridRow.h:

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




More information about the webkit-changes mailing list