Skip to content

Conversation

@Guldem
Copy link
Contributor

@Guldem Guldem commented Nov 6, 2025

This PR adds extra properties to CheckboxListTile, SwitchListTile and RadioListTile. These properties are already implemented for the ListTile and passed through from CheckboxListTile, SwitchListTile and RadioListTile to the underlying ListTile.

The following properties are added:
- horizontalTitleGap
- minVerticalPadding
- minLeadingWidth
- minTileHeight

Fixes #83898 and builds on #154417 and #83902

Pre-launch 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.

@github-actions github-actions bot added framework flutter/packages/flutter repository. See also f: labels. f: material design flutter/packages/flutter/material repository. labels Nov 6, 2025
Copy link
Contributor

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

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 adds property passthrough for horizontalTitleGap, minVerticalPadding, minLeadingWidth, and minTileHeight from CheckboxListTile, SwitchListTile, and RadioListTile to the underlying ListTile. The changes include updating the constructors and adding documentation for these new properties. New tests have also been added to verify the functionality. My review focuses on the new tests, where I've found some opportunities for improvement in test naming and comments for better clarity and maintainability.

Copy link
Contributor

@victorsanni victorsanni left a comment

Choose a reason for hiding this comment

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

Hi, thanks for the PR.

To fix the failing linux analyze test, run dart format packages/flutter/test/material/radio_list_tile_test.dart packages/flutter/test/material/switch_list_tile_test.dart

Copy link
Contributor

@victorsanni victorsanni left a comment

Choose a reason for hiding this comment

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

There are some failing customer tests. I will rebase to see if they are unrelated to this PR.

Failing customer test

Logs
| ══╡ EXCEPTION CAUGHT BY FLUTTER TEST FRAMEWORK ╞════════════════════════════════════════════════════
| The following TestFailure was thrown running a test:
| Expected: a Finder that:
| Actual: means none were found but one was expected
| Which: exactly one matching candidate
|
| When the exception was thrown, this was the stack:
| #0      check.<anonymous closure> (package:checks/src/checks.dart:85:9)
| #1      _TestContext.expect (package:checks/src/checks.dart:708:12)
| #2      LegacyMatcher.legacyMatcher (package:legacy_checks/src/matcher_compat.dart:27:13)
| #3      FinderBaseChecks.findsOne (package:flutter_checks/src/flutter_checks.dart:192:5)
| #4      main.<anonymous closure>.<anonymous closure> (file:///Volumes/Work/s/w/ir/x/t/flutter_customer_testing.zulip.KWJ4Y0/tests/test/widgets/profile_test.dart:174:46)
| <asynchronous suspension>
| #5      testWidgets.<anonymous closure>.<anonymous closure> (package:flutter_test/src/widget_tester.dart:192:15)
| <asynchronous suspension>
| #6      TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:1059:5)
| <asynchronous suspension>
| <asynchronous suspension>
| (elided one frame from package:stack_trace)
|
| The test description was:
|   various ages

@dkwingsmt dkwingsmt self-requested a review November 12, 2025 19:11
@Guldem Guldem requested a review from victorsanni November 18, 2025 09:54
Copy link
Contributor

@victorsanni victorsanni left a comment

Choose a reason for hiding this comment

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

Thanks for the comprehensive testing!

Copy link
Contributor

@dkwingsmt dkwingsmt left a comment

Choose a reason for hiding this comment

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

LGTM. Thank you!

@dkwingsmt dkwingsmt added the autosubmit Merge PR when tree becomes green via auto submit App label Dec 17, 2025
@auto-submit auto-submit bot added this pull request to the merge queue Dec 17, 2025
Merged via the queue into flutter:master with commit 1b2baab Dec 17, 2025
71 checks passed
@flutter-dashboard flutter-dashboard bot removed the autosubmit Merge PR when tree becomes green via auto submit App label Dec 17, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Dec 17, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Dec 17, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Dec 18, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Dec 18, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Dec 18, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Dec 19, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Dec 19, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Dec 19, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Dec 19, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Dec 19, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Dec 20, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Dec 20, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Dec 21, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Dec 21, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Dec 21, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Dec 22, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Dec 22, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Dec 22, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Dec 23, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Dec 23, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Dec 23, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Dec 23, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Dec 23, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Dec 23, 2025
stuartmorgan-g pushed a commit to flutter/packages that referenced this pull request Dec 23, 2025
Manual roll Flutter from d81baab to 57c3f8b (38 revisions)

Manual roll requested by stuartmorgan@google.com

flutter/flutter@d81baab...57c3f8b

