[GTK] Expose ARIA roles for tab, tabpanel and tablist
https://bugs.webkit.org/show_bug.cgi?id=84043

Patch by Joanmarie Diggs <jdiggs@igalia.com> on 2012-12-13
Reviewed by Martin Robinson.

Source/WebCore:

Mapped the ARIA roles to their corresponding ATK roles.

No new tests; instead unskipped the associated test.

* accessibility/atk/WebKitAccessibleWrapperAtk.cpp:
(atkRole): Mapped the ARIA roles to their corresponding ATK roles

LayoutTests:

Mapped the ARIA roles to the corresponding ATK roles and unskipped the
associated test. Also created the missing platform-specific expected
results.

* accessibility/aria-tab-roles-expected.txt: Added.
* platform/gtk/TestExpectations: Unskipped the associated test.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@137596 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/Source/WebCore/ChangeLog b/Source/WebCore/ChangeLog
index a7d10fe..5f9f2ac 100644
--- a/Source/WebCore/ChangeLog
+++ b/Source/WebCore/ChangeLog
@@ -1,3 +1,17 @@
+2012-12-13  Joanmarie Diggs  <jdiggs@igalia.com>
+
+        [GTK] Expose ARIA roles for tab, tabpanel and tablist
+        https://bugs.webkit.org/show_bug.cgi?id=84043
+
+        Reviewed by Martin Robinson.
+
+        Mapped the ARIA roles to their corresponding ATK roles.
+
+        No new tests; instead unskipped the associated test.
+
+        * accessibility/atk/WebKitAccessibleWrapperAtk.cpp:
+        (atkRole): Mapped the ARIA roles to their corresponding ATK roles
+
 2012-12-13  Vivek Galatage  <vivek.vg@samsung.com>
 
         Web Inspector: "Add Attribute" context menu on closing tag should apply on the opening tag on Elements Panel
diff --git a/Source/WebCore/accessibility/atk/WebKitAccessibleWrapperAtk.cpp b/Source/WebCore/accessibility/atk/WebKitAccessibleWrapperAtk.cpp
index 613a9a2..5991af7 100644
--- a/Source/WebCore/accessibility/atk/WebKitAccessibleWrapperAtk.cpp
+++ b/Source/WebCore/accessibility/atk/WebKitAccessibleWrapperAtk.cpp
@@ -478,6 +478,7 @@
     case SliderRole:
         return ATK_ROLE_SLIDER;
     case TabGroupRole:
+    case TabListRole:
         return ATK_ROLE_PAGE_TAB_LIST;
     case TextFieldRole:
     case TextAreaRole:
@@ -531,6 +532,7 @@
         return ATK_ROLE_APPLICATION;
     case GroupRole:
     case RadioGroupRole:
+    case TabPanelRole:
         return ATK_ROLE_PANEL;
     case RowHeaderRole: // Row headers are cells after all.
     case ColumnHeaderRole: // Column headers are cells after all.
@@ -570,6 +572,8 @@
         return ATK_ROLE_SEPARATOR;
     case SpinButtonRole:
         return ATK_ROLE_SPIN_BUTTON;
+    case TabRole:
+        return ATK_ROLE_PAGE_TAB;
     default:
         return ATK_ROLE_UNKNOWN;
     }