Skip to content

AX: Collapse AccessibilityTableCell into AccessibilityRenderObject#50323

Merged
webkit-commit-queue merged 1 commit intoWebKit:mainfrom
hoffmanjoshua:eng/AX-Collapse-AccessibilityTableCell-into-AccessibilityRenderObject
Sep 5, 2025
Merged

AX: Collapse AccessibilityTableCell into AccessibilityRenderObject#50323
webkit-commit-queue merged 1 commit intoWebKit:mainfrom
hoffmanjoshua:eng/AX-Collapse-AccessibilityTableCell-into-AccessibilityRenderObject

Conversation

@hoffmanjoshua
Copy link
Copy Markdown
Contributor

@hoffmanjoshua hoffmanjoshua commented Sep 4, 2025

8a02331

AX: Collapse AccessibilityTableCell into AccessibilityRenderObject
https://bugs.webkit.org/show_bug.cgi?id=298417
rdar://159890500

Reviewed by Tyler Wilcock.

Collapses all of the logic from AccessibilityTableCell into AccessibilityRenderObject
and AccessibilityNodeObject as appropriate.

* Source/WebCore/Sources.txt:
* Source/WebCore/WebCore.xcodeproj/project.pbxproj:
* Source/WebCore/accessibility/AXCoreObject.cpp:
(WebCore::AXCoreObject::hasCellOrRowRole const):
* Source/WebCore/accessibility/AXCoreObject.h:
* Source/WebCore/accessibility/AXLogger.cpp:
(WebCore::AXLogger::log):
* Source/WebCore/accessibility/AXObjectCache.cpp:
(WebCore::AXObjectCache::createObjectFromRenderer):
(WebCore::AXObjectCache::createFromNode):
(WebCore::AXObjectCache::handleRowspanChanged):
(WebCore::AXObjectCache::handleAttributeChange):
(WebCore::AXObjectCache::deferRowspanChange):
(WebCore::isAccessibilityTableCell): Deleted.
(WebCore::isAccessibilityARIAGridCell): Deleted.
* Source/WebCore/accessibility/AXObjectCache.h:
* Source/WebCore/accessibility/AXObjectRareData.h:
(WebCore::AXObjectRareData::columnIndex const):
(WebCore::AXObjectRareData::setColumnIndex):
(WebCore::AXObjectRareData::axColIndexFromRow const):
(WebCore::AXObjectRareData::setAXColIndexFromRow):
(WebCore::AXObjectRareData::effectiveRowSpan const):
(WebCore::AXObjectRareData::incrementEffectiveRowSpan):
(WebCore::AXObjectRareData::resetEffectiveRowSpan):
* Source/WebCore/accessibility/AXTableHelpers.cpp:
(WebCore::AXTableHelpers::isTableCellElement):
* Source/WebCore/accessibility/AXTableHelpers.h:
* Source/WebCore/accessibility/AccessibilityNodeObject.cpp:
(WebCore::AccessibilityNodeObject::determineAccessibilityRole):
(WebCore::AccessibilityNodeObject::computeIsIgnored const):
(WebCore::AccessibilityNodeObject::rowHeaders):
(WebCore::AccessibilityNodeObject::computeCellSlots):
(WebCore::AccessibilityNodeObject::parentTable const):
(WebCore::AccessibilityNodeObject::setRowIndex):
(WebCore::AccessibilityNodeObject::axColumnIndex const):
(WebCore::AccessibilityNodeObject::axRowIndex const):
(WebCore::AccessibilityNodeObject::axRowIndexText const):
(WebCore::AccessibilityNodeObject::isTableCell const):
(WebCore::AccessibilityNodeObject::isARIAGridCell const):
(WebCore::AccessibilityNodeObject::isExposedTableCell const):
(WebCore::AccessibilityNodeObject::parentTableIfTableCell const):
(WebCore::AccessibilityNodeObject::isTableHeaderCell const):
(WebCore::AccessibilityNodeObject::isColumnHeader const):
(WebCore::AccessibilityNodeObject::isRowHeader const):
(WebCore::AccessibilityNodeObject::rowIndexRange const):
(WebCore::AccessibilityNodeObject::columnIndexRange const):
(WebCore::AccessibilityNodeObject::axColumnIndexText const):
(WebCore::AccessibilityNodeObject::colSpan const):
(WebCore::AccessibilityNodeObject::rowSpan const):
(WebCore::AccessibilityNodeObject::incrementEffectiveRowSpan):
(WebCore::AccessibilityNodeObject::resetEffectiveRowSpan):
(WebCore::AccessibilityNodeObject::setAXColIndexFromRow):
(WebCore::AccessibilityNodeObject::setColumnIndex):
(WebCore::AccessibilityNodeObject::parentRow const):
(WebCore::AccessibilityNodeObject::axColumnSpan const):
(WebCore::AccessibilityNodeObject::axRowSpan const):
(WebCore::AccessibilityNodeObject::ensureIndexesUpToDate const):
* Source/WebCore/accessibility/AccessibilityNodeObject.h:
* Source/WebCore/accessibility/AccessibilityObject.cpp:
(WebCore::AccessibilityObject::readOnlyValue const):
* Source/WebCore/accessibility/AccessibilityObject.h:
* Source/WebCore/accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::titleUIElement const):
(WebCore::AccessibilityRenderObject::computeIsIgnored const):
(WebCore::AccessibilityRenderObject::determineAccessibilityRole):
(WebCore::AccessibilityRenderObject::addChildren):
* Source/WebCore/accessibility/AccessibilityRenderObject.h:
* Source/WebCore/accessibility/AccessibilityTableCell.cpp: Removed.
* Source/WebCore/accessibility/AccessibilityTableCell.h: Removed.
* Source/WebCore/accessibility/AccessibilityTree.cpp:
* Source/WebCore/accessibility/atspi/AccessibilityObjectAtspi.cpp:
(WebCore::AccessibilityObjectAtspi::attributes const):
* Source/WebCore/accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:
(-[WebAccessibilityObjectWrapper tableCellParent]):
(-[WebAccessibilityObjectWrapper accessibilityHeaderElements]):
(-[WebAccessibilityObjectWrapper accessibilityARIARowIndex]):
(-[WebAccessibilityObjectWrapper accessibilityARIAColumnIndex]):
(-[WebAccessibilityObjectWrapper accessibilityRowIndexDescription]):
(-[WebAccessibilityObjectWrapper accessibilityColumnIndexDescription]):
(-[WebAccessibilityObjectWrapper accessibilityColumnRange]):
* Source/WebCore/accessibility/isolatedtree/AXIsolatedObject.cpp:
(WebCore::AXIsolatedObject::parentTableIfTableCell const):
(WebCore::AXIsolatedObject::parentTable const):
* Source/WebCore/accessibility/isolatedtree/AXIsolatedObject.h:
* Source/WebCore/accessibility/isolatedtree/AXIsolatedTree.cpp:
(WebCore::AXIsolatedTree::objectChangedIgnoredState):
* Source/WebCore/accessibility/mac/WebAccessibilityObjectWrapperBase.mm:
* Source/WebCore/accessibility/mac/WebAccessibilityObjectWrapperMac.mm:

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

