-
Notifications
You must be signed in to change notification settings - Fork 29.8k
Relax RadioGroup semantics to allow non-radio children #170273
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
Conversation
| expect(error.message, 'Radio groups must not have multiple checked children'); | ||
| }); | ||
|
|
||
| testWidgets('error case, reports first error', (WidgetTester tester) async { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't know how to properly test this since now only multiple checked radio will throw error, and since this error involves all radios in the group, so it doesn't make sense to say one of the error is the first error
loic-sharma
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good, but I'm curious when we'd need to nest a radio group in another radio group
|
there may be use case that radio group inside another radio group, for example if chicken wing menu can have something like |
flutter/flutter@f79452e...8303a96 2025-06-13 codefu@google.com infa: linux_android_emulator_tests to bringup (bad kvm config) (flutter/flutter#170607) 2025-06-13 engine-flutter-autoroll@skia.org Roll Skia from 70455b7c74dd to 438ea4e05e15 (1 revision) (flutter/flutter#170570) 2025-06-13 sokolovskyi.konstantin@gmail.com [web] Add Paint dithering. (flutter/flutter#170362) 2025-06-13 jhy03261997@gmail.com Reland (#167738) but with some flags updated to use enum (flutter/flutter#170505) 2025-06-13 engine-flutter-autoroll@skia.org Roll Dart SDK from ac589dba5282 to 1a6f6d7c6f2c (4 revisions) (flutter/flutter#170566) 2025-06-13 engine-flutter-autoroll@skia.org Roll Skia from 22018eab8c1f to 70455b7c74dd (1 revision) (flutter/flutter#170564) 2025-06-13 engine-flutter-autoroll@skia.org Roll Fuchsia Linux SDK from Dueykg3VpLT5D_jSG... to lVfYTWxB0rTTuW_k3... (flutter/flutter#170557) 2025-06-13 737941+loic-sharma@users.noreply.github.com [Windows] Use ANGLE blit extension on GLES 2.0 (flutter/flutter#170298) 2025-06-12 codefu@google.com chore: move experimental setup steps to composite action (flutter/flutter#170496) 2025-06-12 jonahwilliams@google.com [Impeller] fix mask filter application to Vertices. (flutter/flutter#170548) 2025-06-12 engine-flutter-autoroll@skia.org Roll Skia from b41e7017658e to 22018eab8c1f (2 revisions) (flutter/flutter#170551) 2025-06-12 737941+loic-sharma@users.noreply.github.com Add CupertinoSheetRoute widget of the week video (flutter/flutter#170026) 2025-06-12 matanlurey@users.noreply.github.com Fix stray `--packages` argument from `workspace` refactor; add a test. (flutter/flutter#170449) 2025-06-12 137456488+flutter-pub-roller-bot@users.noreply.github.com Roll pub packages (flutter/flutter#170522) 2025-06-12 47866232+chunhtai@users.noreply.github.com Navigator should call didpop when popping page based route (flutter/flutter#170376) 2025-06-12 47866232+chunhtai@users.noreply.github.com Relax RadioGroup semantics to allow non-radio children (flutter/flutter#170273) 2025-06-12 bkonyi@google.com [ Widget Preview ] Refactor the `flutter widget-preview` command (flutter/flutter#170467) 2025-06-12 15619084+vashworth@users.noreply.github.com Pause UIScene migration (flutter/flutter#170490) 2025-06-12 engine-flutter-autoroll@skia.org Roll Dart SDK from 9f741ef8a689 to ac589dba5282 (3 revisions) (flutter/flutter#170519) 2025-06-12 engine-flutter-autoroll@skia.org Roll Packages from 0b322a2 to 6d3aaf4 (2 revisions) (flutter/flutter#170528) 2025-06-12 matanlurey@users.noreply.github.com Fix the path to `packages_autoroller`. (flutter/flutter#170538) If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/flutter-packages Please CC bmparr@google.com,stuartmorgan@google.com on the revert to ensure that a human is aware of the problem. To file a bug in Packages: 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
flutter/flutter@f79452e...8303a96 2025-06-13 codefu@google.com infa: linux_android_emulator_tests to bringup (bad kvm config) (flutter/flutter#170607) 2025-06-13 engine-flutter-autoroll@skia.org Roll Skia from 70455b7c74dd to 438ea4e05e15 (1 revision) (flutter/flutter#170570) 2025-06-13 sokolovskyi.konstantin@gmail.com [web] Add Paint dithering. (flutter/flutter#170362) 2025-06-13 jhy03261997@gmail.com Reland (#167738) but with some flags updated to use enum (flutter/flutter#170505) 2025-06-13 engine-flutter-autoroll@skia.org Roll Dart SDK from ac589dba5282 to 1a6f6d7c6f2c (4 revisions) (flutter/flutter#170566) 2025-06-13 engine-flutter-autoroll@skia.org Roll Skia from 22018eab8c1f to 70455b7c74dd (1 revision) (flutter/flutter#170564) 2025-06-13 engine-flutter-autoroll@skia.org Roll Fuchsia Linux SDK from Dueykg3VpLT5D_jSG... to lVfYTWxB0rTTuW_k3... (flutter/flutter#170557) 2025-06-13 737941+loic-sharma@users.noreply.github.com [Windows] Use ANGLE blit extension on GLES 2.0 (flutter/flutter#170298) 2025-06-12 codefu@google.com chore: move experimental setup steps to composite action (flutter/flutter#170496) 2025-06-12 jonahwilliams@google.com [Impeller] fix mask filter application to Vertices. (flutter/flutter#170548) 2025-06-12 engine-flutter-autoroll@skia.org Roll Skia from b41e7017658e to 22018eab8c1f (2 revisions) (flutter/flutter#170551) 2025-06-12 737941+loic-sharma@users.noreply.github.com Add CupertinoSheetRoute widget of the week video (flutter/flutter#170026) 2025-06-12 matanlurey@users.noreply.github.com Fix stray `--packages` argument from `workspace` refactor; add a test. (flutter/flutter#170449) 2025-06-12 137456488+flutter-pub-roller-bot@users.noreply.github.com Roll pub packages (flutter/flutter#170522) 2025-06-12 47866232+chunhtai@users.noreply.github.com Navigator should call didpop when popping page based route (flutter/flutter#170376) 2025-06-12 47866232+chunhtai@users.noreply.github.com Relax RadioGroup semantics to allow non-radio children (flutter/flutter#170273) 2025-06-12 bkonyi@google.com [ Widget Preview ] Refactor the `flutter widget-preview` command (flutter/flutter#170467) 2025-06-12 15619084+vashworth@users.noreply.github.com Pause UIScene migration (flutter/flutter#170490) 2025-06-12 engine-flutter-autoroll@skia.org Roll Dart SDK from 9f741ef8a689 to ac589dba5282 (3 revisions) (flutter/flutter#170519) 2025-06-12 engine-flutter-autoroll@skia.org Roll Packages from 0b322a2 to 6d3aaf4 (2 revisions) (flutter/flutter#170528) 2025-06-12 matanlurey@users.noreply.github.com Fix the path to `packages_autoroller`. (flutter/flutter#170538) If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/flutter-packages Please CC bmparr@google.com,stuartmorgan@google.com on the revert to ensure that a human is aware of the problem. To file a bug in Packages: 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
<!-- Thanks for filing a pull request! Reviewers are typically assigned within a week of filing a request. To learn more about code review, see our documentation on Tree Hygiene: https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md --> as title, also adjust radio group semantics to form a semantics node. This makes sure it won't merge up and end up taking other semantics node sibling as its children ## Pre-launch Checklist - [ ] I read the [Contributor Guide] and followed the process outlined there for submitting PRs. - [ ] I read the [Tree Hygiene] wiki page, which explains my responsibilities. - [ ] I read and followed the [Flutter Style Guide], including [Features we expect every widget to implement]. - [ ] I signed the [CLA]. - [ ] I listed at least one issue that this PR fixes in the description above. - [ ] I updated/added relevant documentation (doc comments with `///`). - [ ] I added new tests to check the change I am making, or this PR is [test-exempt]. - [ ] I followed the [breaking change policy] and added [Data Driven Fixes] where supported. - [ ] All existing and new tests are passing. If you need help, consider asking for advice on the #hackers-new channel on [Discord]. <!-- Links --> [Contributor Guide]: https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#overview [Tree Hygiene]: https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md [test-exempt]: https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests [Flutter Style Guide]: https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md [Features we expect every widget to implement]: https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#features-we-expect-every-widget-to-implement [CLA]: https://cla.developers.google.com/ [flutter/tests]: https://github.com/flutter/tests [breaking change policy]: https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes [Discord]: https://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md [Data Driven Fixes]: https://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md
flutter/flutter@f79452e...8303a96 2025-06-13 codefu@google.com infa: linux_android_emulator_tests to bringup (bad kvm config) (flutter/flutter#170607) 2025-06-13 engine-flutter-autoroll@skia.org Roll Skia from 70455b7c74dd to 438ea4e05e15 (1 revision) (flutter/flutter#170570) 2025-06-13 sokolovskyi.konstantin@gmail.com [web] Add Paint dithering. (flutter/flutter#170362) 2025-06-13 jhy03261997@gmail.com Reland (#167738) but with some flags updated to use enum (flutter/flutter#170505) 2025-06-13 engine-flutter-autoroll@skia.org Roll Dart SDK from ac589dba5282 to 1a6f6d7c6f2c (4 revisions) (flutter/flutter#170566) 2025-06-13 engine-flutter-autoroll@skia.org Roll Skia from 22018eab8c1f to 70455b7c74dd (1 revision) (flutter/flutter#170564) 2025-06-13 engine-flutter-autoroll@skia.org Roll Fuchsia Linux SDK from Dueykg3VpLT5D_jSG... to lVfYTWxB0rTTuW_k3... (flutter/flutter#170557) 2025-06-13 737941+loic-sharma@users.noreply.github.com [Windows] Use ANGLE blit extension on GLES 2.0 (flutter/flutter#170298) 2025-06-12 codefu@google.com chore: move experimental setup steps to composite action (flutter/flutter#170496) 2025-06-12 jonahwilliams@google.com [Impeller] fix mask filter application to Vertices. (flutter/flutter#170548) 2025-06-12 engine-flutter-autoroll@skia.org Roll Skia from b41e7017658e to 22018eab8c1f (2 revisions) (flutter/flutter#170551) 2025-06-12 737941+loic-sharma@users.noreply.github.com Add CupertinoSheetRoute widget of the week video (flutter/flutter#170026) 2025-06-12 matanlurey@users.noreply.github.com Fix stray `--packages` argument from `workspace` refactor; add a test. (flutter/flutter#170449) 2025-06-12 137456488+flutter-pub-roller-bot@users.noreply.github.com Roll pub packages (flutter/flutter#170522) 2025-06-12 47866232+chunhtai@users.noreply.github.com Navigator should call didpop when popping page based route (flutter/flutter#170376) 2025-06-12 47866232+chunhtai@users.noreply.github.com Relax RadioGroup semantics to allow non-radio children (flutter/flutter#170273) 2025-06-12 bkonyi@google.com [ Widget Preview ] Refactor the `flutter widget-preview` command (flutter/flutter#170467) 2025-06-12 15619084+vashworth@users.noreply.github.com Pause UIScene migration (flutter/flutter#170490) 2025-06-12 engine-flutter-autoroll@skia.org Roll Dart SDK from 9f741ef8a689 to ac589dba5282 (3 revisions) (flutter/flutter#170519) 2025-06-12 engine-flutter-autoroll@skia.org Roll Packages from 0b322a2 to 6d3aaf4 (2 revisions) (flutter/flutter#170528) 2025-06-12 matanlurey@users.noreply.github.com Fix the path to `packages_autoroller`. (flutter/flutter#170538) If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/flutter-packages Please CC bmparr@google.com,stuartmorgan@google.com on the revert to ensure that a human is aware of the problem. To file a bug in Packages: 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
as title, also adjust radio group semantics to form a semantics node. This makes sure it won't merge up and end up taking other semantics node sibling as its children
Pre-launch Checklist
///).If you need help, consider asking for advice on the #hackers-new channel on Discord.