Skip to content

Conversation

@emakar
Copy link
Contributor

@emakar emakar commented Jun 25, 2025

Fixes #169712

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].

@flutter-dashboard
Copy link

It looks like this pull request may not have tests. Please make sure to add tests or get an explicit test exemption before merging.

If you are not sure if you need tests, consider this rule of thumb: the purpose of a test is to make sure someone doesn't accidentally revert the fix. Ask yourself, is there anything in your PR that you feel it is important we not accidentally revert back to how it was before your fix?

Reviewers: Read the Tree Hygiene page and make sure this patch meets those guidelines before LGTMing.If you believe this PR qualifies for a test exemption, contact "@test-exemption-reviewer" in the #hackers channel in Discord (don't just cc them here, they won't see it!). The test exemption team is a small volunteer group, so all reviewers should feel empowered to ask for tests, without delegating that responsibility entirely to the test exemption group.

@github-actions github-actions bot added framework flutter/packages/flutter repository. See also f: labels. f: scrolling Viewports, list views, slivers, etc. labels Jun 25, 2025
@emakar emakar force-pushed the fix_draggable_sheet_bounce branch 2 times, most recently from 7f12bed to afc48c8 Compare June 25, 2025 14:56
@emakar
Copy link
Contributor Author

emakar commented Jun 26, 2025

added test as well

@justinmc justinmc requested a review from MitchellGoodwin July 8, 2025 22:25
@justinmc
Copy link
Contributor

justinmc commented Jul 8, 2025

@MitchellGoodwin From triage, tagged you for review, but let me know if you're not the right person.

@emakar
Copy link
Contributor Author

emakar commented Jul 25, 2025

@MitchellGoodwin Hi, could please take a look?

Copy link
Contributor

@MitchellGoodwin MitchellGoodwin left a comment

Choose a reason for hiding this comment

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

Apologies for the late review. I'm new to this area of the code, so it takes a bit to look at. You may need to walk me through some things if I am misunderstanding something.

That said, my understanding is that this weird behavior is caused by a list of widgets without a uniform size and the bouncing scroll physics. It looks like the calculations of the pixel height of the child is getting thrown off as the constraints dynamically change, which gets funky when this widget and the bouncing scroll physics are both trying to do weird things on overscroll. I'm not sure if this is enough of a fix for the underlying issue?

MitchellGoodwin

This comment was marked as duplicate.

@emakar emakar marked this pull request as draft July 29, 2025 21:09
@emakar emakar force-pushed the fix_draggable_sheet_bounce branch from afc48c8 to b8441cb Compare July 29, 2025 21:27
@emakar emakar marked this pull request as ready for review July 29, 2025 22:13
@MitchellGoodwin MitchellGoodwin self-requested a review August 11, 2025 22:13
@emakar
Copy link
Contributor Author

emakar commented Sep 30, 2025

@MitchellGoodwin gentle ping

Copy link
Contributor

@MitchellGoodwin MitchellGoodwin 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 for taking the time to make this fix. I'll ask around for a second review.

// If already snapped - keep this as target size
if (nextSize == position) {
return nextSize;
}
Copy link
Contributor

Choose a reason for hiding this comment

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

👍 Nice and simple.

@justinmc justinmc requested a review from Piinks October 7, 2025 22:04
Copy link
Contributor

@Piinks Piinks left a comment

Choose a reason for hiding this comment

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

LGTM thanks!

@Piinks
Copy link
Contributor

Piinks commented Oct 21, 2025

Rebasing since the bot will tell us to do that anyways before merging.

@Piinks Piinks force-pushed the fix_draggable_sheet_bounce branch from c209fcf to 0085671 Compare October 21, 2025 22:39
@Piinks Piinks added the autosubmit Merge PR when tree becomes green via auto submit App label Oct 21, 2025
@auto-submit auto-submit bot added this pull request to the merge queue Oct 21, 2025
Merged via the queue into flutter:master with commit 77ac8db Oct 22, 2025
77 checks passed
@flutter-dashboard flutter-dashboard bot removed the autosubmit Merge PR when tree becomes green via auto submit App label Oct 22, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Oct 22, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Oct 22, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Oct 22, 2025
auto-submit bot pushed a commit to flutter/packages that referenced this pull request Oct 22, 2025
Roll Flutter from 2d34167 to 75004a6 (39 revisions)

flutter/flutter@2d34167...75004a6

2025-10-22 jason-simmons@users.noreply.github.com [Impeller] Add the paint color to the key of the text shadow cache (flutter/flutter#177140)
2025-10-22 engine-flutter-autoroll@skia.org Roll Skia from 96e75ca8e24b to 928b5cf727c1 (2 revisions) (flutter/flutter#177387)
2025-10-22 jason-simmons@users.noreply.github.com Roll reclient to version 185 (flutter/flutter#177293)
2025-10-22 engine-flutter-autoroll@skia.org Roll Skia from b157f6b95f95 to 96e75ca8e24b (4 revisions) (flutter/flutter#177366)
2025-10-22 bruno.leroux@gmail.com Fix InputDatePickerFormField does not inherit local InputDecorationTheme (flutter/flutter#177090)
2025-10-22 engine-flutter-autoroll@skia.org Roll Skia from 2c6162c977db to b157f6b95f95 (2 revisions) (flutter/flutter#177362)
2025-10-22 engine-flutter-autoroll@skia.org Roll Skia from cadf8e7e6fca to 2c6162c977db (4 revisions) (flutter/flutter#177359)
2025-10-22 katelovett@google.com Cleanup after -news_toolkit, +google_fonts, and some leftover `team-go_router` (flutter/flutter#176841)
2025-10-21 eugene.makar@yandex.ru don't break sheet's snap from physics (flutter/flutter#171157)
2025-10-21 engine-flutter-autoroll@skia.org Roll Dart SDK from 913c2ae1b367 to c23010c4f9e6 (8 revisions) (flutter/flutter#177348)
2025-10-21 116356835+AbdeMohlbi@users.noreply.github.com Fix typo in comment about screen availibility  (flutter/flutter#177168)
2025-10-21 kazbek.sultanov.doc@gmail.com Fix(AnimatedScrollView): exclude outgoing items in removeAllItems (flutter/flutter#176452)
2025-10-21 jason-simmons@users.noreply.github.com Enable deprecated_member_use_from_same_package for all packages containing tests of Dart fixes defined within the package (flutter/flutter#177341)
2025-10-21 engine-flutter-autoroll@skia.org Roll Skia from 19bff385f7e8 to cadf8e7e6fca (3 revisions) (flutter/flutter#177331)
2025-10-21 jesswon@google.com Revert "[Android 16] Update `android_engine_vulkan_tests` to Test Against SDK 36 Emulator" (flutter/flutter#177292)
2025-10-21 108678139+manu-sncf@users.noreply.github.com Fix SliverMainAxisGroup.cacheOrigin (flutter/flutter#175760)
2025-10-21 engine-flutter-autoroll@skia.org Roll Skia from 75c756e029c9 to 19bff385f7e8 (3 revisions) (flutter/flutter#177316)
2025-10-21 59215665+davidhicks980@users.noreply.github.com Fix typo in overlay.dart documentation comment (flutter/flutter#176612)
2025-10-21 bkonyi@google.com [ Tool ] Output DTD URI for Flutter web applications (flutter/flutter#177310)
2025-10-21 engine-flutter-autoroll@skia.org Roll Skia from 982988b472a4 to 75c756e029c9 (1 revision) (flutter/flutter#177305)
2025-10-21 engine-flutter-autoroll@skia.org Roll Skia from 42ff13a91c80 to 982988b472a4 (8 revisions) (flutter/flutter#177300)
2025-10-21 bruno.leroux@gmail.com Fix DateRangePickerDialog does not inherit local InputDecorationTheme (flutter/flutter#177086)
2025-10-21 fishythefish@users.noreply.github.com Remove references to dart:_js_annotations (flutter/flutter#176698)
2025-10-20 31859944+LongCatIsLooong@users.noreply.github.com Make `FlutterSceneLifeCycleProvider.sceneLifeCycleDelegate` readonly (flutter/flutter#177240)
2025-10-20 ahmedsameha1@gmail.com Make sure that a CupertinoDesktopTextSelectionToolbar doesn't crash i… (flutter/flutter#173964)
2025-10-20 ahmedsameha1@gmail.com Make sure that a BottomSheet doesn't crash in 0x0 environment (flutter/flutter#172229)
2025-10-20 jason-simmons@users.noreply.github.com Move the Fuchsia SDK to //third_party/fuchsia-sdk (flutter/flutter#177118)
2025-10-20 engine-flutter-autoroll@skia.org Roll Skia from 641994569415 to 42ff13a91c80 (8 revisions) (flutter/flutter#177283)
2025-10-20 ahmedsameha1@gmail.com Make sure that a NavigationDrawer doesn't crash in 0x0 environment (flutter/flutter#176951)
2025-10-20 sokolovskyi.konstantin@gmail.com Fix ink features painting in TabBar. (flutter/flutter#177155)
2025-10-20 ahmedsameha1@gmail.com Make sure that SimpleDialog and SimpleDialogOption do not crash in 0x0 environment (flutter/flutter#174229)
2025-10-20 sokolovskyi.konstantin@gmail.com Fix ink features painting in YearPicker. (flutter/flutter#177014)
2025-10-20 116356835+AbdeMohlbi@users.noreply.github.com Update `image.error_builder.0.dart` to replace the emoji with some text  (flutter/flutter#176886)
2025-10-20 engine-flutter-autoroll@skia.org Roll Skia from ed4294faecde to 641994569415 (4 revisions) (flutter/flutter#177264)
2025-10-20 116356835+AbdeMohlbi@users.noreply.github.com Remove redundant name field form `TargetPlatform` and `XCDeviceEventInterface` enums (flutter/flutter#176890)
2025-10-20 55750689+AthulJoseph27@users.noreply.github.com Added support to pass in texture type while creating textures. (flutter/flutter#175376)
2025-10-20 engine-flutter-autoroll@skia.org Roll Packages from 3747006 to d113bbc (6 revisions) (flutter/flutter#177270)
2025-10-20 jason-simmons@users.noreply.github.com Roll Dart SDK from 2cd2106f2cef to 913c2ae1b367 (2 revisions) (flutter/flutter#177258)
2025-10-20 30870216+gaaclarke@users.noreply.github.com Added link to ClipRect from ImageFilter in the docstring (flutter/flutter#177196)

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 louisehsu@google.com,stuartmorgan@google.com on the revert to ensure that a human
is aware of the problem.

...
reidbaker pushed a commit to AbdeMohlbi/flutter that referenced this pull request Dec 10, 2025
Fixes flutter#169712

## Pre-launch Checklist

- [x] I read the [Contributor Guide] and followed the process outlined
there for submitting PRs.
- [x] I read the [Tree Hygiene] wiki page, which explains my
responsibilities.
- [x] I read and followed the [Flutter Style Guide], including [Features
we expect every widget to implement].
- [x] I signed the [CLA].
- [x] I listed at least one issue that this PR fixes in the description
above.
- [ ] I updated/added relevant documentation (doc comments with `///`).
- [x] I added new tests to check the change I am making, or this PR is
[test-exempt].
- [x] I followed the [breaking change policy] and added [Data Driven
Fixes] where supported.
- [x] All existing and new tests are passing.

If you need help, consider asking for advice on the #hackers-new channel
on [Discord].
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

f: scrolling Viewports, list views, slivers, etc. framework flutter/packages/flutter repository. See also f: labels.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

DraggableScrollableSheet with BouncingScrollPhysics, SliverList, and uneven child sizes behaves erratically

4 participants