Repository navigation
[material_ui] Add tabBar/tab roles and expanded state semantics - #13176
auto-submit[bot] merged 6 commits into
Conversation
…icker accessibility - Wrap NavigationRail destinations in SemanticsRole.tabBar and _RailDestination in SemanticsRole.tab with selected state. - Expose expanded state semantics on DrawerButton and EndDrawerButton via MergeSemantics. - Expose expanded state semantics on _DatePickerModeToggleButton in CalendarDatePicker.
There was a problem hiding this comment.
Code Review
This pull request improves accessibility semantics across several Material UI components. It adds SemanticsRole.tabBar and SemanticsRole.tab to NavigationRail, exposes expanded state semantics on DrawerButton, EndDrawerButton, and the CalendarDatePicker year-mode toggle, and includes corresponding test updates. Feedback suggests that DrawerButton and EndDrawerButton should only expose the expanded state if a drawer is actually present on the ancestor Scaffold to avoid incorrect screen reader announcements.
…ndDrawerButtonIcon
|
@kevmoo can you please complete the checklist provided in the PR template? It looks like this one is generated and is missing some things. Also, what issue is this resolving? |
|
Updated the PR description with the standard Pre-Review Checklist and linked flutter/flutter#173052 and flutter/flutter#194904. |
elliette
left a comment
There was a problem hiding this comment.
Thanks for fixing! Left a comment
…heritedModel Upgrades _ScaffoldScope to InheritedModel so DrawerButtonIcon and EndDrawerButtonIcon rebuild reactively when Scaffold drawer presence or open/close state changes, and tests the full AppBar open/close lifecycle.
flutter/packages@0478162...63881f9 2026-11-06 [email protected] [material_ui] Paint Dialog.fullscreen background color behind the keyboard (flutter/packages#13244) 2026-11-05 [email protected] [material_ui] Add tabBar/tab roles and expanded state semantics (flutter/packages#13176) 2026-11-05 [email protected] [material_ui] Disable the DropdownButtonFormField decoration when the field is disabled (flutter/packages#13473) 2026-11-05 [email protected] [material_ui] Fix Switch throwing when first painted mid-animation (flutter/packages#13496) 2026-11-05 [email protected] [various] Add engineIdentifier to fake plugin registrars (flutter/packages#13574) 2026-11-05 [email protected] [google_sign_in] Allow GoogleSignIn-iOS 10 (flutter/packages#13306) 2026-11-05 [email protected] [material_ui] Hit test the floating label of InputDecorator at its painted position (flutter/packages#13326) 2026-11-05 [email protected] [material_ui] Fix InputDecorator intrinsic height when isDense or isC… (flutter/packages#13522) 2026-11-05 [email protected] [material_ui] Paint Scaffold persistent bottom sheet background color behind the keyboard (flutter/packages#13242) 2026-11-05 [email protected] [image_picker_ios] PR 5/5 Switch Pigeon to Swift and finish the Objective-C to Swift migration. (flutter/packages#13493) 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
Exposes
SemanticsRole.tabBarandSemanticsRole.tabonNavigationRaildestinations (omitting the redundant"Tab i of n"indexLabelon web whererole="tablist"natively computes set size, matchingTabBarandTab) and setsSemantics(expanded: ...)onDrawerButtonIcon,EndDrawerButtonIcon, andCalendarDatePicker's year/day mode toggle button so assistive technologies announce tab selection and expand/collapse states (WCAG 4.1.2).Fixes flutter/flutter#173052
Fixes flutter/flutter#194904
Pre-Review Checklist
[shared_preferences]///).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-assistbot 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
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