Can't swipe to navigate away from UITableView if section index is selected without being changed

Originator:david.ronnqvist
Number:rdar://13771056 Date Originated:30-Apr-2013 10:28 AM
Status:Resolved Resolved:28-Aug-2013
Product:Accessibility Product Version:
Classification:UI/Usability Reproducible:Always
 
Summary:
If a user with VoiceOver turned on selects the Section Index Titles (list of letters to the right of a table view) without making any adjustments and then swipes Left to get back to the rows of the UITableView and then continues to swipe Left, VoiceOver selection is stuck in a loop of (1st row -> 1st section header -> section index -> 1st row … ) and user is unable to swipe Left or Right to leave the UITableView (swiping Left doesn't take user to UISearchBar or UINavigationBar or similar).

Steps to Reproduce:
In an UITableView with visible section indices (for example the Contacts app on iOS),
1. Turn on VoiceOver.
2. Tap on the table view section index --> section index is selected by VoiceOver.
(Do not make adjustments to the section index by swiping up or down)
3. Swipe left --> First row in first section is selected.
4. Swipe left --> First section header is selected.
5. Swipe left --> Section index is selected again    // This is the problem because you end up in a loop
...
Continuing to swipe left will cause the selection to go from 1st row -> 1st section header -> section index -> first row -> 1st section header -> section index … over and over

Expected Results:
VoiceOver selection should go from from 1st row -> 1st section header -> search (if applicable) -> navigation bar
This is exactly what happens if the section index is never selected (i.e. if the user taps on a row and swipes left until the navigation bar is reached).

Actual Results:
VoiceOver selection is stuck in a loop that goes from 1st row -> 1st section header -> section index -> 1st row -> 1st section header -> section index … over and over

Regression:
As far as I have seen there are two cases where this doesn't happen
1. Section index is never selected.
If the user selects a row in the table and then swipes left the Expected Result is seen.

2. Section index is "adjusted" after selection
Section index is selected.
Swipe Up or Down to change section       // This is what is different from the steps to reproduce
Swipe Left -> 1st contact in that section is selected.
Swipe Left many times -> Section index is _not_ selected after the 1st section header. Instead the search field (if applicable) or the navigation bar is selected (as expected)

Notes:
Seen on iOS 6.1.3 (not tested on previous versions)

Comments


Please note: Reports posted here will not necessarily be seen by Apple. All problems should be submitted at bugreport.apple.com before they are posted here. Please only post information for Radars that you have filed yourself, and please do not include Apple confidential information in your posts. Thank you!