Android: Screen reader accessibility: Navigation by lines doesn't navigate by lines #1556

Open
opened 2025-04-28 16:05:24 +02:00 by personalizedrefrigerator · 2 comments
personalizedrefrigerator commented 2025-04-28 16:05:24 +02:00 (Migrated from github.com)

Describe the issue

On Android, TalkBack's "navigate by line" feature has trouble when working with a CodeMirror editor. In particular, when navigating by lines,

  • Using TalkBack's next/previous line navigation, focus often navigates to the next or previous region with syntax highlighting, rather than the next/previous line.
    • See the attached screen recording.
  • The content read by TalkBack often doesn't match the content near the cursor.

Screen recording

https://github.com/user-attachments/assets/d269bc0c-e487-42d3-bac3-6b84664cb2b1

The above screen recording shows:

  • TalkBack reads text from near the start of the document when navigating by line near the end of the document.
  • Navigation by line moves the cursor less than a full line.
  • Navigation by line reads content not near the cursor.

Browser and platform

Chrome 135.0.7049.111 / Android 13

https://codemirror.net/try/#c=aW1wb3J0IHtiYXNpY1NldHVwLCBFZGl0b3JWaWV3fSBmcm9tICJjb2RlbWlycm9yIgppbXBvcnQge21hcmtkb3dufSBmcm9tICJAY29kZW1pcnJvci9sYW5nLW1hcmtkb3duIgppbXBvcnQge2xhbmd1YWdlc30gZnJvbSAiQGNvZGVtaXJyb3IvbGFuZ3VhZ2UtZGF0YSIKCi8vIFRoZSBNYXJrZG93biBwYXJzZXIgd2lsbCBkeW5hbWljYWxseSBsb2FkIHBhcnNlcnMKLy8gZm9yIGNvZGUgYmxvY2tzLCB1c2luZyBAY29kZW1pcnJvci9sYW5ndWFnZS1kYXRhIHRvCi8vIGxvb2sgdXAgdGhlIGFwcHJvcHJpYXRlIGR5bmFtaWMgaW1wb3J0LgpsZXQgdmlldyA9IG5ldyBFZGl0b3JWaWV3KHsKICBkb2M6ICJIZWxsb1xuXG5gYGBqYXZhc2NyaXB0XG5sZXQgeCA9ICd5J1xuYGBgXG5cbjxwPnRlc3Q8L3A+XG4iLAogIGV4dGVuc2lvbnM6IFsKICAgIGJhc2ljU2V0dXAsCiAgICBtYXJrZG93bih7Y29kZUxhbmd1YWdlczogbGFuZ3VhZ2VzfSkKICBdLAogIHBhcmVudDogZG9jdW1lbnQuYm9keQp9KQo=

### Describe the issue On Android, TalkBack's "navigate by line" feature has trouble when working with a CodeMirror editor. In particular, when navigating by lines, - Using TalkBack's next/previous line navigation, focus often navigates to the next or previous region with syntax highlighting, rather than the next/previous line. - See the attached screen recording. - The content read by TalkBack often doesn't match the content near the cursor. ## Screen recording https://github.com/user-attachments/assets/d269bc0c-e487-42d3-bac3-6b84664cb2b1 The above screen recording shows: - TalkBack reads text from near the start of the document when navigating by line near the end of the document. - Navigation by line moves the cursor less than a full line. - Navigation by line reads content not near the cursor. ### Browser and platform Chrome 135.0.7049.111 / Android 13 ### Reproduction link https://codemirror.net/try/#c=aW1wb3J0IHtiYXNpY1NldHVwLCBFZGl0b3JWaWV3fSBmcm9tICJjb2RlbWlycm9yIgppbXBvcnQge21hcmtkb3dufSBmcm9tICJAY29kZW1pcnJvci9sYW5nLW1hcmtkb3duIgppbXBvcnQge2xhbmd1YWdlc30gZnJvbSAiQGNvZGVtaXJyb3IvbGFuZ3VhZ2UtZGF0YSIKCi8vIFRoZSBNYXJrZG93biBwYXJzZXIgd2lsbCBkeW5hbWljYWxseSBsb2FkIHBhcnNlcnMKLy8gZm9yIGNvZGUgYmxvY2tzLCB1c2luZyBAY29kZW1pcnJvci9sYW5ndWFnZS1kYXRhIHRvCi8vIGxvb2sgdXAgdGhlIGFwcHJvcHJpYXRlIGR5bmFtaWMgaW1wb3J0LgpsZXQgdmlldyA9IG5ldyBFZGl0b3JWaWV3KHsKICBkb2M6ICJIZWxsb1xuXG5gYGBqYXZhc2NyaXB0XG5sZXQgeCA9ICd5J1xuYGBgXG5cbjxwPnRlc3Q8L3A+XG4iLAogIGV4dGVuc2lvbnM6IFsKICAgIGJhc2ljU2V0dXAsCiAgICBtYXJrZG93bih7Y29kZUxhbmd1YWdlczogbGFuZ3VhZ2VzfSkKICBdLAogIHBhcmVudDogZG9jdW1lbnQuYm9keQp9KQo=
marijnh commented 2025-06-03 09:51:37 +02:00 (Migrated from github.com)

I can confirm this. But TalkBack works just as terribly with a raw contenteditable field that has a similar structure (divs with text in them, some of which has spans covering it, which seems a rather reasonable DOM structure). So it seems this is a general issue with Chrome and/or TalkBack.

I can confirm this. But TalkBack works just as terribly with a raw contenteditable field that has a similar structure (divs with text in them, some of which has spans covering it, which seems a rather reasonable DOM structure). So it seems this is a general issue with Chrome and/or TalkBack.
personalizedrefrigerator commented 2025-06-05 18:58:43 +02:00 (Migrated from github.com)

Thank you for checking!

I've opened an upstream issue: https://issues.chromium.org/issues/422686693. Edit: I'm now getting "Access is denied" when opening that issue. This seems to be the new issue.

Thank you for checking! I've opened an upstream issue: https://issues.chromium.org/issues/422686693. **Edit**: I'm now getting "Access is denied" when opening that issue. [This seems to be the new issue](https://issues.chromium.org/u/1/issues/433829629).
Sign in to join this conversation.
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
codemirror/dev#1556
No description provided.