Title: [186758] branches/safari-601.1-branch

Diff

Modified: branches/safari-601.1-branch/LayoutTests/ChangeLog (186757 => 186758)


--- branches/safari-601.1-branch/LayoutTests/ChangeLog	2015-07-13 06:56:28 UTC (rev 186757)
+++ branches/safari-601.1-branch/LayoutTests/ChangeLog	2015-07-13 06:59:01 UTC (rev 186758)
@@ -1,3 +1,17 @@
+2015-07-12  Babak Shafiei  <bshaf...@apple.com>
+
+        Merge r186741.
+
+    2015-07-12  Chris Fleizach  <cfleiz...@apple.com>
+
+            AX: WEB: VoiceOver for iOS does not read <iframe> elements during linear (swipe) navigation.
+            https://bugs.webkit.org/show_bug.cgi?id=146861
+
+            Reviewed by Darin Adler.
+
+            * platform/ios-simulator/accessibility/iframe-access-expected.txt: Added.
+            * platform/ios-simulator/accessibility/iframe-access.html: Added.
+
 2015-07-10  Hunseop Jeong  <hs85.je...@samsung.com>
 
         Fix typo in LayoutTests/platform/wk2/TestExpectation.

Copied: branches/safari-601.1-branch/LayoutTests/platform/ios-simulator/accessibility/iframe-access-expected.txt (from rev 186741, trunk/LayoutTests/platform/ios-simulator/accessibility/iframe-access-expected.txt) (0 => 186758)


--- branches/safari-601.1-branch/LayoutTests/platform/ios-simulator/accessibility/iframe-access-expected.txt	                        (rev 0)
+++ branches/safari-601.1-branch/LayoutTests/platform/ios-simulator/accessibility/iframe-access-expected.txt	2015-07-13 06:59:01 UTC (rev 186758)
@@ -0,0 +1,18 @@
+
+This makes sure that an iframe is accessible on iOS
+
+On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
+
+
+AXIdentifier: content
+AXIdentifier: iframe
+AXIdentifier: 
+AXIdentifier: 
+AXIdentifier: 
+AXIdentifier: frame-button
+AXIdentifier: frame-link
+AXIdentifier: 
+PASS successfullyParsed is true
+
+TEST COMPLETE
+

Copied: branches/safari-601.1-branch/LayoutTests/platform/ios-simulator/accessibility/iframe-access.html (from rev 186741, trunk/LayoutTests/platform/ios-simulator/accessibility/iframe-access.html) (0 => 186758)


--- branches/safari-601.1-branch/LayoutTests/platform/ios-simulator/accessibility/iframe-access.html	                        (rev 0)
+++ branches/safari-601.1-branch/LayoutTests/platform/ios-simulator/accessibility/iframe-access.html	2015-07-13 06:59:01 UTC (rev 186758)
@@ -0,0 +1,52 @@
+<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
+<html>
+<head>
+<script src=""
+<script>
+var successfullyParsed = false;
+</script>
+</head>
+<body id="body">
+
+<div id="content">
+<iframe id="iframe" _onload_="startTest();" src="" id='frame-button'>Click me</button><a href='' id='frame-link'>a</a></body>"></iframe>
+</div>
+
+<p id="description"></p>
+<div id="console"></div>
+
+<script>
+
+    description("This makes sure that an iframe is accessible on iOS");
+
+    function dumpAccessibilityChildren(element, level) {
+        if (!element) {
+            return;
+        }
+        var indent = "";
+        for (var k = 0; k < level; k++) { indent += "  "; }
+        debug(indent + element.identifier);
+        var childrenCount = element.childrenCount;
+        for (var k = 0; k < childrenCount; k++) {
+            dumpAccessibilityChildren(element.childAtIndex(k), level+1);
+        }
+    }
+
+    window.jsTestIsAsync = true;
+    function startTest() {
+
+        if (window.accessibilityController) {
+            // Dump the tree to confirm that the items inside the frame can be accessed.    
+            var content = accessibilityController.accessibleElementById("content");
+            dumpAccessibilityChildren(content);
+            finishJSTest();
+        }
+    }
+
+    successfullyParsed = true;
+</script>
+
+<script src=""
+</body>
+</html>
+

