Bug 163719 - AX: navigating to a new URL with a fragment identifier, VoiceOver moves accessibility focus to top of document regardless
Summary: AX: navigating to a new URL with a fragment identifier, VoiceOver moves acces...
Status: NEW
Alias: None
Product: WebKit
Classification: Unclassified
Component: Accessibility (show other bugs)
Version: Safari 10
Hardware: iPhone / iPad iOS 10
: P2 Major
Assignee: Nobody
URL:
Keywords: InRadar
Depends on:
Blocks:
 
Reported: 2016-10-20 02:15 PDT by Patrick H. Lauke
Modified: 2016-10-20 02:54 PDT (History)
3 users (show)

See Also:


Attachments
Test case (5.26 KB, text/html)
2016-10-20 02:15 PDT, Patrick H. Lauke
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Patrick H. Lauke 2016-10-20 02:15:36 PDT
Created attachment 292162 [details]
Test case

When opening a URL with a fragment identifier, Safari correctly opens the new page and visually scrolls to the relevant part of the document referred to in the fragment/hash (if present). However, when VoiceOver is running, after the initial visual scroll VoiceOver resets the accessibility focus/caret all the way back to the first element at the very start of the document. This currently makes URLs with fragment identifiers useless for iOS/VO users (which is particularly problematic for very long documents, as VO users then have to still explicitly navigate all the way through the document to finally reach the actual section they were after).

Video of the bug in action: https://www.youtube.com/watch?v=LvlM8Z71oWE

Steps to reproduce:

- with VoiceOver enabled, open a fresh tab in Safari
- enter a URL with a fragment identifier (in the attached test case, there is a #target1, for instance)

Expected:

- Safari opens the document, visually scrolls to the location of the fragment identifier
- VoiceOver sets accessibility focus/caret to the targeted element (or its first child element)

Actual:

- Safari opens the document, visually scrolls to the location of the fragment identifier
- VoiceOver sets accessibility focus/caret to the very first element of the document
- the visual viewport is scrolled back to the top of the document

This is potentially a side effect of https://bugs.webkit.org/show_bug.cgi?id=116046, but filed separately as requested https://bugs.webkit.org/show_bug.cgi?id=116046#c57
The issue does not appear in Safari/VoiceOver on MacOS/OS X, so it seems iOS/Safari/VoiceOver specific.
Comment 1 Radar WebKit Bug Importer 2016-10-20 02:54:55 PDT
<rdar://problem/28866720>