Title: [288738] trunk
Revision
288738
Author
[email protected]
Date
2022-01-28 07:25:57 -0800 (Fri, 28 Jan 2022)

Log Message

[GTK][a11y] Return the list of column/row headers from header cells too with ATSPI
https://bugs.webkit.org/show_bug.cgi?id=235711

Reviewed by Adrian Perez de Castro.

Source/WebCore:

We are only returning the list of column/row headers from cells that are not headers for consistency with
chromium. However, our layout tests don't expect that and firefox doesn't do it either.

* accessibility/atspi/AccessibilityObjectTableCellAtspi.cpp:
(WebCore::AccessibilityObjectAtspi::cellRowHeaders const):
(WebCore::AccessibilityObjectAtspi::cellColumnHeaders const):

Tools:

* TestWebKitAPI/Tests/WebKitGtk/TestWebKitAccessibility.cpp:
(testTableBasic):

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (288737 => 288738)


--- trunk/Source/WebCore/ChangeLog	2022-01-28 15:22:02 UTC (rev 288737)
+++ trunk/Source/WebCore/ChangeLog	2022-01-28 15:25:57 UTC (rev 288738)
@@ -1,3 +1,17 @@
+2022-01-28  Carlos Garcia Campos  <[email protected]>
+
+        [GTK][a11y] Return the list of column/row headers from header cells too with ATSPI
+        https://bugs.webkit.org/show_bug.cgi?id=235711
+
+        Reviewed by Adrian Perez de Castro.
+
+        We are only returning the list of column/row headers from cells that are not headers for consistency with
+        chromium. However, our layout tests don't expect that and firefox doesn't do it either.
+
+        * accessibility/atspi/AccessibilityObjectTableCellAtspi.cpp:
+        (WebCore::AccessibilityObjectAtspi::cellRowHeaders const):
+        (WebCore::AccessibilityObjectAtspi::cellColumnHeaders const):
+
 2022-01-27  Chris Dumez  <[email protected]>
 
         Radio buttons with no form owner are not grouped

Modified: trunk/Source/WebCore/accessibility/atspi/AccessibilityObjectTableCellAtspi.cpp (288737 => 288738)


--- trunk/Source/WebCore/accessibility/atspi/AccessibilityObjectTableCellAtspi.cpp	2022-01-28 15:22:02 UTC (rev 288737)
+++ trunk/Source/WebCore/accessibility/atspi/AccessibilityObjectTableCellAtspi.cpp	2022-01-28 15:25:57 UTC (rev 288738)
@@ -95,10 +95,6 @@
     if (!m_coreObject)
         return { };
 
-    // Only return headers for cells that are not headers.
-    if (role() != Atspi::Role::TableCell)
-        return { };
-
     return wrapperVector(m_coreObject->rowHeaders());
 }
 
@@ -107,10 +103,6 @@
     if (!m_coreObject)
         return { };
 
-    // Only return headers for cells that are not headers.
-    if (role() != Atspi::Role::TableCell)
-        return { };
-
     return wrapperVector(m_coreObject->columnHeaders());
 }
 

Modified: trunk/Tools/ChangeLog (288737 => 288738)


--- trunk/Tools/ChangeLog	2022-01-28 15:22:02 UTC (rev 288737)
+++ trunk/Tools/ChangeLog	2022-01-28 15:25:57 UTC (rev 288738)
@@ -1,3 +1,13 @@
+2022-01-28  Carlos Garcia Campos  <[email protected]>
+
+        [GTK][a11y] Return the list of column/row headers from header cells too with ATSPI
+        https://bugs.webkit.org/show_bug.cgi?id=235711
+
+        Reviewed by Adrian Perez de Castro.
+
+        * TestWebKitAPI/Tests/WebKitGtk/TestWebKitAccessibility.cpp:
+        (testTableBasic):
+
 2022-01-27  Carlos Garcia Campos  <[email protected]>
 
         [WPE][a11y] Add option to build with ATSPI

Modified: trunk/Tools/TestWebKitAPI/Tests/WebKitGtk/TestWebKitAccessibility.cpp (288737 => 288738)


--- trunk/Tools/TestWebKitAPI/Tests/WebKitGtk/TestWebKitAccessibility.cpp	2022-01-28 15:22:02 UTC (rev 288737)
+++ trunk/Tools/TestWebKitAPI/Tests/WebKitGtk/TestWebKitAccessibility.cpp	2022-01-28 15:25:57 UTC (rev 288738)
@@ -2822,7 +2822,9 @@
     cellTable = adoptGRef(atspi_table_cell_get_table(ATSPI_TABLE_CELL(cell1.get()), nullptr));
     g_assert_true(table.get() == cellTable.get());
     rowHeaders = adoptGRef(atspi_table_cell_get_row_header_cells(ATSPI_TABLE_CELL(cell1.get()), nullptr));
-    g_assert_cmpint(rowHeaders->len, ==, 0);
+    g_assert_cmpint(rowHeaders->len, ==, 1);
+    g_assert_true(rowHeaders->pdata[0] == columnHeader0.get());
+    g_ptr_array_foreach(rowHeaders.get(), reinterpret_cast<GFunc>(reinterpret_cast<GCallback>(g_object_unref)), nullptr);
     columnHeaders = adoptGRef(atspi_table_cell_get_column_header_cells(ATSPI_TABLE_CELL(cell1.get()), nullptr));
     g_assert_cmpint(columnHeaders->len, ==, 0);
     g_assert_true(ATSPI_IS_TEXT(cell1.get()));
@@ -2856,7 +2858,9 @@
     cellTable = adoptGRef(atspi_table_cell_get_table(ATSPI_TABLE_CELL(cell2.get()), nullptr));
     g_assert_true(table.get() == cellTable.get());
     rowHeaders = adoptGRef(atspi_table_cell_get_row_header_cells(ATSPI_TABLE_CELL(cell2.get()), nullptr));
-    g_assert_cmpint(rowHeaders->len, ==, 0);
+    g_assert_cmpint(rowHeaders->len, ==, 1);
+    g_assert_true(rowHeaders->pdata[0] == columnHeader0.get());
+    g_ptr_array_foreach(rowHeaders.get(), reinterpret_cast<GFunc>(reinterpret_cast<GCallback>(g_object_unref)), nullptr);
     columnHeaders = adoptGRef(atspi_table_cell_get_column_header_cells(ATSPI_TABLE_CELL(cell2.get()), nullptr));
     g_assert_cmpint(columnHeaders->len, ==, 0);
     g_assert_true(ATSPI_IS_TEXT(cell2.get()));
@@ -2892,7 +2896,9 @@
     rowHeaders = adoptGRef(atspi_table_cell_get_row_header_cells(ATSPI_TABLE_CELL(cell3.get()), nullptr));
     g_assert_cmpint(rowHeaders->len, ==, 0);
     columnHeaders = adoptGRef(atspi_table_cell_get_column_header_cells(ATSPI_TABLE_CELL(cell3.get()), nullptr));
-    g_assert_cmpint(columnHeaders->len, ==, 0);
+    g_assert_cmpint(columnHeaders->len, ==, 1);
+    g_assert_true(columnHeaders->pdata[0] == columnHeader0.get());
+    g_ptr_array_foreach(columnHeaders.get(), reinterpret_cast<GFunc>(reinterpret_cast<GCallback>(g_object_unref)), nullptr);
     g_assert_true(ATSPI_IS_TEXT(cell3.get()));
     text.reset(atspi_text_get_text(ATSPI_TEXT(cell3.get()), 0, -1, nullptr));
     g_assert_cmpstr(text.get(), ==, "Row 1 Cell 1");
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to