Remapping the "tabindex" ARIA attribute to "tabIndex" because browsers implement the latter, even though the ARIA spec specifies the former.

Review at http://gwt-code-reviews.appspot.com/1651803

Review by: atincheva@google.com

git-svn-id: https://google-web-toolkit.googlecode.com/svn/trunk@10890 8db76d5a-ed1c-0410-87a9-c151d255dfc7
diff --git a/user/src/com/google/gwt/aria/client/ExtraAttribute.java b/user/src/com/google/gwt/aria/client/ExtraAttribute.java
index f9ba389..14887b6 100644
--- a/user/src/com/google/gwt/aria/client/ExtraAttribute.java
+++ b/user/src/com/google/gwt/aria/client/ExtraAttribute.java
@@ -23,7 +23,7 @@
  */
 public final class ExtraAttribute<T> extends Attribute<T> {
   public static final ExtraAttribute<Integer> TABINDEX =
-      new ExtraAttribute<Integer>("tabindex", "");
+      new ExtraAttribute<Integer>("tabIndex", "");
 
 
   public ExtraAttribute(String name) {
diff --git a/user/test/com/google/gwt/aria/client/RoleTest.java b/user/test/com/google/gwt/aria/client/RoleTest.java
index 96e5edc..3004d91 100644
--- a/user/test/com/google/gwt/aria/client/RoleTest.java
+++ b/user/test/com/google/gwt/aria/client/RoleTest.java
@@ -17,6 +17,7 @@
 import com.google.gwt.aria.client.CommonAttributeTypes.IdReferenceList;
 import com.google.gwt.aria.client.PropertyTokenTypes.DropeffectToken;
 import com.google.gwt.aria.client.PropertyTokenTypes.DropeffectTokenList;
+import com.google.gwt.dom.client.AnchorElement;
 import com.google.gwt.dom.client.Document;
 import com.google.gwt.dom.client.Element;
 import com.google.gwt.junit.client.GWTTestCase;
@@ -65,15 +66,22 @@
   }
   
   public void testSetGetRemoveExtraAttributes() {
+    // Older versions of IE do not support tabIndex on divs, so use an anchor
+    // element instead.
+    AnchorElement anchor = Document.get().createAnchorElement();
+    Document.get().getBody().appendChild(anchor);
+
     // Some versions of IE default to "0" instead of ""
     assertTrue("".equals(regionRole.getTabindexExtraAttribute(div)) 
         || "0".equals(regionRole.getTabindexExtraAttribute(div)));
-    regionRole.setTabindexExtraAttribute(div, 1);
-    assertEquals("1", regionRole.getTabindexExtraAttribute(div));
-    regionRole.removeTabindexExtraAttribute(div);
+    regionRole.setTabindexExtraAttribute(anchor, 1);
+    assertEquals("1", regionRole.getTabindexExtraAttribute(anchor));
+    regionRole.removeTabindexExtraAttribute(anchor);
     // Some versions of IE default to "0" instead of ""
     assertTrue("".equals(regionRole.getTabindexExtraAttribute(div)) 
         || "0".equals(regionRole.getTabindexExtraAttribute(div)));
+
+    anchor.removeFromParent();
   }
   
   @Override