Bug 166705 - AX: Element with display:none's aria-flowto is not considered
Summary: AX: Element with display:none's aria-flowto is not considered
Status: NEW
Alias: None
Product: WebKit
Classification: Unclassified
Component: Accessibility (show other bugs)
Version: Safari 10
Hardware: iPhone / iPad iOS 10
: P2 Normal
Assignee: Nobody
Keywords: InRadar
Depends on:
Reported: 2017-01-04 17:12 PST by Jonathan Deutsch
Modified: 2017-01-04 17:12 PST (History)
1 user (show)

See Also:


Note You need to log in before you can comment on or make changes to this bug.
Description Jonathan Deutsch 2017-01-04 17:12:29 PST
If there is an aria-flowto chain and one of the elements is set to display:none, it will ignore the subsequent pointers and go by DOM ordering.

Consider the following HTML:

<div id="item1" role="img", aria-flowto="item2">  Item 1 (role=img, flowto=item2)</div>
<div id="item2" role="button" aria-flowto="item5">  Item 2 (role=button, flowto=item5)</div>
<div id="item3" role="img" aria-flowto="item6">  Item 3 (role=img, flowto=item6)</div>
<div id="item4" role="img" aria-flowto="item3">  Item 4 (role=img, flowto=item3)</div>
<div id="item5" role="img"   aria-flowto="item4" style="display:none">  Item 5 (role=img, flowto=item4, display:none)</div>
<div id="item6" role="radio">  Item 6 (role=radio)</div>

The flowto order would be:

1, 2, 5, 4, 3, 6

However, because item5 has display:none, the actual ordering is:

1, 2, 3, 6

This ordering misses 4, which clearly was meant to be visited.  I would have expected aria-flowto to be considered, and simply jump ahead to the next element so it would look like:

1, 2, 4, 3, 6

This means developers need to be very careful when setting display:none, and tools like Tumult Hype need to take extra care in managing flowto chains.

Interestingly this is different than if aria-hidden=true were on the element (see https://bugs.webkit.org/show_bug.cgi?id=166703)

I am reproducing on iPad Pro with iOS 10.2.1 via:
1. Enabling VoiceOver
2. Swiping to the right
Comment 1 Radar WebKit Bug Importer 2017-01-04 17:12:49 PST