[PM-41480] "Show/reveal" controls have a non-standard VoiceOver label
- Dominant language
- Swift
- Stars
- 684
- Forks
- 154
- Avg merge
- 7d 2h
- Merged PRs (30d)
- 32
Description
### Steps To Reproduce
1. Enable VoiceOver, which can be done from "system settings > accessibility".
2. Go to any item in your vault that includes a hidden field. This includes login, cards and identities.
3. Use the standard VoiceOver gesture (left to right swipe), to scroll through the controls like "reveal" and "copy".
### Expected Result
VoiceOver, for the most part, can detect each button by its spoken label, such as "copy", "save", et cetera. This should also be the case for the show/reveal button.
### Actual Result
The spoken label for the reveal button appears to b "eye24". This is understandably very confusing for VoiceOver screen-reader users. As stated above, this is in any context, in any entry type where this kind of control appears.
### Screenshots or Videos
_No response_
### Additional Context
For those that may not be aware, VoiceOver is Apple's screen-reader for visually impaired users. It can be activated in ">system settings > accessibility".
### Build Version
2026.7.0
### What server are you connecting to?
US
### Self-host Server Version
_No response_
### Environment Details
iPhone SE 2020, IOS 26.5
### Issue Tracking Info
- [x] I understand that work is tracked outside of Github. A PR will be linked to this issue should one be opened to address it, but Bitwarden doesn't use fields like "assigned", "milestone", or "project" to track progress.
Contributor guide
Research direction
Start by reproducing the issue on an iPhone with VoiceOver enabled, then inspect the reveal controls used by login, card, and identity items. Confirm which accessibility label produces “eye24” and update the relevant controls so VoiceOver announces a clear show or reveal label in every listed context. Done means the label is correct across all affected entry types.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- swift
- Domain
- accessibility, mobile
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 68/100