990cd65

Misc iOS, visionOS, tvOS & watchOS macOS Linux Windows Apple Internal
✅ 🧪 style ✅ 🛠 ios ✅ 🛠 mac ✅ 🛠 wpe ✅ 🛠 win ⏳ 🛠 ios-apple
✅ 🧪 bindings ✅ 🛠 ios-sim ✅ 🛠 mac-AS-debug ✅ 🧪 wpe-wk2 🧪 win-tests ⏳ 🛠 mac-apple
✅ 🧪 webkitperl ✅ 🧪 ios-wk2 ✅ 🧪 api-mac ✅ 🧪 api-wpe ⏳ 🛠 vision-apple
✅ 🧪 ios-wk2-wpt ✅ 🧪 mac-wk1 ✅ 🛠 wpe-cairo
✅ 🧪 api-ios ✅ 🧪 mac-wk2 ✅ 🛠 gtk
✅ 🛠 vision ❌ 🧪 mac-AS-debug-wk2 ✅ 🧪 gtk-wk2
✅ 🛠 vision-sim ✅ 🧪 mac-wk2-stress ✅ 🧪 api-gtk
✅ 🛠 🧪 merge ✅ 🧪 vision-wk2 ✅ 🧪 mac-intel-wk2 ✅ 🛠 playstation
✅ 🛠 tv ✅ 🛠 mac-safer-cpp
✅ 🛠 tv-sim
✅ 🛠 watch
✅ 🛠 watch-sim

