Title: [188083] branches/safari-601.1-branch
- Revision
- 188083
- Author
- dburk...@apple.com
- Date
- 2015-08-06 16:22:41 -0700 (Thu, 06 Aug 2015)
Log Message
Merge r187935. rdar://problem/22097682
Modified Paths
Added Paths
Diff
Modified: branches/safari-601.1-branch/LayoutTests/ChangeLog (188082 => 188083)
--- branches/safari-601.1-branch/LayoutTests/ChangeLog 2015-08-06 23:22:38 UTC (rev 188082)
+++ branches/safari-601.1-branch/LayoutTests/ChangeLog 2015-08-06 23:22:41 UTC (rev 188083)
@@ -1,5 +1,24 @@
2015-08-06 Dana Burkart <dburk...@apple.com>
+ Merge r187935. rdar://problem/22097682
+
+ 2015-08-04 Doug Russell <d_russ...@apple.com>
+
+ AX: tree item children returned from ranged getter are different from full array of children
+ https://bugs.webkit.org/show_bug.cgi?id=147660
+
+ Add an isTreeItem() check in ranged element getter so that it matches the logic in
+ the getter for the full children array. This prevents returning a row as a child
+ when only the rows contents should be returned. This prevents navigation issues on
+ websites without aria outlines.
+
+ Reviewed by Chris Fleizach.
+
+ * accessibility/mac/aria-tree-item-children-expected.txt: Added.
+ * accessibility/mac/aria-tree-item-children.html: Added.
+
+2015-08-06 Dana Burkart <dburk...@apple.com>
+
Merge r187930. rdar://problem/21870332
2015-08-04 Brent Fulgham <bfulg...@apple.com>
Added: branches/safari-601.1-branch/LayoutTests/accessibility/mac/aria-tree-item-children-expected.txt (0 => 188083)
--- branches/safari-601.1-branch/LayoutTests/accessibility/mac/aria-tree-item-children-expected.txt (rev 0)
+++ branches/safari-601.1-branch/LayoutTests/accessibility/mac/aria-tree-item-children-expected.txt 2015-08-06 23:22:41 UTC (rev 188083)
@@ -0,0 +1,13 @@
+Animals
+Birds
+This tests that aria tree items can be fetched as either a full list of children or via range getter to ensure the range getter isn't returning a row as it's first child.
+
+On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
+
+
+PASS tree.role is 'AXRole: AXOutline'
+PASS child1 == child2 is true
+PASS successfullyParsed is true
+
+TEST COMPLETE
+
Added: branches/safari-601.1-branch/LayoutTests/accessibility/mac/aria-tree-item-children.html (0 => 188083)
--- branches/safari-601.1-branch/LayoutTests/accessibility/mac/aria-tree-item-children.html (rev 0)
+++ branches/safari-601.1-branch/LayoutTests/accessibility/mac/aria-tree-item-children.html 2015-08-06 23:22:41 UTC (rev 188083)
@@ -0,0 +1,47 @@
+<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
+<html>
+<head>
+<script src=""
+<script>
+if (window.testRunner)
+ testRunner.dumpAsText();
+</script>
+</head>
+<body id="body">
+
+<ul id="tree" role="tree" aria-labelledby="treelabel" aria-activedescendant="tree0_item0_2_0_1" tabindex="0">
+ <li id="treeitem1" role="treeitem" aria-level="1" aria-expanded="true">
+ <span>
+ <span class="expander"></span>
+ Animals
+ </span>
+ <ul role="group">
+ <div id="treeitem2" role="treeitem" aria-level="2"><span>Birds</span></div>
+ </ul>
+ </span>
+ </li>
+</ul>
+
+<p id="description"></p>
+<div id="console"></div>
+
+<script>
+
+ description("This tests that aria tree items can be fetched as either a full list of children or via range getter to ensure the range getter isn't returning a row as it's first child.");
+
+ if (window.accessibilityController) {
+
+ var tree = accessibilityController.accessibleElementById("tree")
+ shouldBe("tree.role", "'AXRole: AXOutline'");
+
+ var treeitem = tree.childAtIndex(0);
+ var child1 = treeitem.childAtIndex(0);
+ var child2 = treeitem.uiElementArrayAttributeValue("AXChildren")[0];
+ shouldBe("child1 == child2", "true");
+ }
+
+</script>
+
+<script src=""
+</body>
+</html>
Modified: branches/safari-601.1-branch/Source/WebCore/ChangeLog (188082 => 188083)
--- branches/safari-601.1-branch/Source/WebCore/ChangeLog 2015-08-06 23:22:38 UTC (rev 188082)
+++ branches/safari-601.1-branch/Source/WebCore/ChangeLog 2015-08-06 23:22:41 UTC (rev 188083)
@@ -1,5 +1,26 @@
2015-08-06 Dana Burkart <dburk...@apple.com>
+ Merge r187935. rdar://problem/22097682
+
+ 2015-08-04 Doug Russell <d_russ...@apple.com>
+
+ AX: tree item children returned from ranged getter are different from full array of children
+ https://bugs.webkit.org/show_bug.cgi?id=147660
+
+ Reviewed by Chris Fleizach.
+
+ Add an isTreeItem() check in ranged element getter so that it matches the logic in
+ the getter for the full children array. This prevents returning a row as a child
+ when only the rows contents should be returned. This prevents navigation issues on
+ websites without aria outlines.
+
+ Test: accessibility/mac/aria-tree-item-children.html
+
+ * accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
+ (-[WebAccessibilityObjectWrapper accessibilityArrayAttributeValues:index:maxCount:]):
+
+2015-08-06 Dana Burkart <dburk...@apple.com>
+
Merge r187930. rdar://problem/21870332
2015-08-04 Brent Fulgham <bfulg...@apple.com>
Modified: branches/safari-601.1-branch/Source/WebCore/accessibility/mac/WebAccessibilityObjectWrapperMac.mm (188082 => 188083)
--- branches/safari-601.1-branch/Source/WebCore/accessibility/mac/WebAccessibilityObjectWrapperMac.mm 2015-08-06 23:22:38 UTC (rev 188082)
+++ branches/safari-601.1-branch/Source/WebCore/accessibility/mac/WebAccessibilityObjectWrapperMac.mm 2015-08-06 23:22:41 UTC (rev 188083)
@@ -4047,8 +4047,9 @@
NSUInteger arrayLength = std::min(childCount - index, maxCount);
return [children subarrayWithRange:NSMakeRange(index, arrayLength)];
- } else if (m_object->isTree()) {
- // Tree objects return their rows as their children. We can use the original method in this case.
+ } else if (m_object->isTree() || m_object->isTreeItem()) {
+ // Tree objects return their rows as their children & tree items return their contents sans rows.
+ // We can use the original method in this case.
return [super accessibilityArrayAttributeValues:attribute index:index maxCount:maxCount];
}
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes