Skip to content

Conversation

@yiiim
Copy link
Member

@yiiim yiiim commented Jan 18, 2025

Fixes: #159787

We should not refer to RenderSliverMultiBoxAdaptor. RenderSliverMainAxisGroup is more like RenderViewport because their children are both Slivers.

If you had to change anything in the flutter/tests repo, include a link to the migration guide as per the breaking change policy.

Pre-launch Checklist

If you need help, consider asking for advice on the #hackers-new channel on Discord.

@github-actions github-actions bot added framework flutter/packages/flutter repository. See also f: labels. f: scrolling Viewports, list views, slivers, etc. labels Jan 18, 2025
@yiiim yiiim requested a review from Piinks January 18, 2025 06:39
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.

Thanks for your patience, can you add a test that explicitly calls localToGlobal to verify the bug is fixed as reported? Thank you!

Comment on lines -143 to -148
const Rect.fromLTRB(0.0, 0.0, 300.0, 300.0),
const Rect.fromLTRB(0.0, 300.0, 300.0, 600.0),
);
expect(find.text('Group 1 Tile 0'), findsOneWidget);
expect(
tester.getRect(find.text('Group 1 Tile 0')),
const Rect.fromLTRB(0.0, 400.0, 300.0, 600.0),
Copy link
Contributor

Choose a reason for hiding this comment

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

Oh wow, so these tests were inaccurate.

@yiiim yiiim force-pushed the sliver_group_reverse branch 2 times, most recently from 243191e to ae76df2 Compare February 6, 2025 12:15
@yiiim yiiim force-pushed the sliver_group_reverse branch from ae76df2 to 49cafe0 Compare February 6, 2025 12:16
@yiiim
Copy link
Member Author

yiiim commented Feb 6, 2025

Sorry for the delay due to the Chinese New Year holiday. The test has been added.

@yiiim yiiim requested a review from Piinks February 6, 2025 12:20
@Piinks
Copy link
Contributor

Piinks commented Feb 11, 2025

Sorry for the delay due to the Chinese New Year holiday. The test has been added.

No trouble at all! Happy belated new year! :)

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! Thank you for working to resolve this!

);

// Update the children's paintOffset based on the direction again, which
// must be done after obtaining the `paintExtent`.
Copy link
Contributor

Choose a reason for hiding this comment

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

Ah I see! Well done! This is what tripped me up. The paintExtent here is like the viewport extent for normal sliver layout. Since we are laying out slivers inside of slivers, the paint extent is what we need to factor in. 💯

@Piinks Piinks added the autosubmit Merge PR when tree becomes green via auto submit App label Feb 14, 2025
@auto-submit auto-submit bot added this pull request to the merge queue Feb 14, 2025
Merged via the queue into flutter:master with commit a430952 Feb 14, 2025
77 checks passed
@flutter-dashboard flutter-dashboard bot removed the autosubmit Merge PR when tree becomes green via auto submit App label Feb 14, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Feb 14, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Feb 15, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Feb 15, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Feb 16, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Feb 16, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Feb 17, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Feb 17, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Feb 17, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Feb 18, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Feb 18, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Feb 18, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Feb 19, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Feb 19, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Feb 19, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Feb 20, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Feb 20, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Feb 20, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Feb 20, 2025
auto-submit bot pushed a commit to flutter/packages that referenced this pull request Feb 20, 2025
Roll Flutter from e8f34a9 to 39b4951 (95 revisions)

flutter/flutter@e8f34a9...39b4951

2025-02-18 [email protected] Marks Windows_arm64 plugin_test_windows to be flaky (flutter/flutter#163123)
2025-02-18 [email protected] [android] use macro definition to shrink repetitive JNI code size. (flutter/flutter#163395)
2025-02-18 [email protected] Roll pub packages (flutter/flutter#163474)
2025-02-18 [email protected] [web] Cleanup everything HTML from the engine (outside html/ folder) (flutter/flutter#162840)
2025-02-18 [email protected] [Impeller] add support for rational bezier conics to Path (flutter/flutter#163282)
2025-02-18 [email protected] Change `cardTheme`, `dialogTheme`, and `tabBarTheme` type to `xxxThemeData` (flutter/flutter#157292)
2025-02-18 [email protected] Update integration test and benchmark Android .gitignore files to match the current app template (flutter/flutter#163276)
2025-02-18 [email protected] [Impeller] Don't create a redundant typography context. (flutter/flutter#163513)
2025-02-18 [email protected] Roll Dart SDK from fcef25f18e4d to 023ac80cef14 (1 revision) (flutter/flutter#163110)
2025-02-18 [email protected] update module_host_with_custom_build_v2_embedding to target android 35 and to use the latest gradle and agp versions (flutter/flutter#163542)
2025-02-18 [email protected] [Impeller] when binding to READ_FRAMEBUFFER, treat multisampled textures as single sampled. (flutter/flutter#163345)
2025-02-18 [email protected] Add missing properties to _ArcPaintPredicate. (flutter/flutter#162572)
2025-02-18 [email protected] Roll Packages from 8542af3 to cb4fb13 (4 revisions) (flutter/flutter#163544)
2025-02-18 [email protected] Remove bringup for android_display_cutout (flutter/flutter#163312)
2025-02-18 [email protected] Create VersionUtils class and unit tests and extract logic out of flutter.groovy (flutter/flutter#163166)
2025-02-18 [email protected] Invalidate `pod install` output if `.flutter-plugins-dependencies` content changes. (flutter/flutter#163275)
2025-02-18 [email protected] Replace hard coded numbers with mouse button defines (flutter/flutter#163503)
2025-02-18 [email protected] Roll Skia from 9147a9654043 to 6da10829d017 (1 revision) (flutter/flutter#163531)
2025-02-18 [email protected] Roll Skia from 92aaa4e20ea7 to 9147a9654043 (2 revisions) (flutter/flutter#163512)
2025-02-17 [email protected] Roll Skia from 71a160edc9d9 to 92aaa4e20ea7 (1 revision) (flutter/flutter#163488)
2025-02-17 [email protected] Roll Packages from 625023a to 8542af3 (21 revisions) (flutter/flutter#163484)
2025-02-17 [email protected] Roll Skia from 7e3129d5db11 to 71a160edc9d9 (1 revision) (flutter/flutter#163459)
2025-02-17 [email protected] Roll Skia from 40ce5ef20d22 to 7e3129d5db11 (1 revision) (flutter/flutter#163451)
2025-02-16 [email protected] Roll Skia from bb166c85957b to 40ce5ef20d22 (1 revision) (flutter/flutter#163403)
2025-02-15 [email protected] Roll Skia from ff94581f1f8a to bb166c85957b (1 revision) (flutter/flutter#163381)
2025-02-15 [email protected] Move DWDS initialization into the onLoadEndCallback for the DDC library bundle format (flutter/flutter#163338)
2025-02-14 [email protected] [canvaskit] Handle MakeGrContext returning null (flutter/flutter#163332)
2025-02-14 [email protected] Roll Skia from 13a3b6f34ee8 to ff94581f1f8a (1 revision) (flutter/flutter#163347)
2025-02-14 [email protected] Fix failing chrome_dev_mode tests (flutter/flutter#163346)
2025-02-14 [email protected] Adds all semantics roles (flutter/flutter#163075)
2025-02-14 [email protected] Roll Skia from 20924303cc25 to 13a3b6f34ee8 (1 revision) (flutter/flutter#163336)
2025-02-14 [email protected] [ Widget Preview ] Add experimental support for web-based widget preview environment (flutter/flutter#163154)
2025-02-14 [email protected] [Impeller] don't use glFramebufferBlit for onscreen restore. (flutter/flutter#163327)
2025-02-14 [email protected] Align web terminal messages with the VM (flutter/flutter#163268)
2025-02-14 [email protected] Manually roll customer_testing to enable rfw tests (flutter/flutter#163030)
2025-02-14 [email protected] Refactor SliverMainAxisGroup for reverse mode. (flutter/flutter#161849)
2025-02-14 [email protected] Tweaked TextContents math to avoid floating point errors (flutter/flutter#162480)
2025-02-14 [email protected] [release] Update cherry-pick CHANGELOG requirements (flutter/flutter#163318)
2025-02-14 [email protected] Roll Skia from 85722a1db585 to 20924303cc25 (2 revisions) (flutter/flutter#163293)
2025-02-14 [email protected] Roll Skia from 5a38d23ee247 to 85722a1db585 (1 revision) (flutter/flutter#163286)
2025-02-14 [email protected] Add `.flutter-plugins-dependencies` to `FlutterBuildSystem`; update logic, add tests. (flutter/flutter#163278)
2025-02-14 [email protected] Add table related semantics role (flutter/flutter#162339)
2025-02-14 [email protected] [Impeller] Call glDebugMessageControlKHR only if the KHR_debug extension is available (flutter/flutter#163273)
2025-02-14 [email protected] Roll Skia from 748415976ad1 to 5a38d23ee247 (3 revisions) (flutter/flutter#163271)
2025-02-14 [email protected] [canvaskit] Use `transferToImageBitmap` instead of `createImageBitmap` (flutter/flutter#163175)
2025-02-14 [email protected] [skwasm] Use `transferToImageBitmap` instead of `createImageBitmap` (flutter/flutter#163251)
...
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request May 20, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request May 20, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request May 21, 2025
androidseb pushed a commit to androidseb/packages that referenced this pull request Jun 8, 2025
Roll Flutter from e8f34a9 to 39b4951 (95 revisions)

flutter/flutter@e8f34a9...39b4951

2025-02-18 [email protected] Marks Windows_arm64 plugin_test_windows to be flaky (flutter/flutter#163123)
2025-02-18 [email protected] [android] use macro definition to shrink repetitive JNI code size. (flutter/flutter#163395)
2025-02-18 [email protected] Roll pub packages (flutter/flutter#163474)
2025-02-18 [email protected] [web] Cleanup everything HTML from the engine (outside html/ folder) (flutter/flutter#162840)
2025-02-18 [email protected] [Impeller] add support for rational bezier conics to Path (flutter/flutter#163282)
2025-02-18 [email protected] Change `cardTheme`, `dialogTheme`, and `tabBarTheme` type to `xxxThemeData` (flutter/flutter#157292)
2025-02-18 [email protected] Update integration test and benchmark Android .gitignore files to match the current app template (flutter/flutter#163276)
2025-02-18 [email protected] [Impeller] Don't create a redundant typography context. (flutter/flutter#163513)
2025-02-18 [email protected] Roll Dart SDK from fcef25f18e4d to 023ac80cef14 (1 revision) (flutter/flutter#163110)
2025-02-18 [email protected] update module_host_with_custom_build_v2_embedding to target android 35 and to use the latest gradle and agp versions (flutter/flutter#163542)
2025-02-18 [email protected] [Impeller] when binding to READ_FRAMEBUFFER, treat multisampled textures as single sampled. (flutter/flutter#163345)
2025-02-18 [email protected] Add missing properties to _ArcPaintPredicate. (flutter/flutter#162572)
2025-02-18 [email protected] Roll Packages from 8542af3 to cb4fb13 (4 revisions) (flutter/flutter#163544)
2025-02-18 [email protected] Remove bringup for android_display_cutout (flutter/flutter#163312)
2025-02-18 [email protected] Create VersionUtils class and unit tests and extract logic out of flutter.groovy (flutter/flutter#163166)
2025-02-18 [email protected] Invalidate `pod install` output if `.flutter-plugins-dependencies` content changes. (flutter/flutter#163275)
2025-02-18 [email protected] Replace hard coded numbers with mouse button defines (flutter/flutter#163503)
2025-02-18 [email protected] Roll Skia from 9147a9654043 to 6da10829d017 (1 revision) (flutter/flutter#163531)
2025-02-18 [email protected] Roll Skia from 92aaa4e20ea7 to 9147a9654043 (2 revisions) (flutter/flutter#163512)
2025-02-17 [email protected] Roll Skia from 71a160edc9d9 to 92aaa4e20ea7 (1 revision) (flutter/flutter#163488)
2025-02-17 [email protected] Roll Packages from 625023a to 8542af3 (21 revisions) (flutter/flutter#163484)
2025-02-17 [email protected] Roll Skia from 7e3129d5db11 to 71a160edc9d9 (1 revision) (flutter/flutter#163459)
2025-02-17 [email protected] Roll Skia from 40ce5ef20d22 to 7e3129d5db11 (1 revision) (flutter/flutter#163451)
2025-02-16 [email protected] Roll Skia from bb166c85957b to 40ce5ef20d22 (1 revision) (flutter/flutter#163403)
2025-02-15 [email protected] Roll Skia from ff94581f1f8a to bb166c85957b (1 revision) (flutter/flutter#163381)
2025-02-15 [email protected] Move DWDS initialization into the onLoadEndCallback for the DDC library bundle format (flutter/flutter#163338)
2025-02-14 [email protected] [canvaskit] Handle MakeGrContext returning null (flutter/flutter#163332)
2025-02-14 [email protected] Roll Skia from 13a3b6f34ee8 to ff94581f1f8a (1 revision) (flutter/flutter#163347)
2025-02-14 [email protected] Fix failing chrome_dev_mode tests (flutter/flutter#163346)
2025-02-14 [email protected] Adds all semantics roles (flutter/flutter#163075)
2025-02-14 [email protected] Roll Skia from 20924303cc25 to 13a3b6f34ee8 (1 revision) (flutter/flutter#163336)
2025-02-14 [email protected] [ Widget Preview ] Add experimental support for web-based widget preview environment (flutter/flutter#163154)
2025-02-14 [email protected] [Impeller] don't use glFramebufferBlit for onscreen restore. (flutter/flutter#163327)
2025-02-14 [email protected] Align web terminal messages with the VM (flutter/flutter#163268)
2025-02-14 [email protected] Manually roll customer_testing to enable rfw tests (flutter/flutter#163030)
2025-02-14 [email protected] Refactor SliverMainAxisGroup for reverse mode. (flutter/flutter#161849)
2025-02-14 [email protected] Tweaked TextContents math to avoid floating point errors (flutter/flutter#162480)
2025-02-14 [email protected] [release] Update cherry-pick CHANGELOG requirements (flutter/flutter#163318)
2025-02-14 [email protected] Roll Skia from 85722a1db585 to 20924303cc25 (2 revisions) (flutter/flutter#163293)
2025-02-14 [email protected] Roll Skia from 5a38d23ee247 to 85722a1db585 (1 revision) (flutter/flutter#163286)
2025-02-14 [email protected] Add `.flutter-plugins-dependencies` to `FlutterBuildSystem`; update logic, add tests. (flutter/flutter#163278)
2025-02-14 [email protected] Add table related semantics role (flutter/flutter#162339)
2025-02-14 [email protected] [Impeller] Call glDebugMessageControlKHR only if the KHR_debug extension is available (flutter/flutter#163273)
2025-02-14 [email protected] Roll Skia from 748415976ad1 to 5a38d23ee247 (3 revisions) (flutter/flutter#163271)
2025-02-14 [email protected] [canvaskit] Use `transferToImageBitmap` instead of `createImageBitmap` (flutter/flutter#163175)
2025-02-14 [email protected] [skwasm] Use `transferToImageBitmap` instead of `createImageBitmap` (flutter/flutter#163251)
...
FMorschel pushed a commit to FMorschel/packages that referenced this pull request Jun 9, 2025
Roll Flutter from e8f34a9 to 39b4951 (95 revisions)

flutter/flutter@e8f34a9...39b4951

2025-02-18 [email protected] Marks Windows_arm64 plugin_test_windows to be flaky (flutter/flutter#163123)
2025-02-18 [email protected] [android] use macro definition to shrink repetitive JNI code size. (flutter/flutter#163395)
2025-02-18 [email protected] Roll pub packages (flutter/flutter#163474)
2025-02-18 [email protected] [web] Cleanup everything HTML from the engine (outside html/ folder) (flutter/flutter#162840)
2025-02-18 [email protected] [Impeller] add support for rational bezier conics to Path (flutter/flutter#163282)
2025-02-18 [email protected] Change `cardTheme`, `dialogTheme`, and `tabBarTheme` type to `xxxThemeData` (flutter/flutter#157292)
2025-02-18 [email protected] Update integration test and benchmark Android .gitignore files to match the current app template (flutter/flutter#163276)
2025-02-18 [email protected] [Impeller] Don't create a redundant typography context. (flutter/flutter#163513)
2025-02-18 [email protected] Roll Dart SDK from fcef25f18e4d to 023ac80cef14 (1 revision) (flutter/flutter#163110)
2025-02-18 [email protected] update module_host_with_custom_build_v2_embedding to target android 35 and to use the latest gradle and agp versions (flutter/flutter#163542)
2025-02-18 [email protected] [Impeller] when binding to READ_FRAMEBUFFER, treat multisampled textures as single sampled. (flutter/flutter#163345)
2025-02-18 [email protected] Add missing properties to _ArcPaintPredicate. (flutter/flutter#162572)
2025-02-18 [email protected] Roll Packages from 8542af3 to cb4fb13 (4 revisions) (flutter/flutter#163544)
2025-02-18 [email protected] Remove bringup for android_display_cutout (flutter/flutter#163312)
2025-02-18 [email protected] Create VersionUtils class and unit tests and extract logic out of flutter.groovy (flutter/flutter#163166)
2025-02-18 [email protected] Invalidate `pod install` output if `.flutter-plugins-dependencies` content changes. (flutter/flutter#163275)
2025-02-18 [email protected] Replace hard coded numbers with mouse button defines (flutter/flutter#163503)
2025-02-18 [email protected] Roll Skia from 9147a9654043 to 6da10829d017 (1 revision) (flutter/flutter#163531)
2025-02-18 [email protected] Roll Skia from 92aaa4e20ea7 to 9147a9654043 (2 revisions) (flutter/flutter#163512)
2025-02-17 [email protected] Roll Skia from 71a160edc9d9 to 92aaa4e20ea7 (1 revision) (flutter/flutter#163488)
2025-02-17 [email protected] Roll Packages from 625023a to 8542af3 (21 revisions) (flutter/flutter#163484)
2025-02-17 [email protected] Roll Skia from 7e3129d5db11 to 71a160edc9d9 (1 revision) (flutter/flutter#163459)
2025-02-17 [email protected] Roll Skia from 40ce5ef20d22 to 7e3129d5db11 (1 revision) (flutter/flutter#163451)
2025-02-16 [email protected] Roll Skia from bb166c85957b to 40ce5ef20d22 (1 revision) (flutter/flutter#163403)
2025-02-15 [email protected] Roll Skia from ff94581f1f8a to bb166c85957b (1 revision) (flutter/flutter#163381)
2025-02-15 [email protected] Move DWDS initialization into the onLoadEndCallback for the DDC library bundle format (flutter/flutter#163338)
2025-02-14 [email protected] [canvaskit] Handle MakeGrContext returning null (flutter/flutter#163332)
2025-02-14 [email protected] Roll Skia from 13a3b6f34ee8 to ff94581f1f8a (1 revision) (flutter/flutter#163347)
2025-02-14 [email protected] Fix failing chrome_dev_mode tests (flutter/flutter#163346)
2025-02-14 [email protected] Adds all semantics roles (flutter/flutter#163075)
2025-02-14 [email protected] Roll Skia from 20924303cc25 to 13a3b6f34ee8 (1 revision) (flutter/flutter#163336)
2025-02-14 [email protected] [ Widget Preview ] Add experimental support for web-based widget preview environment (flutter/flutter#163154)
2025-02-14 [email protected] [Impeller] don't use glFramebufferBlit for onscreen restore. (flutter/flutter#163327)
2025-02-14 [email protected] Align web terminal messages with the VM (flutter/flutter#163268)
2025-02-14 [email protected] Manually roll customer_testing to enable rfw tests (flutter/flutter#163030)
2025-02-14 [email protected] Refactor SliverMainAxisGroup for reverse mode. (flutter/flutter#161849)
2025-02-14 [email protected] Tweaked TextContents math to avoid floating point errors (flutter/flutter#162480)
2025-02-14 [email protected] [release] Update cherry-pick CHANGELOG requirements (flutter/flutter#163318)
2025-02-14 [email protected] Roll Skia from 85722a1db585 to 20924303cc25 (2 revisions) (flutter/flutter#163293)
2025-02-14 [email protected] Roll Skia from 5a38d23ee247 to 85722a1db585 (1 revision) (flutter/flutter#163286)
2025-02-14 [email protected] Add `.flutter-plugins-dependencies` to `FlutterBuildSystem`; update logic, add tests. (flutter/flutter#163278)
2025-02-14 [email protected] Add table related semantics role (flutter/flutter#162339)
2025-02-14 [email protected] [Impeller] Call glDebugMessageControlKHR only if the KHR_debug extension is available (flutter/flutter#163273)
2025-02-14 [email protected] Roll Skia from 748415976ad1 to 5a38d23ee247 (3 revisions) (flutter/flutter#163271)
2025-02-14 [email protected] [canvaskit] Use `transferToImageBitmap` instead of `createImageBitmap` (flutter/flutter#163175)
2025-02-14 [email protected] [skwasm] Use `transferToImageBitmap` instead of `createImageBitmap` (flutter/flutter#163251)
...
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.

In reverse mode, the localToGlobal method of SliverMainAxisGroup's children returned incorrect positions.

2 participants