2025-12-17 bruno.leroux@gmail.com Add FloatingActionButtonTheme
(flutter/flutter#179736)
2025-12-17 engine-flutter-autoroll@skia.org Roll Skia from b1569739f431
to fb576bd6827a (1 revision) (flutter/flutter#179989)
2025-12-17 bruno.leroux@gmail.com Update more comments related to theme
normalization (flutter/flutter#179682)
2025-12-17 engine-flutter-autoroll@skia.org Roll Skia from cce9b86bda7d
to b1569739f431 (1 revision) (flutter/flutter#179979)
2025-12-17 jobguldemeester@gmail.com Adds property passthrough for
CheckboxListTile, SwitchListTile and RadioListTile
(flutter/flutter#178098)
2025-12-17 engine-flutter-autoroll@skia.org Roll Dart SDK from
ca949b915846 to 3793f3d2d0c4 (2 revisions) (flutter/flutter#179973)
2025-12-17 engine-flutter-autoroll@skia.org Roll Skia from 318400199beb
to cce9b86bda7d (1 revision) (flutter/flutter#179976)
2025-12-17 ahmedsameha1@gmail.com Make sure that a
CupertinoTextFormFieldRow doesn't crash in 0x0 envir…
(flutter/flutter#179932)
2025-12-17 ahmedsameha1@gmail.com Make sure that a CupertinoTabView
doesn't crash in 0x0 environment (flutter/flutter#179845)
2025-12-17 ahmedsameha1@gmail.com Make sure that a CupertinoTextField
doesn't crash in 0x0 environment (flutter/flutter#179865)
2025-12-17 ahmedsameha1@gmail.com Make sure that a CupertinoSwitch
doesn't crash in 0x0 environment (flutter/flutter#179748)
2025-12-17 116356835+AbdeMohlbi@users.noreply.github.com Update
`BuildContext` docs to make it easier to understand
(flutter/flutter#178616)
2025-12-17 41930132+hellohuanlin@users.noreply.github.com [ios][pv]
quick fix to enable and re-enable web view's gesture recognizer
(flutter/flutter#179908)
2025-12-17 biggs0125@gmail.com Deduplicate wasm dry run entries in
analytics. (flutter/flutter#179970)
2025-12-17 engine-flutter-autoroll@skia.org Roll Skia from 99899cbb415b
to 318400199beb (1 revision) (flutter/flutter#179969)
2025-12-17 engine-flutter-autoroll@skia.org Roll Skia from 2ac4a8709bc9
to 99899cbb415b (1 revision) (flutter/flutter#179968)
2025-12-17 engine-flutter-autoroll@skia.org Roll Dart SDK from
95a92bc705d3 to ca949b915846 (6 revisions) (flutter/flutter#179967)
2025-12-17 biggs0125@gmail.com Add package info to wasm dry run events.
(flutter/flutter#179826)
2025-12-17 matt.boetger@gmail.com Platform View Hide/Show Integration
test (flutter/flutter#179902)
2025-12-16 engine-flutter-autoroll@skia.org Roll Skia from 61162d72343f
to 2ac4a8709bc9 (14 revisions) (flutter/flutter#179961)
2025-12-16 engine-flutter-autoroll@skia.org Roll Fuchsia Linux SDK from
433KtmJvbMyaDMJvD... to fAoyBAT99XxwPE5hL... (flutter/flutter#179960)
2025-12-16 bkonyi@google.com [ Tool ] Fix update-packages not accounting
for path dependencies (flutter/flutter#179951)
2025-12-16 45459898+RamonFarizel@users.noreply.github.com ListTile fix
MinIntrinsicHeight calculation (flutter/flutter#179515)
2025-12-16 108678139+manu-sncf@users.noreply.github.com Fix pinned
header in NestedScrollView (flutter/flutter#179210)
2025-12-16 bruno.leroux@gmail.com Update some comments related to theme
normalization (flutter/flutter#179624)
2025-12-16 iliyazelenkog@gmail.com Add Cyrillic keyboard layout support
for flutter_tools terminal commands (flutter/flutter#177855)
2025-12-16 lauren@selfisekai.rocks Minor fixes for libstdc++ 15
(flutter/flutter#178601)
2025-12-16 34465683+rkishan516@users.noreply.github.com Feat: Add top
gap for cupertino sheet (flutter/flutter#171348)
2025-12-16 116356835+AbdeMohlbi@users.noreply.github.com Align
`Build.API_LEVELS` usage in `FlutterImageDecoder.java‎` with existing
usage (flutter/flutter#179868)
2025-12-16 41930132+hellohuanlin@users.noreply.github.com Revert
"[ios][pv] accept/reject gesture based on hitTest (with new wi…
(flutter/flutter#179895)
2025-12-16 codefu@google.com fix: line endings for
flutter/dart/flutter-dev (flutter/flutter#179912)
2025-12-16 22373191+Hari-07@users.noreply.github.com Platform view blur
clipping - Rounded Rect (iOS) (flutter/flutter#177551)
2025-12-16 engine-flutter-autoroll@skia.org Roll Dart SDK from
20d114f951db to 95a92bc705d3 (1 revision) (flutter/flutter#179909)
2025-12-16 34871572+gmackall@users.noreply.github.com [Reland]
Unmodified android sdk bundle (flutter/flutter#179920)
2025-12-16 engine-flutter-autoroll@skia.org Roll Skia from 6903a4e65c3f
to 61162d72343f (2 revisions) (flutter/flutter#179915)
2025-12-16 engine-flutter-autoroll@skia.org Roll Packages from
2cd921c to 57725eb (1 revision) (flutter/flutter#179942)
2025-12-16 45490440+shindonghwi@users.noreply.github.com Filter out
FrameEvents/updateAcquireFence log spam from adb logcat
(flutter/flutter#179884)
2025-12-16 30870216+gaaclarke@users.noreply.github.com `flutter
update-packages --force-upgrade --update-hashes`
(flutter/flutter#179950)

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.
...
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

f: material design flutter/packages/flutter/material repository. framework flutter/packages/flutter repository. See also f: labels.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Allow SwitchListTile, CheckboxListTile and RadioListTile to also be able to change horizontalTitleGap, minVerticalPadding, minLeadingWidth

3 participants