VO will skip directly over an iframe and user will not know it is there on the page. Explore by touch is the only method to find the iframe but user would have to guess if one was there. Steps to Reproduce: "1. Open https://www.google.com/recaptcha/api2/demo in Mobile Safari on iOS 2. Turn on VoiceOver 3. Swipe through all elements on the screen" Expected Results: VoiceOver reads all elements on the screen including setting focus inside the I'm not a robot checkbox <iframe> element during normal linear swipe navigation. Actual Results: VoiceOver skips right over the <iframe> element never reading the "I'm not a robot checkbox" because it is inside an iframe. <rdar://problem/21051187>
Created attachment 256630 [details] patch
Comment on attachment 256630 [details] patch View in context: https://bugs.webkit.org/attachment.cgi?id=256630&action=review > Source/WebCore/accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:386 > - if (children[elementIndex]->isAttachment()) > + if (children[elementIndex]->isAttachment() && [wrapper attachmentView]) > return [wrapper attachmentView]; I would suggest putting [wrapper attachmentView] into a local variable.
http://trac.webkit.org/changeset/186741
Created attachment 262685 [details] patch setup