@hoffmanjoshua hoffmanjoshua self-assigned this Sep 4, 2025
@hoffmanjoshua hoffmanjoshua added the Accessibility For bugs related to accessibility. label Sep 4, 2025
@webkit-ews-buildbot webkit-ews-buildbot added the merging-blocked Applied to prevent a change from being merged label Sep 4, 2025
@hoffmanjoshua hoffmanjoshua removed the merging-blocked Applied to prevent a change from being merged label Sep 4, 2025
@hoffmanjoshua hoffmanjoshua force-pushed the eng/AX-Collapse-AccessibilityTableCell-into-AccessibilityRenderObject branch from ec9e50d to 1f6088e Compare September 4, 2025 23:02
@webkit-ews-buildbot webkit-ews-buildbot added the merging-blocked Applied to prevent a change from being merged label Sep 4, 2025
@hoffmanjoshua hoffmanjoshua removed the merging-blocked Applied to prevent a change from being merged label Sep 5, 2025
@hoffmanjoshua hoffmanjoshua force-pushed the eng/AX-Collapse-AccessibilityTableCell-into-AccessibilityRenderObject branch from 1f6088e to 53ff710 Compare September 5, 2025 06:24
@webkit-ews-buildbot webkit-ews-buildbot added the merging-blocked Applied to prevent a change from being merged label Sep 5, 2025
@hoffmanjoshua hoffmanjoshua removed the merging-blocked Applied to prevent a change from being merged label Sep 5, 2025
@hoffmanjoshua hoffmanjoshua force-pushed the eng/AX-Collapse-AccessibilityTableCell-into-AccessibilityRenderObject branch from 53ff710 to 3165fb0 Compare September 5, 2025 14:59
@hoffmanjoshua hoffmanjoshua force-pushed the eng/AX-Collapse-AccessibilityTableCell-into-AccessibilityRenderObject branch from 3165fb0 to 990cd65 Compare September 5, 2025 16:24
@webkit-ews-buildbot webkit-ews-buildbot added the merging-blocked Applied to prevent a change from being merged label Sep 5, 2025
@hoffmanjoshua hoffmanjoshua added merge-queue Applied to send a pull request to merge-queue and removed merging-blocked Applied to prevent a change from being merged labels Sep 5, 2025
https://bugs.webkit.org/show_bug.cgi?id=298417
rdar://159890500

Reviewed by Tyler Wilcock.

Collapses all of the logic from AccessibilityTableCell into AccessibilityRenderObject
and AccessibilityNodeObject as appropriate.

