react-native-community/discussions-and-proposals

Accessibility focus order in React Native

vijaykumar1710 opened this issue · 1 comments

Discussed in #389

Originally posted by louy April 10, 2019

Introduction

I know the accessibility focus order of components have been mentioned a few times but I couldn't really find anything helpful, so I thought I'd start a new discussion about it here.

facebook/react-native#13152
facebook/react-native#24239

The Core of It

On the web, screen readers determine the flow of which things are read by looking at the DOM tree and going from top the bottom, and this is the way accessibility is managed in React DOM.

However, on the native side (and more specifically on iOS) this doesn't seem to be the case.

I'm not really quite sure how iOS decides which views are read first, but I suspect it has to do with the timing and order in which these views were added to the screen.

iOS exposes some APIs to allow developers to control this order, but React Native doesn't seem to expose that to the Javascript side

Discussion points

Have anyone here had this issue before? What was your solution for it? Is this something that should live in a package (and are there any packages that already do that), or is it something that can/should be done in react-native?