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

Android/iOS: Accessibility - show/hide password toggle buttons don't programmatically expose their state #1916

Closed
1 task
patrickhlauke mannequin opened this issue May 19, 2022 · 1 comment · Fixed by #1926
Closed
1 task
Assignees
Labels
bug Something isn't working

Comments

@patrickhlauke
Copy link
Mannequin

patrickhlauke mannequin commented May 19, 2022

Steps To Reproduce

  1. Turn on TalkBack
  2. Go to a screen with an "eye" show/hide password toggle button
  3. Set focus to it - it announces as "Toggle visibility, Button" (A)
  4. Double-tap to activate the button (B)
  5. Leave the button, then return to it (C)

Expected Result

(A) When first focusing on the button, it should give a hint about its current state (that it's currently disabled / visibility is off).
(B) Toggling the button should dynamically announce its state changed
(C) Returning to the button, it should now announce that it's on (visibility is on / the button is enabled/pressed/active)

Actual Result

The button conveys no state information. Toggling the button does not lead to any TalkBack hint/announcement that anything actually happened

Screenshots or Videos

Photos (as can't take on-device screenshots, since Bitwarden suppresses this) of Bitwarden on Android, with TalkBack's speech output visible at the bottom:
Focus on the toggle button when it's off, with TalkBack text "Toggle visibility, Button"
Focus on the toggle button when it's on, with TalkBack text "Toggle visibility, Button"

Additional Context

The desktop client and extension had similar issues, until I addressed them - see bitwarden/clients#2228 and bitwarden/desktop#1442

For android native, there's likely a native "toggle" type button/attribute that can be set on buttons. its value should be dynamically changed to reflect its current state.

Failing that, a dynamic change of accessible name ("Toggle visibility, on" or "Toggle visibility, pressed" / "Toggle visibility, off" or "Toggle visibility, not pressed") would do the trick. Just something that conveys what's going on to assistive technology users.

Operating System

Android

Operating System Version

11

Device

Motorola moto g(8)

Build Version

2.18.0 (4572)

Beta

  • Using a pre-release version of the application.
@patrickhlauke patrickhlauke mannequin added the bug Something isn't working label May 19, 2022
@patrickhlauke
Copy link
Mannequin Author

patrickhlauke mannequin commented May 20, 2022

Same is true on iOS

Focus on the toggle button when it's off, with VoiceOver text "Toggle visibility, Button"

Focus on the toggle button when it's on, with VoiceOver text "Toggle visibility, Button"

@patrickhlauke patrickhlauke mannequin changed the title Android: Accessibility - show/hide password toggle buttons don't programmatically expose their state Android/iOS: Accessibility - show/hide password toggle buttons don't programmatically expose their state May 22, 2022
@andrebispo5 andrebispo5 self-assigned this May 25, 2022
@andrebispo5 andrebispo5 linked a pull request May 26, 2022 that will close this issue
8 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

Successfully merging a pull request may close this issue.

0 participants