[webkit-changes] [WebKit/WebKit] 5da3ca: AX: Improve accessibility for tables and table com...
Tyler Wilcock
noreply at github.com
Fri Jun 23 15:40:36 PDT 2023
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 5da3ca1446784ca0ef8c55e5eb292c855b85575d
https://github.com/WebKit/WebKit/commit/5da3ca1446784ca0ef8c55e5eb292c855b85575d
Author: Tyler Wilcock <tyler_w at apple.com>
Date: 2023-06-23 (Fri, 23 Jun 2023)
Changed paths:
M LayoutTests/accessibility/display-contents/table-expected.txt
M LayoutTests/accessibility/list-detection-expected.txt
M LayoutTests/accessibility/list-detection.html
A LayoutTests/accessibility/table-display-block-expected.txt
A LayoutTests/accessibility/table-display-block.html
A LayoutTests/accessibility/table-display-flex-expected.txt
A LayoutTests/accessibility/table-display-flex.html
A LayoutTests/accessibility/table-display-grid-expected.txt
A LayoutTests/accessibility/table-display-grid.html
A LayoutTests/accessibility/table-display-inline-block-expected.txt
A LayoutTests/accessibility/table-display-inline-block.html
M LayoutTests/platform/glib/accessibility/generated-content-with-display-table-crash-expected.txt
M LayoutTests/platform/glib/accessibility/list-detection-expected.txt
A LayoutTests/platform/glib/accessibility/table-display-block-expected.txt
A LayoutTests/platform/glib/accessibility/table-display-flex-expected.txt
A LayoutTests/platform/glib/accessibility/table-display-grid-expected.txt
A LayoutTests/platform/glib/accessibility/table-display-inline-block-expected.txt
M LayoutTests/platform/ios/TestExpectations
M LayoutTests/platform/ios/accessibility/display-contents/table-expected.txt
A LayoutTests/platform/ios/accessibility/table-display-block-expected.txt
A LayoutTests/platform/ios/accessibility/table-display-flex-expected.txt
A LayoutTests/platform/ios/accessibility/table-display-grid-expected.txt
A LayoutTests/platform/ios/accessibility/table-display-inline-block-expected.txt
M LayoutTests/platform/mac/accessibility/generated-content-with-display-table-crash-expected.txt
M Source/WebCore/accessibility/AXObjectCache.cpp
M Source/WebCore/accessibility/AccessibilityRenderObject.cpp
Log Message:
-----------
AX: Improve accessibility for tables and table components with display flex, grid, block, inline-block, and contents
https://bugs.webkit.org/show_bug.cgi?id=258439
rdar://problem/111202843
Reviewed by Chris Fleizach.
https://bugs.webkit.org/show_bug.cgi?id=258223 did the hard work of computing table structure based on the DOM rather
than the render tree. But even after that patch, tables and table components with assorted display values were often
inaccessible to VoiceOver. This is due to parent-child mismatches caused by anonymous RenderTables, RenderTableRows,
and RenderTableCells generated when these display values are used on table components.
With this patch, we properly ignore all of these anonymous table renderers, completing the transition of table
accessibility to be DOM-based. This matches author expectations and is much more simple to reason about, and fixes
the parent-child mismatches that were breaking the accessibility hierarchy.
* LayoutTests/accessibility/display-contents/table-expected.txt:
* LayoutTests/accessibility/list-detection-expected.txt:
* LayoutTests/accessibility/list-detection.html:
* LayoutTests/accessibility/table-display-block-expected.txt:
* LayoutTests/accessibility/table-display-block.html: Added.
* LayoutTests/accessibility/table-display-flex-expected.txt:
* LayoutTests/accessibility/table-display-flex.html: Added.
* LayoutTests/accessibility/table-display-grid-expected.txt:
* LayoutTests/accessibility/table-display-grid.html: Added.
* LayoutTests/accessibility/table-display-inline-block-expected.txt:
* LayoutTests/accessibility/table-display-inline-block.html: Added.
* LayoutTests/platform/glib/accessibility/list-detection-expected.txt:
* LayoutTests/platform/ios/TestExpectations:
Enable all new tests.
* LayoutTests/platform/ios/accessibility/display-contents/table-expected.txt:
* LayoutTests/platform/ios/accessibility/table-display-block-expected.txt:
* LayoutTests/platform/ios/accessibility/table-display-flex-expected.txt:
* LayoutTests/platform/ios/accessibility/table-display-grid-expected.txt:
* LayoutTests/platform/ios/accessibility/table-display-inline-block-expected.txt:
* LayoutTests/platform/mac/accessibility/generated-content-with-display-table-crash-expected.txt:
* Source/WebCore/accessibility/AXObjectCache.cpp:
(WebCore::AXObjectCache::createObjectFromRenderer):
* Source/WebCore/accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::determineAccessibilityRole):
Canonical link: https://commits.webkit.org/265486@main
More information about the webkit-changes
mailing list