Modified: branches/safari-601.1-branch/Source/WebCore/ChangeLog (186757 => 186758)


--- branches/safari-601.1-branch/Source/WebCore/ChangeLog	2015-07-13 06:56:28 UTC (rev 186757)
+++ branches/safari-601.1-branch/Source/WebCore/ChangeLog	2015-07-13 06:59:01 UTC (rev 186758)
@@ -1,5 +1,23 @@
 2015-07-12  Babak Shafiei  <bshaf...@apple.com>
 
+        Merge r186741.
+
+    2015-07-12  Chris Fleizach  <cfleiz...@apple.com>
+
+            AX: WEB: VoiceOver for iOS does not read <iframe> elements during linear (swipe) navigation.
+            https://bugs.webkit.org/show_bug.cgi?id=146861
+
+            Reviewed by Darin Adler.
+
+            AttachmentViews exist only on WK1 so we need account for both platforms.
+
+            Test: platform/ios-simulator/accessibility/iframe-access.html
+
+            * accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:
+            (-[WebAccessibilityObjectWrapper accessibilityElementAtIndex:]):
+
+2015-07-12  Babak Shafiei  <bshaf...@apple.com>
+
         Merge r186712.
 
     2015-07-10  Simon Fraser  <simon.fra...@apple.com>

Modified: branches/safari-601.1-branch/Source/WebCore/accessibility/ios/WebAccessibilityObjectWrapperIOS.mm (186757 => 186758)


--- branches/safari-601.1-branch/Source/WebCore/accessibility/ios/WebAccessibilityObjectWrapperIOS.mm	2015-07-13 06:56:28 UTC (rev 186757)
+++ branches/safari-601.1-branch/Source/WebCore/accessibility/ios/WebAccessibilityObjectWrapperIOS.mm	2015-07-13 06:59:01 UTC (rev 186758)
@@ -362,8 +362,10 @@
     if (![self _prepareAccessibilityCall])
         return 0;
 
-    if ([self isAttachment] && [self attachmentView])
-        return [[self attachmentView] accessibilityElementCount];
+    if ([self isAttachment]) {
+        if (id attachmentView = [self attachmentView])
+            return [attachmentView accessibilityElementCount];
+    }
     
     return m_object->children().size();
 }
@@ -373,8 +375,10 @@
     if (![self _prepareAccessibilityCall])
         return nil;
 
-    if ([self isAttachment] && [self attachmentView])
-        return [[self attachmentView] accessibilityElementAtIndex:index];
+    if ([self isAttachment]) {
+        if (id attachmentView = [self attachmentView])
+            return [attachmentView accessibilityElementAtIndex:index];
+    }
     
     const auto& children = m_object->children();
     size_t elementIndex = static_cast<size_t>(index);
@@ -382,8 +386,10 @@
         return nil;
     
     AccessibilityObjectWrapper* wrapper = children[elementIndex]->wrapper();
-    if (children[elementIndex]->isAttachment())
-        return [wrapper attachmentView];
+    if (children[elementIndex]->isAttachment()) {
+        if (id attachmentView = [wrapper attachmentView])
+            return attachmentView;
+    }
 
     return wrapper;
 }
@@ -393,8 +399,10 @@
     if (![self _prepareAccessibilityCall])
         return NSNotFound;
     
-    if ([self isAttachment] && [self attachmentView])
-        return [[self attachmentView] indexOfAccessibilityElement:element];
+    if ([self isAttachment]) {
+        if (id attachmentView = [self attachmentView])
+            return [attachmentView indexOfAccessibilityElement:element];
+    }
     
     const auto& children = m_object->children();
     unsigned count = children.size();
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to