When filling in any form with multiple fields with VoiceOver on iOS, the fields cannot be filled in one by one due to bad virtual focus management, making it highly likely that a couple will be missed.
Fill in the first input
5a. Activate the "done" button
6a. Repeat until the end of the form
Alternatively:
5b. Hit the "forward" button
6b. Repeat until the end of the form
Actual result
In the first scenario some random field will receive the virtual focus, skipping a couple of fields.
In the second scenario the next field will receive the virtual focus, except that radio buttons and checkboxes will be skipped.
Expected result
In both scenarios the next field (irrespective of type) should receive the focus. Or giving the current field the focus would also make sense.
Why is this a problem?
Screen reader users who cannot see the form have no way of knowing that some fields have been skipped. They cannot rely on standard ways of filling in a form. The only way for them to know is by going through the whole form after filling it in to make sure they haven't missed anything.
It is possible to fill in a form this way, but very, very annoying and much more time-consuming than necessary.
One discussion about this bug can be found here: http://webaim.org/discussion/mail_thread?thread=7141
Someone mentioned on there that they filed a bug report but I searched and couldn't find anything.
As far as I know it happens at least on iOS9 and iOS10.
Upstream bug: https://bugs.webkit.org/show_bug.cgi?id=173661 Date: 2017-06-21 Reported by: Anika Henke Related to: n/a
Overview
When filling in any form with multiple fields with VoiceOver on iOS, the fields cannot be filled in one by one due to bad virtual focus management, making it highly likely that a couple will be missed.
Steps to reproduce
Alternatively: 5b. Hit the "forward" button 6b. Repeat until the end of the form
Actual result
In the first scenario some random field will receive the virtual focus, skipping a couple of fields. In the second scenario the next field will receive the virtual focus, except that radio buttons and checkboxes will be skipped.
Expected result
In both scenarios the next field (irrespective of type) should receive the focus. Or giving the current field the focus would also make sense.
Why is this a problem?
Screen reader users who cannot see the form have no way of knowing that some fields have been skipped. They cannot rely on standard ways of filling in a form. The only way for them to know is by going through the whole form after filling it in to make sure they haven't missed anything. It is possible to fill in a form this way, but very, very annoying and much more time-consuming than necessary.
One discussion about this bug can be found here: http://webaim.org/discussion/mail_thread?thread=7141 Someone mentioned on there that they filed a bug report but I searched and couldn't find anything. As far as I know it happens at least on iOS9 and iOS10.