Skip to content

[cupertino_ui] Localize CupertinoActionSheet semantics label - #13377

Merged
auto-submit[bot] merged 2 commits into
flutter:mainfrom
master-wayne7:cupertino-action-sheet-localized-semantics-label
Nov 10, 2026
Merged

auto-submit[bot] merged 2 commits into
flutter:mainfrom
master-wayne7:cupertino-action-sheet-localized-semantics-label

Conversation

@master-wayne7

Copy link
Copy Markdown
Contributor

CupertinoActionSheet wraps its content in a Semantics node that names and scopes the route, labelled with the hardcoded string 'Alert'. Because this node names the route, apps can't override the label, so VoiceOver announces "Alert" in English whatever the app's locale.

This PR uses CupertinoLocalizations.of(context).alertDialogLabel instead. CupertinoAlertDialog in the same file already does this, and every cupertino_*.arb file already translates the key (e.g. "Alerta" for pt). The English default is still 'Alert', so the existing semantics test is unchanged.

Note: CupertinoActionSheet now looks up CupertinoLocalizations, so it needs a localizations ancestor, which CupertinoApp provides. CupertinoAlertDialog already has this requirement.

Changes:

  • lib/src/dialog.dart: use the localized alertDialogLabel for the action sheet's semantics label.
  • test/action_sheet_test.dart: add a regression test that shows an action sheet under the pt locale and checks that the dialog semantics node is labelled "Alerta". The test fails before this change and passes after it.
  • pending_changelogs/localize_action_sheet_semantics_label.yaml: patch-level changelog entry, following the package's batch release process.

Fixes flutter/flutter#195019

Pre-Review Checklist

If you need help, consider asking for advice on the #hackers-new channel on Discord.

Note: The Flutter team is currently trialing the use of Gemini Code Assist for GitHub. Comments from the gemini-code-assist bot should not be taken as authoritative feedback from the Flutter team. If you find its comments useful you can update your code accordingly, but if you are unsure or disagree with the feedback, please feel free to wait for a Flutter team member's review for guidance on which automated comments should be addressed.

Footnotes

  1. Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling. ↩ ↩2

@github-actions github-actions Bot added p: cupertino_ui triage-design Should be looked at in design triage labels Oct 22, 2026

@gemini-code-assist gemini-code-assist Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Code Review

This pull request localizes the semantics label for CupertinoActionSheet by replacing the hardcoded 'Alert' label with CupertinoLocalizations.of(context).alertDialogLabel. It also adds a corresponding widget test to verify the localization behavior and includes a pending changelog entry. There are no review comments, so I have no feedback to provide.

@elliette
elliette requested a review from dkwingsmt October 27, 2026 21:09

@dkwingsmt dkwingsmt left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

LGTM. Thank you for the fix!

@dkwingsmt
dkwingsmt requested a review from pjkammer November 10, 2026 05:55
@dkwingsmt dkwingsmt added the CICD Run CI/CD label Nov 10, 2026
@flutter-dashboard flutter-dashboard Bot removed the CICD Run CI/CD label Nov 10, 2026
@pjkammer pjkammer added CICD Run CI/CD autosubmit Merge PR when tree becomes green via auto submit App labels Nov 10, 2026
@auto-submit
auto-submit Bot merged commit 254a37e into flutter:main Nov 10, 2026
13 checks passed
opensource-fork-sync Bot pushed a commit to cla7aye15I4nd/opensource-flutter__flutter that referenced this pull request Nov 11, 2026
…er#196381)

flutter/packages@08faf64...653628e

2026-11-11 [email protected] Roll Flutter from
fffd8c2 to b98afb5 (31 revisions) (flutter/packages#13623)
2026-11-11 [email protected] [material_ui] Document how to
programmatically clear DropdownMenu selection (flutter/packages#13266)
2026-11-11 [email protected] [pigeon] Fix basePath resolution when
paths share a string prefix with basePath (flutter/packages#13342)
2026-11-11 [email protected]
[cupertino_ui] Fix CupertinoSheetRoute throwing when a drag ends during
a pending relayout (flutter/packages#13316)
2026-11-11 [email protected] [shared_preferences] Updates Pigeon to
30.0.1 to support multi-engine registration and deregistration.
(flutter/packages#13617)
2026-11-11 [email protected]
[vector_graphics] Catch any throwable in useHtmlRenderObject() and cache
HTML fallback (flutter/packages#13545)
2026-11-11 [email protected] [cupertino_ui]
Include selectionHandleColor in NoDefaultCupertinoThemeData equality
(flutter/packages#13450)
2026-11-11 [email protected] [flutter_svg] Remove failed async loads
from Cache._pending (flutter/packages#13604)
2026-11-11 [email protected] [pigeon] Adds Native Interop FFI codec
serialization for NS types (flutter/packages#13616)
2026-11-10 [email protected] [pigeon] Support multi-engine Native
Interop registration and instance-aware unregistration
(flutter/packages#13576)
2026-11-10 [email protected] [image_picker_ios] Convert the
iOS example app and UI tests to Swift (flutter/packages#13570)
2026-11-10 [email protected]
[cupertino_ui] Localize CupertinoActionSheet semantics label
(flutter/packages#13377)
2026-11-10 [email protected] [camera_android]
Fix stopVideoRecording returning JPEG when takePicture runs during
recording (flutter/packages#13070)
2026-11-10 [email protected] [google_sign_in_android] Rename keep.xml
to google_sign_in_keep.xml (flutter/packages#13475)
2026-11-10 [email protected] [web_benchmarks] Fix benchmark stalling
when only repainting views that are dirty (flutter/packages#13089)
2026-11-10 [email protected] Roll Flutter from
d463821 to fffd8c2 (21 revisions) (flutter/packages#13614)

If this roll has caused a breakage, revert this CL and set the roller
to dry run mode using the controls here:
https://autoroll.skia.org/r/flutter-packages-flutter-autoroll
Please CC [email protected] on the revert to ensure that a
human
is aware of the problem.

To file a bug in Flutter:
https://github.com/flutter/flutter/issues/new/choose

To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

autosubmit Merge PR when tree becomes green via auto submit App CICD Run CI/CD p: cupertino_ui triage-design Should be looked at in design triage

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[cupertino_ui] CupertinoActionSheet semantics label is hardcoded to 'Alert' instead of using CupertinoLocalizations.alertDialogLabel

3 participants