Index: Source/web/WebAXObject.cpp |
diff --git a/Source/web/WebAXObject.cpp b/Source/web/WebAXObject.cpp |
index 9dad1280444274211e319864a9c0124395d362a4..2b9c3defb5eb8c5667475bca7a4290668f31fd24 100644 |
--- a/Source/web/WebAXObject.cpp |
+++ b/Source/web/WebAXObject.cpp |
@@ -1120,6 +1120,26 @@ WebAXObject WebAXObject::rowHeader() const |
return WebAXObject(toAXTableRow(m_private.get())->headerObject()); |
} |
+void WebAXObject::rowHeaders(WebVector<WebAXObject>& rowHeaderElements) const |
+{ |
+ if (isDetached()) |
+ return; |
+ |
+ if (!m_private->isAXTable()) |
+ return; |
+ |
+ AXObject::AccessibilityChildrenVector headers; |
+ toAXTable(m_private.get())->rowHeaders(headers); |
+ |
+ size_t headerCount = headers.size(); |
+ WebVector<WebAXObject> result(headerCount); |
+ |
+ for (size_t i = 0; i < headerCount; i++) |
+ result[i] = WebAXObject(headers[i]); |
+ |
+ rowHeaderElements.swap(result); |
+} |
+ |
unsigned WebAXObject::columnIndex() const |
{ |
if (isDetached()) |
@@ -1142,6 +1162,26 @@ WebAXObject WebAXObject::columnHeader() const |
return WebAXObject(toAXTableColumn(m_private.get())->headerObject()); |
} |
+void WebAXObject::columnHeaders(WebVector<WebAXObject>& columnHeaderElements) const |
+{ |
+ if (isDetached()) |
+ return; |
+ |
+ if (!m_private->isAXTable()) |
+ return; |
+ |
+ AXObject::AccessibilityChildrenVector headers; |
+ toAXTable(m_private.get())->columnHeaders(headers); |
+ |
+ size_t headerCount = headers.size(); |
+ WebVector<WebAXObject> result(headerCount); |
+ |
+ for (size_t i = 0; i < headerCount; i++) |
+ result[i] = WebAXObject(headers[i]); |
+ |
+ columnHeaderElements.swap(result); |
+} |
+ |
unsigned WebAXObject::cellColumnIndex() const |
{ |
if (isDetached()) |