Skip to content

Bugfix FXIOS-15389 [Translations][Accessibility] Languages cannot be removed from the Preferred Languages section with voice-over ON#32992

Merged
razvanlitianu merged 4 commits intomainfrom
rlitianu/translations-15387-15389-a11y-preferred-languages
Apr 16, 2026
Merged

Bugfix FXIOS-15389 [Translations][Accessibility] Languages cannot be removed from the Preferred Languages section with voice-over ON#32992
razvanlitianu merged 4 commits intomainfrom
rlitianu/translations-15387-15389-a11y-preferred-languages

Conversation

@razvanlitianu
Copy link
Copy Markdown
Collaborator

@razvanlitianu razvanlitianu commented Apr 8, 2026

📜 Tickets

Jira ticket
Github issue

💡 Description

  • Language cells now announce the language name correctly instead of "Remove" (FXIOS-15387)
  • Double-tapping a language cell in edit mode removes it via VoiceOver (FXIOS-15389)

🎥 Demos

ScreenRecording_04-09-2026.10-35-28_1.mp4
Before After
Demo

📝 Checklist

  • I filled in the ticket numbers and a description of my work
  • I updated the PR name to follow our PR naming guidelines
  • I ensured unit tests pass and wrote tests for new code
  • If working on UI, I checked and implemented accessibility (Dynamic Text and VoiceOver)
  • If adding telemetry, I read the data stewardship requirements and will request a data review
  • If adding or modifying strings, I read the guidelines and will request a string review from l10n
  • If needed, I updated documentation and added comments to complex code

@razvanlitianu razvanlitianu changed the title Rlitianu/translations 15387 15389 a11y preferred languages Bugfix FXIOS-15389 #32989 [Translations][Accessibility] Languages cannot be removed from the Preferred Languages section with voice-over ON Apr 8, 2026
@razvanlitianu razvanlitianu changed the title Bugfix FXIOS-15389 #32989 [Translations][Accessibility] Languages cannot be removed from the Preferred Languages section with voice-over ON Bugfix FXIOS-15389 [Translations][Accessibility] Languages cannot be removed from the Preferred Languages section with voice-over ON Apr 8, 2026
@mobiletest-ci-bot
Copy link
Copy Markdown

mobiletest-ci-bot commented Apr 8, 2026

Messages
📖 Project coverage: 41.04%

✍️ Strings Updated

Detected changes in Shared/Strings.swift.
To keep strings up to standards, please add a member of the firefox-ios-l10n team as reviewer. 🌍

🧹 Tidy commit

Just 3 file(s) touched. Thanks for keeping it clean and review-friendly!

✅ New file code coverage

No new file detected so code coverage gate wasn't ran.

Client.app: Coverage: 39.41

File Coverage
TranslationPickerSettingsViewController.swift 52.58%
TranslationLanguageCell.swift 0.0% ⚠️

Generated by 🚫 Danger Swift against 5412fc6

@razvanlitianu razvanlitianu marked this pull request as ready for review April 9, 2026 07:37
@razvanlitianu razvanlitianu requested a review from a team as a code owner April 9, 2026 07:37
@mergify
Copy link
Copy Markdown
Contributor

mergify bot commented Apr 9, 2026

This pull request has conflicts when rebasing. Could you fix it @razvanlitianu? 🙏

@razvanlitianu razvanlitianu force-pushed the rlitianu/translations-15387-15389-a11y-preferred-languages branch from ab3ab69 to 0f1e340 Compare April 9, 2026 07:39
@razvanlitianu razvanlitianu force-pushed the rlitianu/translations-15387-15389-a11y-preferred-languages branch from 0f1e340 to 101de22 Compare April 14, 2026 06:20
Copy link
Copy Markdown
Collaborator

@thatswinnie thatswinnie left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I did some testing and while the solution works it's not in line with how Apple implemented it in their own apps. It would be unexpected to the user if they delete a language on an action that should activate the cell. Instead we should add an UIAccessibilityCustomAction to the cell that allows for the deletion.

@razvanlitianu
Copy link
Copy Markdown
Collaborator Author

@thatswinnie UIAccessibilityCustomAction was added and should work as expected.

value: "Add Language…",
comment: "Row label in the preferred languages list that opens the language picker to add a new preferred language for translation."
)
public static let RemoveLanguageA11yAction = MZLocalizedString(
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

With this being a new string the feature shouldn't be made available to the end user until v151. Can you can confirm that this is behind a feature flag and no experiment will be running for this until v151?

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That's correct. The feature flag is .translationLanguagePicker.

@razvanlitianu razvanlitianu merged commit e419ab1 into main Apr 16, 2026
9 checks passed
@razvanlitianu razvanlitianu deleted the rlitianu/translations-15387-15389-a11y-preferred-languages branch April 16, 2026 12:01
@github-actions
Copy link
Copy Markdown
Contributor

🚀 PR merged to main, targeting version: 150.1

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants