react / react/react-native

Accessibility issue - Android with TalkBack - accessibilityRole="link" is not available when user tries to navigate via links (TalkBack menu)

Open
#45,612 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Issue: Author Provided Repro Platform: Android
Dominant language
C++
Stars
127k
Forks
25.3k
Avg merge
1d 23h
Merged PRs (30d)
4

Description

Description

Used accessibilityRole="link" on a Pressable and it's semantics is properly announced to TalkBack.

The problem is that users can not navigate via links when they want to use "TalkBack menu" feature in the TalkBack (https://support.google.com/accessibility/android/answer/6006598?hl=en).

TalkBack menu navigate by Headings, Paragraphs, Buttons etc. seem to work fine, but links do not work.

Steps to reproduce

Basically it drills down to this part of code:

<Pressable style={styles.link} onPress={handlePress} accessibilityRole="link"> <Text>{name}</Text> </Pressable>

I've made a simple Expo Snack that can be used for testing: https://snack.expo.dev/HjDqJulTWJJtcolH3eHue

Expo SDK: 51.0.0
Android: 14
TalkBack version: Accessibility 15.1.00.7

React Native Version

0.74.3

Affected Platforms

Runtime - Android

Output of npx react-native info
Not Applicable
Stacktrace or Logs
Not Applicable
Reproducer

https://snack.expo.dev/HjDqJulTWJJtcolH3eHue

Screenshots and Videos

Please check https://youtu.be/I-KUxd3EZdc

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the Pressable accessibilityRole="link" path and reproduce the issue using the linked Expo Snack on Android 14 with TalkBack. Compare link navigation in the TalkBack menu with the working headings, paragraphs, and buttons; done means links exposed by Pressable are available through that navigation.

Written by the indexing model from the issue text.

Assessment

Tech stack
android, react-native
Domain
accessibility, mobile
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
42/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.