Repository navigation
[material_ui] Fix dismissal near minimum extent when shouldCloseOnMinExtent - #12545
Conversation
There was a problem hiding this comment.
Code Review
This pull request updates the bottom sheet dismissal logic in bottom_sheet.dart and scaffold.dart to check if the difference between the current extent and the minimum extent is within precisionErrorTolerance, rather than using direct equality. It also adds unit tests to verify this behavior and a pending changelog entry. The review feedback suggests removing the .abs() call from the tolerance check to ensure the bottom sheet still closes if the extent is dragged or animated below the minimum extent.
|
Thanks for your contribution! Could you make sure the PR description includes the "Pre-launch Checklist" and all items are checked:)? |
|
Hi @QuncCccccc ! |
…uldCloseOnMinExtent Port of flutter/flutter#190810.
6913a2c to
45cd25b
Compare
QuncCccccc
left a comment
There was a problem hiding this comment.
LGTM. Thanks for your contribution:)
Thanks for the review! I found flutter/flutter#116982, which describes the same problem. Although it was closed by flutter/flutter#165557, I still encountered the issue after that fix: with snapping and shouldCloseOnMinExtent enabled, the sheet could snap to its minimum extent without closing. This PR fixes the remaining case. |
elliette
left a comment
There was a problem hiding this comment.
Thank you for linking the issue, LGTM!
flutter/packages@670b30e...0478162 2026-11-05 [email protected] [material_ui] Document RefreshIndicator mouse behavior on desktop and web (flutter/packages#13286) 2026-11-05 [email protected] [material_ui] Make SearchAnchor.bar respect SearchBarThemeData padding (flutter/packages#13360) 2026-11-04 [email protected] [pointer_interceptor] Use dart.library.js_interop in example export (flutter/packages#13558) 2026-11-04 [email protected] [in_app_purchase_storekit] Use purchase(confirmIn:) for StoreKit 2 purchases (flutter/packages#13410) 2026-11-04 [email protected] [material_ui] Fix dismissal near minimum extent when shouldCloseOnMinExtent (flutter/packages#12545) 2026-11-04 [email protected] [material_ui] Add Material 3 Expressive `ElevatedButton` (flutter/packages#13084) 2026-11-04 [email protected] [go_router] Stop inactive StatefulShellRoute branches from vetoing pops (flutter/packages#12972) 2026-11-04 [email protected] Manual roll Flutter (stable) from abaf9c5 to c197ca5 (14 revisions) (flutter/packages#13542) 2026-11-04 [email protected] [in_app_purchase] Convert example app to Swift (flutter/packages#13556) 2026-11-04 [email protected] Sync release-go_router-18.1.3 to main (flutter/packages#13559) 2026-11-04 [email protected] Sync release-material_ui-1.10.0 to main (flutter/packages#13546) 2026-11-04 [email protected] [camera_android_camerax] Add magic number guideline to `TESTING.md` (flutter/packages#13081) 2026-11-04 [email protected] Sync release-cupertino_ui-1.1.6 to main (flutter/packages#13547) 2026-11-04 [email protected] [file_selector] Convert unit tests to Kotlin (flutter/packages#13102) 2026-11-04 [email protected] Roll Flutter from 9347202 to 3623d2d (25 revisions) (flutter/packages#13555) 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
This PR ports flutter/flutter#190810 by @kirya355 from flutter/flutter to flutter/packages.
Fixes bottom sheet dismissal when a
DraggableScrollableNotificationextentis within floating-point precision of
minExtent, instead of requiring exactequality.
Updates both the modal
BottomSheetand standardScaffoldbottom sheethandlers. Adds regression tests for both paths using
extent: 0.20000000001and
minExtent: 0.2.This PR fix flutter/flutter#116982
Pre-Review Checklist
[shared_preferences]///).