You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Android: aria-busy, aria-checked="mixed" and aria-valuetext replace the element's name in TalkBack #59856
On Android, busy, checked: 'mixed' and accessibilityValue.text (and their aria-* props) are written into the view's contentDescription (BaseViewManager.java#L466-L498). Without an accessibilityLabel the description is only these words, and TalkBack reads it instead of the element's text:
<Pressable aria-busy><Text>Results</Text></Pressable> is read as "busy".
<Pressable role="checkbox" aria-checked="mixed"><Text>Select all</Text></Pressable> is read as "mixed", with no name.
<View accessible role="slider" aria-valuetext="3 of 5" ...><Text>Rating</Text></View> is read as "3 of 5".
<Text aria-busy>Saving</Text> is read as "busy".
iOS keeps the name and reads these words as the value. On Android they belong in stateDescription. I'll send a fix once #59009 and #58825, which add stateDescription for checked, are settled.
This is the bug #59816 mentions for aria-busy and aria-checked="mixed".
Steps to reproduce
Run the reproducer from ReproducerApp: yarn install, then yarn android.
Turn on TalkBack and go through the sections. In each one, the second element is the same without the prop.
Expected: the name is read together with the state or value, as on iOS.
Actual: only "busy", "mixed" or the value text is read. The second element is read by its name.
Activity