Title: [207918] branches/safari-602-branch

Diff

Modified: branches/safari-602-branch/LayoutTests/ChangeLog (207917 => 207918)


--- branches/safari-602-branch/LayoutTests/ChangeLog	2016-10-26 23:17:52 UTC (rev 207917)
+++ branches/safari-602-branch/LayoutTests/ChangeLog	2016-10-26 23:17:56 UTC (rev 207918)
@@ -1,5 +1,19 @@
 2016-10-26  Matthew Hanson  <matthew_han...@apple.com>
 
+        Merge r206190. rdar://problem/28744102
+
+    2016-09-20  Nan Wang  <n_w...@apple.com>
+
+            AX: AppleVisUser: VO can't navigate web dialogs iOS10
+            https://bugs.webkit.org/show_bug.cgi?id=162322
+
+            Reviewed by Chris Fleizach.
+
+            * accessibility/ios-simulator/dialog-did-become-focused-expected.txt: Added.
+            * accessibility/ios-simulator/dialog-did-become-focused.html: Added.
+
+2016-10-26  Matthew Hanson  <matthew_han...@apple.com>
+
         Merge r206102. rdar://problem/28744106
 
     2016-09-19  Nan Wang  <n_w...@apple.com>

Added: branches/safari-602-branch/LayoutTests/accessibility/ios-simulator/dialog-did-become-focused-expected.txt (0 => 207918)


--- branches/safari-602-branch/LayoutTests/accessibility/ios-simulator/dialog-did-become-focused-expected.txt	                        (rev 0)
+++ branches/safari-602-branch/LayoutTests/accessibility/ios-simulator/dialog-did-become-focused-expected.txt	2016-10-26 23:17:56 UTC (rev 207918)
@@ -0,0 +1,14 @@
+Alert Box
+
+Alert text
+
+This tests that accessibilityElementDidBecomeFocused on elements inside a dialog won't set focus onto the dialog.
+
+On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
+
+
+PASS dialog === document.activeElement is false
+PASS successfullyParsed is true
+
+TEST COMPLETE
+

Added: branches/safari-602-branch/LayoutTests/accessibility/ios-simulator/dialog-did-become-focused.html (0 => 207918)


--- branches/safari-602-branch/LayoutTests/accessibility/ios-simulator/dialog-did-become-focused.html	                        (rev 0)
+++ branches/safari-602-branch/LayoutTests/accessibility/ios-simulator/dialog-did-become-focused.html	2016-10-26 23:17:56 UTC (rev 207918)
@@ -0,0 +1,34 @@
+<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
+<html>
+<head>
+<script src=""
+</head>
+<body id="body">
+
+<div id="dialog" role="alertdialog" tabindex="0">
+<p id="title">Alert Box</p><p id="text">Alert text</p>
+</div>
+
+<p id="description"></p>
+<div id="console"></div>
+
+<script>
+
+    description("This tests that accessibilityElementDidBecomeFocused on elements inside a dialog won't set focus onto the dialog.");
+
+    var callbackCount = 0;
+    if (window.accessibilityController) {
+    
+        var dialog = document.getElementById("dialog");
+        var text = accessibilityController.accessibleElementById("text");
+        
+        // Test that VO focus onto the dialog's children won't set focus to the dialog itself.
+        text.assistiveTechnologySimulatedFocus();
+        shouldBeFalse("dialog === document.activeElement");
+    }
+    
+</script>
+
+<script src=""
+</body>
+</html>

Modified: branches/safari-602-branch/Source/WebCore/ChangeLog (207917 => 207918)


--- branches/safari-602-branch/Source/WebCore/ChangeLog	2016-10-26 23:17:52 UTC (rev 207917)
+++ branches/safari-602-branch/Source/WebCore/ChangeLog	2016-10-26 23:17:56 UTC (rev 207918)
@@ -1,5 +1,26 @@
 2016-10-26  Matthew Hanson  <matthew_han...@apple.com>
 
+        Merge r206190. rdar://problem/28744102
+
+    2016-09-20  Nan Wang  <n_w...@apple.com>
+
+            AX: AppleVisUser: VO can't navigate web dialogs iOS10
+            https://bugs.webkit.org/show_bug.cgi?id=162322
+
+            Reviewed by Chris Fleizach.
+
+            When using VoiceOver to navigate a web dialog's children, we were setting focus
+            onto the focusable parent in accessibilityElementDidBecomeFocused. When the focusable
+            parent is the dialog, it will cause the VO cursor jumping back and forward. Fixed it
+            by not setting focus on web dialogs in such case.
+
+            Test: accessibility/ios-simulator/dialog-did-become-focused.html
+
+            * accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:
+            (-[WebAccessibilityObjectWrapper accessibilityElementDidBecomeFocused]):
+
+2016-10-26  Matthew Hanson  <matthew_han...@apple.com>
+
         Merge r206102. rdar://problem/28744106
 
     2016-09-19  Nan Wang  <n_w...@apple.com>

Modified: branches/safari-602-branch/Source/WebCore/accessibility/ios/WebAccessibilityObjectWrapperIOS.mm (207917 => 207918)


--- branches/safari-602-branch/Source/WebCore/accessibility/ios/WebAccessibilityObjectWrapperIOS.mm	2016-10-26 23:17:52 UTC (rev 207917)
+++ branches/safari-602-branch/Source/WebCore/accessibility/ios/WebAccessibilityObjectWrapperIOS.mm	2016-10-26 23:17:56 UTC (rev 207918)
@@ -1888,6 +1888,12 @@
             // webkit.org/b/162041 Taking focus onto elements inside a details node will cause VO focusing onto random items.
             if ([self detailParentForObject:object])
                 break;
+            
+            // webkit.org/b/162322 When a dialog is focusable, allowing focusing onto the dialog node will cause VO cursor jumping
+            // back and forward while navigating its children.
+            if ([object->wrapper() accessibilityIsDialog])
+                break;
+            
             object->setFocused(true);
             break;
         }
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to