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

Accessibility broken for multi-line TextInput focus accessibility (since 0.71) #44915

Open
jgillick opened this issue Jun 13, 2024 · 0 comments
Labels
Accessibility Component: TextInput Related to the TextInput component. Issue: Author Provided Repro This issue can be reproduced in Snack or an attached project. Needs: Triage 🔍

Comments

@jgillick
Copy link

jgillick commented Jun 13, 2024

Description

With React Native 0.71, multi-line TextInput fields are not announcing "is editing" to assistive devices when the field is activated. This results in assistive keyboards, like braille screen input, from working and renders the text input entirely unusable.

This was verified functional in 0.70.x. and broken since 0.71.0

Using git bisect and the rn-tester app, I believe the source of the bug is:

Removing the accessibilityState attribute of RCTTextInputView in TextInput.js seems to fix it. Is there any reason we need this accessibilityState object for an input field?

Steps to reproduce

  1. Using Expo Go, open an example app on a physical iOS device.
  2. Navigate to a TextInput with multiline={true}
  3. Double-tap to activate the field.
  4. Observe that the screen reader does not announce "is editing".

React Native Version

0.74.2

Affected Platforms

Runtime - iOS

Output of npx react-native info

System:
    OS: macOS 13.0
    CPU: (8) arm64 Apple M1
    Memory: 106.13 MB / 16.00 GB
    Shell: 3.6.0 - /opt/homebrew/bin/fish
  Binaries:
    Node: 19.7.0 - /usr/local/bin/node
    Yarn: 1.22.17 - /usr/local/bin/yarn
    npm: 9.5.0 - /usr/local/bin/npm
    Watchman: 2023.01.30.00 - /opt/homebrew/bin/watchman
  Managers:
    CocoaPods: Not Found
  SDKs:
    iOS SDK:
      Platforms: DriverKit 22.1, iOS 16.1, macOS 13.0, tvOS 16.1, watchOS 9.1
    Android SDK: Not Found
  IDEs:
    Android Studio: 2022.1 AI-221.6008.13.2211.9619390
    Xcode: 14.1/14B47b - /usr/bin/xcodebuild
  Languages:
    Java: 11.0.11 - /usr/bin/javac
  npmPackages:
    @react-native-community/cli: Not Found
    react: 18.2.0 => 18.2.0 
    react-native: 0.71.4 => 0.71.4 
    react-native-macos: Not Found
  npmGlobalPackages:
    *react-native*: Not Found

Stacktrace or Logs

N/A

Reproducer

https://github.com/jgillick/rn-input-multiline-a11y-bug

Screenshots and Videos

No response

@github-actions github-actions bot added the Component: TextInput Related to the TextInput component. label Jun 13, 2024
@cortinico cortinico added Issue: Author Provided Repro This issue can be reproduced in Snack or an attached project. Accessibility labels Jun 13, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Accessibility Component: TextInput Related to the TextInput component. Issue: Author Provided Repro This issue can be reproduced in Snack or an attached project. Needs: Triage 🔍
Projects
None yet
Development

No branches or pull requests

2 participants