Accessibility roles 'radio' & 'checkbox' not announced by screenreader on ios since 0.73.0
Nobody has claimed this yet.
- Dominant language
- C++
- Stars
- 127k
- Forks
- 25.3k
- Avg merge
- 1d 23h
- Merged PRs (30d)
- 4
Description
Description
since version v0.73.0 the roles for radio & checkbox are not announced by Screen readers on ios
this was working in v0.72.10 but stopped working in v0.73.0
Steps to reproduce
- install the app with
yarn ios - navigate with a screenreader or Accessibility inspector to the text
Welcome to React Nativeand go down from there - listen to the output - it does not announce roles for
radio&checkbox-buttonis still announced fine
React Native Version
0.73.5
Affected Platforms
Runtime - iOS
Output of npx react-native info
System:
OS: macOS 13.6.1
CPU: (10) arm64 Apple M1 Max
Memory: 1.12 GB / 32.00 GB
Shell:
version: "5.9"
path: /bin/zsh
Binaries:
Node:
version: 20.10.0
path: ~/.nvm/versions/node/v20.10.0/bin/node
Yarn:
version: 1.22.21
path: ~/.nvm/versions/node/v20.10.0/bin/yarn
npm:
version: 10.2.3
path: ~/.nvm/versions/node/v20.10.0/bin/npm
Watchman:
version: 2023.11.06.00
path: /opt/homebrew/bin/watchman
Managers:
CocoaPods: Not Found
SDKs:
iOS SDK:
Platforms:
- DriverKit 23.2
- iOS 17.2
- macOS 14.2
- tvOS 17.2
- visionOS 1.0
- watchOS 10.2
Android SDK: Not Found
IDEs:
Android Studio: 2022.3 AI-223.8836.35.2231.10811636
Xcode:
version: 15.2/15C500b
path: /usr/bin/xcodebuild
Languages:
Java:
version: 11.0.15
path: /Users/lutz.kwauka/.sdkman/candidates/java/current/bin/javac
Ruby:
version: 2.6.10
path: /Users/lutz.kwauka/.rbenv/shims/ruby
npmPackages:
"@react-native-community/cli": Not Found
react:
installed: 18.2.0
wanted: 18.2.0
react-native:
installed: 0.73.5
wanted: 0.73.5
react-native-macos: Not Found
npmGlobalPackages:
"*react-native*": Not Found
Android:
hermesEnabled: true
newArchEnabled: false
iOS:
hermesEnabled: true
newArchEnabled: false
Stacktrace or Logs
no crash happened
Reproducer
https://github.com/lutzk/accessibility-reproducer/
Screenshots and Videos
v0.72.10 working:
https://github.com/facebook/react-native/assets/793755/cec0dd90-6b7b-40d1-9fb5-9cd1d00e3f97
v0.73.5 not working:
https://github.com/facebook/react-native/assets/793755/c86794d2-f4fa-43df-835e-93315a63aa46
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the linked accessibility reproducer and run it with yarn ios, using a screen reader or Accessibility Inspector to compare React Native 0.72.10 with 0.73.5. Trace the iOS accessibility handling for radio and checkbox roles; done means both roles are announced again while button remains functional. The issue names no source file or test, so locating the regression requires repository research.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- ios, react-native
- Domain
- accessibility, mobile
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 38/100