Skip to content
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

Data table descriptions are incorrect on iOS 13 and later #7

Open
NickEntin opened this issue Jun 3, 2020 · 2 comments
Open

Data table descriptions are incorrect on iOS 13 and later #7

NickEntin opened this issue Jun 3, 2020 · 2 comments
Labels
bug Something isn't working as expected P1: High Priority Issues that would result in incorrectly accessing whether or not a view is accessible. VoiceOver parity Mismatch between output of framework and actual VoiceOver behavior

Comments

@NickEntin
Copy link
Collaborator

The accessibility description for elements in a data table appears to have subtly changed on iOS 13. The differences can be seen in the following tests:

testDataTable

  • The final element now reads as "B5: Value. Row 5. Column 2. Dimmed. Button. Heading. Link. Adjustable. Image. Search Field. 5 of 1." / "Hint"

The most obvious change here is that the accessibilityValue comes before the row and column numbers. I'm not sure where the "5 of 1" came from.

testDataTableWithHeaders

  • The first element in the table now reads as "B1: B1 Value. C1: C1 Value. A2: A2 Value. A3: A3 Value. A1: A1 Value. Row Header. Column Header. Row 1. Column 1."
  • The addition of the "Row Header" label is applied to all cells the first three columns.
  • The addition of the "Column Header" label is applied to all cells the first three rows.
  • The movement of accessibilityValue from before is applied to all cells.

testDataTableWithUndefinedRows

  • The first element in the table now reads as "A2: A2 Value. A3: A3 Value. A1: A1 Value. Column Header. Row -9223372036854775808. Column 1"
  • The second element in the table now reads as "B2: B2 Value. B3: B3 Value. B1: B1 Value. Column Header. Column 2."
  • The addition of the "Column Header" label is applied to all cells the first three rows.
  • The movement of accessibilityValue from before is applied to all cells.

I think the row number in the first cell is coming from an overflow of NSNotFound + 1. This feels like a regression in VoiceOver, but we should try to match the behavior of VoiceOver in our descriptions as close as possible.

@NickEntin NickEntin added bug Something isn't working as expected VoiceOver parity Mismatch between output of framework and actual VoiceOver behavior labels Jun 3, 2020
@NickEntin
Copy link
Collaborator Author

Marking this as P1: High Priority based on the missing "Row/Column Header" labels. If we can fix the header labels, I think the rest will be a P2.

@NickEntin NickEntin added the P1: High Priority Issues that would result in incorrectly accessing whether or not a view is accessible. label Jul 7, 2020
@NickEntin
Copy link
Collaborator Author

These changes will apply to iOS 14 as well, potentially with a few more additions.

@NickEntin NickEntin changed the title Data table descriptions are incorrect on iOS 13 Data table descriptions are incorrect on iOS 13 and later Sep 29, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working as expected P1: High Priority Issues that would result in incorrectly accessing whether or not a view is accessible. VoiceOver parity Mismatch between output of framework and actual VoiceOver behavior
Projects
None yet
Development

No branches or pull requests

1 participant