[Webkit-unassigned] [Bug 166714] New: AX: Programmatic DOM changes are not noticed by VoiceOver

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Wed Jan 4 21:28:00 PST 2017


https://bugs.webkit.org/show_bug.cgi?id=166714

            Bug ID: 166714
           Summary: AX: Programmatic DOM changes are not noticed by
                    VoiceOver
    Classification: Unclassified
           Product: WebKit
           Version: Safari 10
          Hardware: iPhone / iPad
                OS: iOS 10
            Status: NEW
          Severity: Normal
          Priority: P2
         Component: Accessibility
          Assignee: webkit-unassigned at lists.webkit.org
          Reporter: jonathan at tumult.com
                CC: webkit-bug-importer at group.apple.com

If the DOM is programmatically changed, these changes are not picked up by VoiceOver.

Example Code:

=====================

<div id = "item1">item 1 (not hidden)</div>
<div id = "item2" aria-hidden="true">item 2 (hidden via HTML)</div>
<div id = "item3">item 3 (hidden via JS after 2s)</div>
<div id = "item4">item 4 (not hidden)</div>

<script>

function changeHidden() {
    document.getElementById("item3").setAttribute("aria-hidden", "true");
} 

window.setTimeout(changeHidden, 4000);

</script>

=====================

After 4 seconds, item3 should no longer be navigable via swiping left/right in voice over because it is set to aria-hidden=true. However it still is.  Some actions like double-tapping will get it to be properly hidden from navigation.

Likewise, simply changing innerHTML may have the same result:

=====================

<div id = "item1">item 1 (not hidden)</div>
<div id = "output"></div>

<script>

function changeOutput() {
    output.innerHTML = "changed";
} 

window.setTimeout(changeOutput, 2000);

</script>

=====================

VO does not see the output div.

This affects dynamic sites, like those generated by Tumult Hype.

I am reproducing on iPad Pro with iOS 10.2.1 via:
1. Enabling VoiceOver
2. Swiping to the right

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.webkit.org/pipermail/webkit-unassigned/attachments/20170105/6bf68ea8/attachment.html>


More information about the webkit-unassigned mailing list