-
Notifications
You must be signed in to change notification settings - Fork 1.9k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Accessibility / VoiceOver reading order should be left to right (or numeric order), not top to bottom #466
Comments
Thanks @h-bomb. I didn't know about VoiceOver before. The UICollectionViewFlowLayout is the reason for the top-to-bottom order of the cells, which also makes the date calculation a bit complicated. |
Hi @WenchaoD - thanks for the quick response. Yes, that is what I suspected. I've been researching how to change the reading order and will let you know what I discover, but if you happen to have an idea, would much appreciate the info! I believe I will need to implement one or more methods in UIAccessibilityContainer to achieve the desired behavior. |
This is fixed by entirely rewritten the behaviors of UICollectionViewFlowLayout. Would appreciate if you try in development branch. |
Hi @WenchaoD - Thank you for providing this fix. In my preliminary testing efforts, I did find a few issues - all assume VoiceOver is enabled: (1) Assuming month view, if you set (2) This may need to be reported as a separate VoiceOver issue since it is not related to the navigation / selection / speaking order issue. If you swipe right from the last navigation bar item to the next item (in the calendar), notice that the header date (e.g., January 2017) switches to the minimum date, e.g.: December 1969. (3) Not sure if this is related, but selecting the LoadView option in the sample swift app crashes the app. Other than these issues, the navigation / traversal / speaking order of the week days is now left to right, instead of top to bottom, so that's great! Please let me know if you need additional details or a video demonstrating any of the issues above. |
Closing fixed issue. |
For locales with left to right reading order, if the accessibility setting, VoiceOver, is enabled, the reading order of the calendar days should be left to right or in numeric order (or from the first day in the calendar forward). This is potentially an issue for users with a vision impairment that, for example, rely on swiping through app features.
To replicate this issue on the simulator, do the following:
Steps assume Xcode 8.x...
Result:
Notice that the traversal direction is top to bottom (or bottom to top). This corresponds to the same reading order in VoiceOver. If you are able to deploy the SwiftExample on a device, you can enable VoiceOver and swipe through the days to confirm the reading order is the same.
Here is a video demonstrating the issue.
For our current project, providing a fully accessible calendar is a hard requirement, so we will have to modify (fork) FSCalendar to ensure the days are read in numeric order (or from the first day in the calendar forward)...unless this can be changed soon or at least made an option.
The text was updated successfully, but these errors were encountered: