Implement AtkTable for ARIA treegrids

AtkTable was supported for all objects of ATK_ROLE_TABLE. Because ARIA
treegrid is mapped to ATK_ROLE_TREE_TABLE, this support was absent.

Bug: 978056
Change-Id: I39caa49e53f4864fd16f0eab5e4164f5fb8f9ee1
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1672747
Reviewed-by: Martin Robinson <mrobinson@igalia.com>
Commit-Queue: Joanmarie Diggs <jdiggs@igalia.com>
Cr-Commit-Position: refs/heads/master@{#672061}
diff --git a/content/test/data/accessibility/aria/aria-level-expected-auralinux.txt b/content/test/data/accessibility/aria/aria-level-expected-auralinux.txt
index 4d69dfd..10b7909 100644
--- a/content/test/data/accessibility/aria/aria-level-expected-auralinux.txt
+++ b/content/test/data/accessibility/aria/aria-level-expected-auralinux.txt
@@ -21,7 +21,7 @@
 ++++++++++[text] name='Tree item at level 2'
 ++++[tree item] name='Tree item at level 3' selectable level:3
 ++++++[text] name='Tree item at level 3'
-++[tree table]
+++[tree table] cols=1 headers=(NONE); rows=2 headers=(NONE); caption=false; spans=(all: 1x1)
 ++++[table row] selectable level:1
 ++++++[table cell] name='Cell at level 1' selectable (row=0, col=0, row_span=1, col_span=1, n_row_headers=0, n_col_headers=0)
 ++++++++[text] name='Cell at level 1'
diff --git a/content/test/data/accessibility/aria/aria-orientation-expected-auralinux.txt b/content/test/data/accessibility/aria/aria-orientation-expected-auralinux.txt
index b296b94..7a6b299 100644
--- a/content/test/data/accessibility/aria/aria-orientation-expected-auralinux.txt
+++ b/content/test/data/accessibility/aria/aria-orientation-expected-auralinux.txt
@@ -32,6 +32,6 @@
 ++[tree] vertical
 ++[tree] horizontal
 ++[tree] vertical
-++[tree table]
-++[tree table] horizontal
-++[tree table] vertical
+++[tree table] cols=0 headers=(NONE); rows=0 headers=(NONE); caption=false; spans=(all: 1x1)
+++[tree table] horizontal cols=0 headers=(NONE); rows=0 headers=(NONE); caption=false; spans=(all: 1x1)
+++[tree table] vertical cols=0 headers=(NONE); rows=0 headers=(NONE); caption=false; spans=(all: 1x1)
diff --git a/content/test/data/accessibility/aria/aria-treegrid-expected-auralinux.txt b/content/test/data/accessibility/aria/aria-treegrid-expected-auralinux.txt
index e9437cc..740c964 100644
--- a/content/test/data/accessibility/aria/aria-treegrid-expected-auralinux.txt
+++ b/content/test/data/accessibility/aria/aria-treegrid-expected-auralinux.txt
@@ -1,12 +1,12 @@
 [document web]
-++[tree table] xml-roles:treegrid
+++[tree table] xml-roles:treegrid cols=1 headers=(NONE); rows=2 headers=(NONE); caption=false; spans=(all: 1x1)
 ++++[table row] selectable level:1 xml-roles:row
 ++++++[table cell] name='Cell at level 1' selectable xml-roles:gridcell (row=0, col=0, row_span=1, col_span=1, n_row_headers=0, n_col_headers=0)
 ++++++++[text] name='Cell at level 1'
 ++++[table row] selectable level:2 xml-roles:row
 ++++++[table cell] name='Cell at level 2' selectable xml-roles:gridcell (row=1, col=0, row_span=1, col_span=1, n_row_headers=0, n_col_headers=0)
 ++++++++[text] name='Cell at level 2'
-++[tree table] xml-roles:treegrid
+++[tree table] xml-roles:treegrid cols=1 headers=(NONE); rows=1 headers=(NONE); caption=false; spans=(all: 1x1)
 ++++[table row] selectable level:1 xml-roles:row
 ++++++[table cell] name='Cell at level 1' selectable xml-roles:gridcell (row=0, col=0, row_span=1, col_span=1, n_row_headers=0, n_col_headers=0)
 ++++++++[text] name='Cell at level 1'
diff --git a/ui/accessibility/platform/ax_platform_node_auralinux.cc b/ui/accessibility/platform/ax_platform_node_auralinux.cc
index 4d4869a..d149e08 100644
--- a/ui/accessibility/platform/ax_platform_node_auralinux.cc
+++ b/ui/accessibility/platform/ax_platform_node_auralinux.cc
@@ -1956,7 +1956,7 @@
   if (IsContainerWithSelectableChildren(GetData().role))
     interface_mask |= 1 << ATK_SELECTION_INTERFACE;
 
-  if (role == ATK_ROLE_TABLE)
+  if (role == ATK_ROLE_TABLE || role == ATK_ROLE_TREE_TABLE)
     interface_mask |= 1 << ATK_TABLE_INTERFACE;
 
   // Because the TableCell Interface is only supported in ATK version 2.12 and