* Source/WebCore/Sources.txt:
* Source/WebCore/WebCore.xcodeproj/project.pbxproj:
* Source/WebCore/accessibility/AXCoreObject.cpp:
(WebCore::AXCoreObject::hasCellOrRowRole const):
* Source/WebCore/accessibility/AXCoreObject.h:
* Source/WebCore/accessibility/AXLogger.cpp:
(WebCore::AXLogger::log):
* Source/WebCore/accessibility/AXObjectCache.cpp:
(WebCore::AXObjectCache::createObjectFromRenderer):
(WebCore::AXObjectCache::createFromNode):
(WebCore::AXObjectCache::handleRowspanChanged):
(WebCore::AXObjectCache::handleAttributeChange):
(WebCore::AXObjectCache::deferRowspanChange):
(WebCore::isAccessibilityTableCell): Deleted.
(WebCore::isAccessibilityARIAGridCell): Deleted.
* Source/WebCore/accessibility/AXObjectCache.h:
* Source/WebCore/accessibility/AXObjectRareData.h:
(WebCore::AXObjectRareData::columnIndex const):
(WebCore::AXObjectRareData::setColumnIndex):
(WebCore::AXObjectRareData::axColIndexFromRow const):
(WebCore::AXObjectRareData::setAXColIndexFromRow):
(WebCore::AXObjectRareData::effectiveRowSpan const):
(WebCore::AXObjectRareData::incrementEffectiveRowSpan):
(WebCore::AXObjectRareData::resetEffectiveRowSpan):
* Source/WebCore/accessibility/AXTableHelpers.cpp:
(WebCore::AXTableHelpers::isTableCellElement):
* Source/WebCore/accessibility/AXTableHelpers.h:
* Source/WebCore/accessibility/AccessibilityNodeObject.cpp:
(WebCore::AccessibilityNodeObject::determineAccessibilityRole):
(WebCore::AccessibilityNodeObject::computeIsIgnored const):
(WebCore::AccessibilityNodeObject::rowHeaders):
(WebCore::AccessibilityNodeObject::computeCellSlots):
(WebCore::AccessibilityNodeObject::parentTable const):
(WebCore::AccessibilityNodeObject::setRowIndex):
(WebCore::AccessibilityNodeObject::axColumnIndex const):
(WebCore::AccessibilityNodeObject::axRowIndex const):
(WebCore::AccessibilityNodeObject::axRowIndexText const):
(WebCore::AccessibilityNodeObject::isTableCell const):
(WebCore::AccessibilityNodeObject::isARIAGridCell const):
(WebCore::AccessibilityNodeObject::isExposedTableCell const):
(WebCore::AccessibilityNodeObject::parentTableIfTableCell const):
(WebCore::AccessibilityNodeObject::isTableHeaderCell const):
(WebCore::AccessibilityNodeObject::isColumnHeader const):
(WebCore::AccessibilityNodeObject::isRowHeader const):
(WebCore::AccessibilityNodeObject::rowIndexRange const):
(WebCore::AccessibilityNodeObject::columnIndexRange const):
(WebCore::AccessibilityNodeObject::axColumnIndexText const):
(WebCore::AccessibilityNodeObject::colSpan const):
(WebCore::AccessibilityNodeObject::rowSpan const):
(WebCore::AccessibilityNodeObject::incrementEffectiveRowSpan):
(WebCore::AccessibilityNodeObject::resetEffectiveRowSpan):
(WebCore::AccessibilityNodeObject::setAXColIndexFromRow):
(WebCore::AccessibilityNodeObject::setColumnIndex):
(WebCore::AccessibilityNodeObject::parentRow const):
(WebCore::AccessibilityNodeObject::axColumnSpan const):
(WebCore::AccessibilityNodeObject::axRowSpan const):
(WebCore::AccessibilityNodeObject::ensureIndexesUpToDate const):
* Source/WebCore/accessibility/AccessibilityNodeObject.h:
* Source/WebCore/accessibility/AccessibilityObject.cpp:
(WebCore::AccessibilityObject::readOnlyValue const):
* Source/WebCore/accessibility/AccessibilityObject.h:
* Source/WebCore/accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::titleUIElement const):
(WebCore::AccessibilityRenderObject::computeIsIgnored const):
(WebCore::AccessibilityRenderObject::determineAccessibilityRole):
(WebCore::AccessibilityRenderObject::addChildren):
* Source/WebCore/accessibility/AccessibilityRenderObject.h:
* Source/WebCore/accessibility/AccessibilityTableCell.cpp: Removed.
* Source/WebCore/accessibility/AccessibilityTableCell.h: Removed.
* Source/WebCore/accessibility/AccessibilityTree.cpp:
* Source/WebCore/accessibility/atspi/AccessibilityObjectAtspi.cpp:
(WebCore::AccessibilityObjectAtspi::attributes const):
* Source/WebCore/accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:
(-[WebAccessibilityObjectWrapper tableCellParent]):
(-[WebAccessibilityObjectWrapper accessibilityHeaderElements]):
(-[WebAccessibilityObjectWrapper accessibilityARIARowIndex]):
(-[WebAccessibilityObjectWrapper accessibilityARIAColumnIndex]):
(-[WebAccessibilityObjectWrapper accessibilityRowIndexDescription]):
(-[WebAccessibilityObjectWrapper accessibilityColumnIndexDescription]):
(-[WebAccessibilityObjectWrapper accessibilityColumnRange]):
* Source/WebCore/accessibility/isolatedtree/AXIsolatedObject.cpp:
(WebCore::AXIsolatedObject::parentTableIfTableCell const):
(WebCore::AXIsolatedObject::parentTable const):
* Source/WebCore/accessibility/isolatedtree/AXIsolatedObject.h:
* Source/WebCore/accessibility/isolatedtree/AXIsolatedTree.cpp:
(WebCore::AXIsolatedTree::objectChangedIgnoredState):
* Source/WebCore/accessibility/mac/WebAccessibilityObjectWrapperBase.mm:
* Source/WebCore/accessibility/mac/WebAccessibilityObjectWrapperMac.mm:

Canonical link: https://commits.webkit.org/299635@main
@webkit-commit-queue webkit-commit-queue force-pushed the eng/AX-Collapse-AccessibilityTableCell-into-AccessibilityRenderObject branch from 990cd65 to 8a02331 Compare September 5, 2025 19:25
@webkit-commit-queue
Copy link
Copy Markdown
Collaborator

Committed 299635@main (8a02331): https://commits.webkit.org/299635@main

Reviewed commits have been landed. Closing PR #50323 and removing active labels.

@webkit-commit-queue webkit-commit-queue merged commit 8a02331 into WebKit:main Sep 5, 2025
@webkit-commit-queue webkit-commit-queue removed the merge-queue Applied to send a pull request to merge-queue label Sep 5, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Accessibility For bugs related to accessibility.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants