这是indexloc提供的服务,不要输入任何密码
Skip to content

Fix: Hero animation for page transition #164469

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

Merged
merged 1 commit into from
Apr 2, 2025

Conversation

rkishan516
Copy link
Contributor

Fix: Hero animation for page transition
fixes: #163989

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.

@github-actions github-actions bot added framework flutter/packages/flutter repository. See also f: labels. f: material design flutter/packages/flutter/material repository. labels Mar 3, 2025
@rkishan516 rkishan516 force-pushed the page-transition-hero branch from 8e49e53 to b97c9a7 Compare March 31, 2025 01:21
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 including this fix.

expect(find.byKey(secondKey), isInCard);
expect(find.byKey(firstKey), findsNothing);
},
variant: const TargetPlatformVariant(<TargetPlatform>{
Copy link
Contributor

Choose a reason for hiding this comment

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

I tested locally for my own sanity, and adding these variants does cause the test to fail without the fix in this PR.

Copy link
Contributor

@QuncCccccc QuncCccccc left a comment

Choose a reason for hiding this comment

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

LGTM:)

TargetPlatform.android ||
TargetPlatform.fuchsia ||
TargetPlatform.windows ||
TargetPlatform.macOS ||
Copy link
Contributor

Choose a reason for hiding this comment

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

Should the default animation for macOS be CupertinoPageTransitionsBuilder?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

In previous version, it was same as others (when it was working), if we want to change it, I can change.

Copy link
Contributor

Choose a reason for hiding this comment

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

There seems to be some discrepancies on the default transitions.
My guess is that the expected default for macOS is correct in

/// Constructs an object that selects a transition based on the platform.
///
/// By default the list of builders is: [ZoomPageTransitionsBuilder]
/// for [TargetPlatform.android], and [CupertinoPageTransitionsBuilder] for
/// [TargetPlatform.iOS] and [TargetPlatform.macOS].
const PageTransitionsTheme({
Map<TargetPlatform, PageTransitionsBuilder> builders = _defaultBuilders,
}) : _builders = builders;
static const Map<TargetPlatform, PageTransitionsBuilder> _defaultBuilders =
<TargetPlatform, PageTransitionsBuilder>{
TargetPlatform.android: ZoomPageTransitionsBuilder(),
TargetPlatform.iOS: CupertinoPageTransitionsBuilder(),
TargetPlatform.macOS: CupertinoPageTransitionsBuilder(),
};

And that other defaults were set later focusing on iOS and missing out the macOS default.
@MitchellGoodwin Can you confirm what is the default transition for macOS? (I don't have a good knowledge of the Apple world 😄 )

Also for this fix, won't it be easier to fix the defaults by adding the missing platforms in PageTransitionsTheme._defaultBuilders? That way there will be one central place where default will be defined.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Yes, it can be updated in _defaultBuilder and that can fix this. Just to keep it safe I will also keep current version + _defaultBuilders.

Copy link
Contributor

Choose a reason for hiding this comment

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

Good catch on macOS. It does need to use the Cupertino transition on macOS. @rkishan516 could you have macOS set to CupertinoPageTransitionsBuilder here as well?

And I think the logic here is still necessary. The issue this is fixing is if the _defaultBuilders gets overwritten with a set of builders that does not include every platform.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Sure, let me do the change.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

I have pushed the change. Thanks for review @bleroux and @MitchellGoodwin.

@rkishan516 rkishan516 force-pushed the page-transition-hero branch 3 times, most recently from 2ea948d to 0112b54 Compare April 2, 2025 13:21
@rkishan516 rkishan516 force-pushed the page-transition-hero branch from 0112b54 to e79a290 Compare April 2, 2025 17:05
@MitchellGoodwin MitchellGoodwin added the autosubmit Merge PR when tree becomes green via auto submit App label Apr 2, 2025
@auto-submit auto-submit bot added this pull request to the merge queue Apr 2, 2025
Merged via the queue into flutter:master with commit 9a6ae31 Apr 2, 2025
75 checks passed
@flutter-dashboard flutter-dashboard bot removed the autosubmit Merge PR when tree becomes green via auto submit App label Apr 2, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Apr 3, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Apr 3, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Apr 3, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Apr 3, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Apr 3, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Apr 3, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Apr 3, 2025
auto-submit bot pushed a commit to flutter/packages that referenced this pull request Apr 3, 2025
Roll Flutter from a0b1b32 to 02f13c3 (37 revisions)

flutter/flutter@a0b1b32...02f13c3

2025-04-03 engine-flutter-autoroll@skia.org Roll Packages from 07496eb to 4a36dc6 (3 revisions) (flutter/flutter#166542)
2025-04-03 engine-flutter-autoroll@skia.org Roll Skia from b67e53719e78 to 5f65df75febd (2 revisions) (flutter/flutter#166538)
2025-04-03 magder@google.com Update docs to debug the Android embedder (flutter/flutter#166170)
2025-04-03 engine-flutter-autoroll@skia.org Roll Dart SDK from 72562ca93bb5 to d174ec16c3ea (1 revision) (flutter/flutter#166525)
2025-04-03 matej.knopp@gmail.com [macOS] Implement merged UI and platform thread (flutter/flutter#162883)
2025-04-03 engine-flutter-autoroll@skia.org Roll Skia from f91412f5d89d to b67e53719e78 (1 revision) (flutter/flutter#166527)
2025-04-03 engine-flutter-autoroll@skia.org Roll Packages from 125c117 to 07496eb (31 revisions) (flutter/flutter#166457)
2025-04-03 engine-flutter-autoroll@skia.org Roll Skia from 2be12bc2668b to f91412f5d89d (2 revisions) (flutter/flutter#166517)
2025-04-03 engine-flutter-autoroll@skia.org Roll Dart SDK from 2a1a13cc3a91 to 72562ca93bb5 (2 revisions) (flutter/flutter#166514)
2025-04-03 dacoharkes@google.com [native_assets] Roll dependencies (flutter/flutter#166282)
2025-04-03 bruno.leroux@gmail.com Fix read only TextField focus traversal on macOS (flutter/flutter#166056)
2025-04-03 engine-flutter-autoroll@skia.org Roll Skia from c106d7831592 to 2be12bc2668b (1 revision) (flutter/flutter#166509)
2025-04-03 engine-flutter-autoroll@skia.org Roll Fuchsia Linux SDK from v7PGvypiiWLO8PbsZ... to vYisSsIgqw0mqFRVJ... (flutter/flutter#166508)
2025-04-03 engine-flutter-autoroll@skia.org Roll Dart SDK from b8b4076b1237 to 2a1a13cc3a91 (1 revision) (flutter/flutter#166504)
2025-04-03 engine-flutter-autoroll@skia.org Roll Skia from 75a0ec473181 to c106d7831592 (1 revision) (flutter/flutter#166499)
2025-04-03 34465683+rkishan516@users.noreply.github.com Migrate to Theme.brightnessOf method (flutter/flutter#163950)
2025-04-03 34465683+rkishan516@users.noreply.github.com Fix: Range slider show overlay for both thumbs on hovering one (flutter/flutter#165393)
2025-04-03 victorsanniay@gmail.com Deprecate ExpansionTileController (flutter/flutter#166368)
2025-04-03 kalathiyadimil@gmail.com Add styling parameters in `PopupMenuDivider` (flutter/flutter#164790)
2025-04-03 matanlurey@users.noreply.github.com Fix ISSUE_TEMPLATE Ordering: `10 < 9`, but `10 > 09` (flutter/flutter#166455)
2025-04-03 katelovett@google.com Skip flaking scheduler test (flutter/flutter#166471)
2025-04-02 137456488+flutter-pub-roller-bot@users.noreply.github.com Roll pub packages (flutter/flutter#166043)
2025-04-02 yjbanov@google.com [a11y] add SemanticsValidationResult (flutter/flutter#165935)
2025-04-02 58529443+srujzs@users.noreply.github.com Remove unnecessary cache busting mechanism in hot restart (flutter/flutter#166295)
2025-04-02 engine-flutter-autoroll@skia.org Roll Skia from 52cbb917fffd to 75a0ec473181 (21 revisions) (flutter/flutter#166484)
2025-04-02 30870216+gaaclarke@users.noreply.github.com Started pixel aligning hairlines (flutter/flutter#166351)
2025-04-02 47866232+chunhtai@users.noreply.github.com Adds semantics role and adjust semantics for navigation bar (flutter/flutter#162467)
2025-04-02 jacksongardner@google.com Reland "[skwasm] Dynamic Threading" (flutter/flutter#166454)
2025-04-02 dkwingsmt@users.noreply.github.com [dart:ui] Add `Path.addRSuperellipse` (flutter/flutter#166045)
2025-04-02 34465683+rkishan516@users.noreply.github.com Fix: Hero animation for page transition (flutter/flutter#164469)
2025-04-02 34465683+rkishan516@users.noreply.github.com Fix: DelegateTransition for cupertino sheet route (flutter/flutter#164675)
2025-04-02 engine-flutter-autoroll@skia.org Roll Fuchsia Test Scripts from AEdsljKmUiPk92Wvv... to FZdRtNwH7jmADecj6... (flutter/flutter#166383)
2025-04-02 jonahwilliams@google.com [Impeller] cache for text shadows. (flutter/flutter#166228)
2025-04-02 34871572+gmackall@users.noreply.github.com Convert `AppPluginLoaderPlugin` to Kotlin, and add `NativePluginLoaderReflectionBridge` to expose it in Kotlin (flutter/flutter#166027)
2025-04-02 engine-flutter-autoroll@skia.org Roll Dart SDK from 4e1f02bc704f to b8b4076b1237 (7 revisions) (flutter/flutter#166474)
2025-04-02 mit@google.com Update Roadmap (flutter/flutter#166332)
2025-04-02 matanlurey@users.noreply.github.com Update `CODEOWNERS` (flutter/flutter#166444)

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

...
CodixNinja pushed a commit to CodixNinja/packages that referenced this pull request May 15, 2025
Roll Flutter from a0b1b3253416 to 02f13c37841f (37 revisions)

flutter/flutter@a0b1b32...02f13c3

2025-04-03 engine-flutter-autoroll@skia.org Roll Packages from d10d5af to 95f8e65 (3 revisions) (flutter/flutter#166542)
2025-04-03 engine-flutter-autoroll@skia.org Roll Skia from b67e53719e78 to 5f65df75febd (2 revisions) (flutter/flutter#166538)
2025-04-03 magder@google.com Update docs to debug the Android embedder (flutter/flutter#166170)
2025-04-03 engine-flutter-autoroll@skia.org Roll Dart SDK from 72562ca93bb5 to d174ec16c3ea (1 revision) (flutter/flutter#166525)
2025-04-03 matej.knopp@gmail.com [macOS] Implement merged UI and platform thread (flutter/flutter#162883)
2025-04-03 engine-flutter-autoroll@skia.org Roll Skia from f91412f5d89d to b67e53719e78 (1 revision) (flutter/flutter#166527)
2025-04-03 engine-flutter-autoroll@skia.org Roll Packages from 0d5d57b to d10d5af (31 revisions) (flutter/flutter#166457)
2025-04-03 engine-flutter-autoroll@skia.org Roll Skia from 2be12bc2668b to f91412f5d89d (2 revisions) (flutter/flutter#166517)
2025-04-03 engine-flutter-autoroll@skia.org Roll Dart SDK from 2a1a13cc3a91 to 72562ca93bb5 (2 revisions) (flutter/flutter#166514)
2025-04-03 dacoharkes@google.com [native_assets] Roll dependencies (flutter/flutter#166282)
2025-04-03 bruno.leroux@gmail.com Fix read only TextField focus traversal on macOS (flutter/flutter#166056)
2025-04-03 engine-flutter-autoroll@skia.org Roll Skia from c106d7831592 to 2be12bc2668b (1 revision) (flutter/flutter#166509)
2025-04-03 engine-flutter-autoroll@skia.org Roll Fuchsia Linux SDK from v7PGvypiiWLO8PbsZ... to vYisSsIgqw0mqFRVJ... (flutter/flutter#166508)
2025-04-03 engine-flutter-autoroll@skia.org Roll Dart SDK from b8b4076b1237 to 2a1a13cc3a91 (1 revision) (flutter/flutter#166504)
2025-04-03 engine-flutter-autoroll@skia.org Roll Skia from 75a0ec473181 to c106d7831592 (1 revision) (flutter/flutter#166499)
2025-04-03 34465683+rkishan516@users.noreply.github.com Migrate to Theme.brightnessOf method (flutter/flutter#163950)
2025-04-03 34465683+rkishan516@users.noreply.github.com Fix: Range slider show overlay for both thumbs on hovering one (flutter/flutter#165393)
2025-04-03 victorsanniay@gmail.com Deprecate ExpansionTileController (flutter/flutter#166368)
2025-04-03 kalathiyadimil@gmail.com Add styling parameters in `PopupMenuDivider` (flutter/flutter#164790)
2025-04-03 matanlurey@users.noreply.github.com Fix ISSUE_TEMPLATE Ordering: `10 < 9`, but `10 > 09` (flutter/flutter#166455)
2025-04-03 katelovett@google.com Skip flaking scheduler test (flutter/flutter#166471)
2025-04-02 137456488+flutter-pub-roller-bot@users.noreply.github.com Roll pub packages (flutter/flutter#166043)
2025-04-02 yjbanov@google.com [a11y] add SemanticsValidationResult (flutter/flutter#165935)
2025-04-02 58529443+srujzs@users.noreply.github.com Remove unnecessary cache busting mechanism in hot restart (flutter/flutter#166295)
2025-04-02 engine-flutter-autoroll@skia.org Roll Skia from 52cbb917fffd to 75a0ec473181 (21 revisions) (flutter/flutter#166484)
2025-04-02 30870216+gaaclarke@users.noreply.github.com Started pixel aligning hairlines (flutter/flutter#166351)
2025-04-02 47866232+chunhtai@users.noreply.github.com Adds semantics role and adjust semantics for navigation bar (flutter/flutter#162467)
2025-04-02 jacksongardner@google.com Reland "[skwasm] Dynamic Threading" (flutter/flutter#166454)
2025-04-02 dkwingsmt@users.noreply.github.com [dart:ui] Add `Path.addRSuperellipse` (flutter/flutter#166045)
2025-04-02 34465683+rkishan516@users.noreply.github.com Fix: Hero animation for page transition (flutter/flutter#164469)
2025-04-02 34465683+rkishan516@users.noreply.github.com Fix: DelegateTransition for cupertino sheet route (flutter/flutter#164675)
2025-04-02 engine-flutter-autoroll@skia.org Roll Fuchsia Test Scripts from AEdsljKmUiPk92Wvv... to FZdRtNwH7jmADecj6... (flutter/flutter#166383)
2025-04-02 jonahwilliams@google.com [Impeller] cache for text shadows. (flutter/flutter#166228)
2025-04-02 34871572+gmackall@users.noreply.github.com Convert `AppPluginLoaderPlugin` to Kotlin, and add `NativePluginLoaderReflectionBridge` to expose it in Kotlin (flutter/flutter#166027)
2025-04-02 engine-flutter-autoroll@skia.org Roll Dart SDK from 4e1f02bc704f to b8b4076b1237 (7 revisions) (flutter/flutter#166474)
2025-04-02 mit@google.com Update Roadmap (flutter/flutter#166332)
2025-04-02 matanlurey@users.noreply.github.com Update `CODEOWNERS` (flutter/flutter#166444)

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

...
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 a0b1b32 to 02f13c3 (37 revisions)

flutter/flutter@a0b1b32...02f13c3

2025-04-03 engine-flutter-autoroll@skia.org Roll Packages from 07496eb to 4a36dc6 (3 revisions) (flutter/flutter#166542)
2025-04-03 engine-flutter-autoroll@skia.org Roll Skia from b67e53719e78 to 5f65df75febd (2 revisions) (flutter/flutter#166538)
2025-04-03 magder@google.com Update docs to debug the Android embedder (flutter/flutter#166170)
2025-04-03 engine-flutter-autoroll@skia.org Roll Dart SDK from 72562ca93bb5 to d174ec16c3ea (1 revision) (flutter/flutter#166525)
2025-04-03 matej.knopp@gmail.com [macOS] Implement merged UI and platform thread (flutter/flutter#162883)
2025-04-03 engine-flutter-autoroll@skia.org Roll Skia from f91412f5d89d to b67e53719e78 (1 revision) (flutter/flutter#166527)
2025-04-03 engine-flutter-autoroll@skia.org Roll Packages from 125c117 to 07496eb (31 revisions) (flutter/flutter#166457)
2025-04-03 engine-flutter-autoroll@skia.org Roll Skia from 2be12bc2668b to f91412f5d89d (2 revisions) (flutter/flutter#166517)
2025-04-03 engine-flutter-autoroll@skia.org Roll Dart SDK from 2a1a13cc3a91 to 72562ca93bb5 (2 revisions) (flutter/flutter#166514)
2025-04-03 dacoharkes@google.com [native_assets] Roll dependencies (flutter/flutter#166282)
2025-04-03 bruno.leroux@gmail.com Fix read only TextField focus traversal on macOS (flutter/flutter#166056)
2025-04-03 engine-flutter-autoroll@skia.org Roll Skia from c106d7831592 to 2be12bc2668b (1 revision) (flutter/flutter#166509)
2025-04-03 engine-flutter-autoroll@skia.org Roll Fuchsia Linux SDK from v7PGvypiiWLO8PbsZ... to vYisSsIgqw0mqFRVJ... (flutter/flutter#166508)
2025-04-03 engine-flutter-autoroll@skia.org Roll Dart SDK from b8b4076b1237 to 2a1a13cc3a91 (1 revision) (flutter/flutter#166504)
2025-04-03 engine-flutter-autoroll@skia.org Roll Skia from 75a0ec473181 to c106d7831592 (1 revision) (flutter/flutter#166499)
2025-04-03 34465683+rkishan516@users.noreply.github.com Migrate to Theme.brightnessOf method (flutter/flutter#163950)
2025-04-03 34465683+rkishan516@users.noreply.github.com Fix: Range slider show overlay for both thumbs on hovering one (flutter/flutter#165393)
2025-04-03 victorsanniay@gmail.com Deprecate ExpansionTileController (flutter/flutter#166368)
2025-04-03 kalathiyadimil@gmail.com Add styling parameters in `PopupMenuDivider` (flutter/flutter#164790)
2025-04-03 matanlurey@users.noreply.github.com Fix ISSUE_TEMPLATE Ordering: `10 < 9`, but `10 > 09` (flutter/flutter#166455)
2025-04-03 katelovett@google.com Skip flaking scheduler test (flutter/flutter#166471)
2025-04-02 137456488+flutter-pub-roller-bot@users.noreply.github.com Roll pub packages (flutter/flutter#166043)
2025-04-02 yjbanov@google.com [a11y] add SemanticsValidationResult (flutter/flutter#165935)
2025-04-02 58529443+srujzs@users.noreply.github.com Remove unnecessary cache busting mechanism in hot restart (flutter/flutter#166295)
2025-04-02 engine-flutter-autoroll@skia.org Roll Skia from 52cbb917fffd to 75a0ec473181 (21 revisions) (flutter/flutter#166484)
2025-04-02 30870216+gaaclarke@users.noreply.github.com Started pixel aligning hairlines (flutter/flutter#166351)
2025-04-02 47866232+chunhtai@users.noreply.github.com Adds semantics role and adjust semantics for navigation bar (flutter/flutter#162467)
2025-04-02 jacksongardner@google.com Reland "[skwasm] Dynamic Threading" (flutter/flutter#166454)
2025-04-02 dkwingsmt@users.noreply.github.com [dart:ui] Add `Path.addRSuperellipse` (flutter/flutter#166045)
2025-04-02 34465683+rkishan516@users.noreply.github.com Fix: Hero animation for page transition (flutter/flutter#164469)
2025-04-02 34465683+rkishan516@users.noreply.github.com Fix: DelegateTransition for cupertino sheet route (flutter/flutter#164675)
2025-04-02 engine-flutter-autoroll@skia.org Roll Fuchsia Test Scripts from AEdsljKmUiPk92Wvv... to FZdRtNwH7jmADecj6... (flutter/flutter#166383)
2025-04-02 jonahwilliams@google.com [Impeller] cache for text shadows. (flutter/flutter#166228)
2025-04-02 34871572+gmackall@users.noreply.github.com Convert `AppPluginLoaderPlugin` to Kotlin, and add `NativePluginLoaderReflectionBridge` to expose it in Kotlin (flutter/flutter#166027)
2025-04-02 engine-flutter-autoroll@skia.org Roll Dart SDK from 4e1f02bc704f to b8b4076b1237 (7 revisions) (flutter/flutter#166474)
2025-04-02 mit@google.com Update Roadmap (flutter/flutter#166332)
2025-04-02 matanlurey@users.noreply.github.com Update `CODEOWNERS` (flutter/flutter#166444)

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

...
zhangyuang pushed a commit to zhangyuang/flutter-fork that referenced this pull request Jun 9, 2025
Fix: Hero animation for page transition
fixes: flutter#163989 

## 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.
- [x] 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.
FMorschel pushed a commit to FMorschel/packages that referenced this pull request Jun 9, 2025
Roll Flutter from a0b1b32 to 02f13c3 (37 revisions)

flutter/flutter@a0b1b32...02f13c3

2025-04-03 engine-flutter-autoroll@skia.org Roll Packages from 07496eb to 4a36dc6 (3 revisions) (flutter/flutter#166542)
2025-04-03 engine-flutter-autoroll@skia.org Roll Skia from b67e53719e78 to 5f65df75febd (2 revisions) (flutter/flutter#166538)
2025-04-03 magder@google.com Update docs to debug the Android embedder (flutter/flutter#166170)
2025-04-03 engine-flutter-autoroll@skia.org Roll Dart SDK from 72562ca93bb5 to d174ec16c3ea (1 revision) (flutter/flutter#166525)
2025-04-03 matej.knopp@gmail.com [macOS] Implement merged UI and platform thread (flutter/flutter#162883)
2025-04-03 engine-flutter-autoroll@skia.org Roll Skia from f91412f5d89d to b67e53719e78 (1 revision) (flutter/flutter#166527)
2025-04-03 engine-flutter-autoroll@skia.org Roll Packages from 125c117 to 07496eb (31 revisions) (flutter/flutter#166457)
2025-04-03 engine-flutter-autoroll@skia.org Roll Skia from 2be12bc2668b to f91412f5d89d (2 revisions) (flutter/flutter#166517)
2025-04-03 engine-flutter-autoroll@skia.org Roll Dart SDK from 2a1a13cc3a91 to 72562ca93bb5 (2 revisions) (flutter/flutter#166514)
2025-04-03 dacoharkes@google.com [native_assets] Roll dependencies (flutter/flutter#166282)
2025-04-03 bruno.leroux@gmail.com Fix read only TextField focus traversal on macOS (flutter/flutter#166056)
2025-04-03 engine-flutter-autoroll@skia.org Roll Skia from c106d7831592 to 2be12bc2668b (1 revision) (flutter/flutter#166509)
2025-04-03 engine-flutter-autoroll@skia.org Roll Fuchsia Linux SDK from v7PGvypiiWLO8PbsZ... to vYisSsIgqw0mqFRVJ... (flutter/flutter#166508)
2025-04-03 engine-flutter-autoroll@skia.org Roll Dart SDK from b8b4076b1237 to 2a1a13cc3a91 (1 revision) (flutter/flutter#166504)
2025-04-03 engine-flutter-autoroll@skia.org Roll Skia from 75a0ec473181 to c106d7831592 (1 revision) (flutter/flutter#166499)
2025-04-03 34465683+rkishan516@users.noreply.github.com Migrate to Theme.brightnessOf method (flutter/flutter#163950)
2025-04-03 34465683+rkishan516@users.noreply.github.com Fix: Range slider show overlay for both thumbs on hovering one (flutter/flutter#165393)
2025-04-03 victorsanniay@gmail.com Deprecate ExpansionTileController (flutter/flutter#166368)
2025-04-03 kalathiyadimil@gmail.com Add styling parameters in `PopupMenuDivider` (flutter/flutter#164790)
2025-04-03 matanlurey@users.noreply.github.com Fix ISSUE_TEMPLATE Ordering: `10 < 9`, but `10 > 09` (flutter/flutter#166455)
2025-04-03 katelovett@google.com Skip flaking scheduler test (flutter/flutter#166471)
2025-04-02 137456488+flutter-pub-roller-bot@users.noreply.github.com Roll pub packages (flutter/flutter#166043)
2025-04-02 yjbanov@google.com [a11y] add SemanticsValidationResult (flutter/flutter#165935)
2025-04-02 58529443+srujzs@users.noreply.github.com Remove unnecessary cache busting mechanism in hot restart (flutter/flutter#166295)
2025-04-02 engine-flutter-autoroll@skia.org Roll Skia from 52cbb917fffd to 75a0ec473181 (21 revisions) (flutter/flutter#166484)
2025-04-02 30870216+gaaclarke@users.noreply.github.com Started pixel aligning hairlines (flutter/flutter#166351)
2025-04-02 47866232+chunhtai@users.noreply.github.com Adds semantics role and adjust semantics for navigation bar (flutter/flutter#162467)
2025-04-02 jacksongardner@google.com Reland "[skwasm] Dynamic Threading" (flutter/flutter#166454)
2025-04-02 dkwingsmt@users.noreply.github.com [dart:ui] Add `Path.addRSuperellipse` (flutter/flutter#166045)
2025-04-02 34465683+rkishan516@users.noreply.github.com Fix: Hero animation for page transition (flutter/flutter#164469)
2025-04-02 34465683+rkishan516@users.noreply.github.com Fix: DelegateTransition for cupertino sheet route (flutter/flutter#164675)
2025-04-02 engine-flutter-autoroll@skia.org Roll Fuchsia Test Scripts from AEdsljKmUiPk92Wvv... to FZdRtNwH7jmADecj6... (flutter/flutter#166383)
2025-04-02 jonahwilliams@google.com [Impeller] cache for text shadows. (flutter/flutter#166228)
2025-04-02 34871572+gmackall@users.noreply.github.com Convert `AppPluginLoaderPlugin` to Kotlin, and add `NativePluginLoaderReflectionBridge` to expose it in Kotlin (flutter/flutter#166027)
2025-04-02 engine-flutter-autoroll@skia.org Roll Dart SDK from 4e1f02bc704f to b8b4076b1237 (7 revisions) (flutter/flutter#166474)
2025-04-02 mit@google.com Update Roadmap (flutter/flutter#166332)
2025-04-02 matanlurey@users.noreply.github.com Update `CODEOWNERS` (flutter/flutter#166444)

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

...
@rolandtolnay
Copy link

rolandtolnay commented Jun 20, 2025

Upgrading to Flutter 3.32.4 from 3.29.3 caused all my Hero animations on iOS to kind of slow down.

Look "weird" for a lack of a better word.

This seems to be the only related change I could explain it with (I downgraded and it works as before).

Any way I can get the animation behavior back to how it was in 3.29.3?

EDIT:
Basically in 3.29.3 I am able to get Cupertino-style sideways navigation with ZoomPageTransitionsBuilder-style Hero animations. This is what I want.

With 3.32.4 and this change, I can either specify ZoomPageTransitionsBuilder in my PageTransitionsTheme.builders for iOS, which then breaks my navigation patterns, or if I set CupertinoPageTransitionsBuilder then the Hero animations break.

Any suggested workarounds, apart from downgrading?

@MitchellGoodwin
Copy link
Contributor

@rolandtolnay if my understanding is correct, it sound like you just preferred the technically incorrect behavior from before this PR. The Cupertino transition takes 500ms, but before this PR the material routes was incorrectly thinking it was 300ms on iOS in some cases. I think you can just make a new simple class that extends off of the Cupertino builder and sets the duration back.

class FastCupertinoPageTransitionsBuilder extends CupertinoPageTransitionsBuilder {

  @override
  Duration get transitionDuration => const Duration(milliseconds: 300);
}

Then I think you can just use that builder for your code. If I'm misunderstanding, could you open a new issue so this can get figured out easier? This thread will lock eventually.

Ortes pushed a commit to Ortes/packages that referenced this pull request Jun 25, 2025
Roll Flutter from a0b1b32 to 02f13c3 (37 revisions)

flutter/flutter@a0b1b32...02f13c3

2025-04-03 engine-flutter-autoroll@skia.org Roll Packages from 07496eb to 4a36dc6 (3 revisions) (flutter/flutter#166542)
2025-04-03 engine-flutter-autoroll@skia.org Roll Skia from b67e53719e78 to 5f65df75febd (2 revisions) (flutter/flutter#166538)
2025-04-03 magder@google.com Update docs to debug the Android embedder (flutter/flutter#166170)
2025-04-03 engine-flutter-autoroll@skia.org Roll Dart SDK from 72562ca93bb5 to d174ec16c3ea (1 revision) (flutter/flutter#166525)
2025-04-03 matej.knopp@gmail.com [macOS] Implement merged UI and platform thread (flutter/flutter#162883)
2025-04-03 engine-flutter-autoroll@skia.org Roll Skia from f91412f5d89d to b67e53719e78 (1 revision) (flutter/flutter#166527)
2025-04-03 engine-flutter-autoroll@skia.org Roll Packages from 125c117 to 07496eb (31 revisions) (flutter/flutter#166457)
2025-04-03 engine-flutter-autoroll@skia.org Roll Skia from 2be12bc2668b to f91412f5d89d (2 revisions) (flutter/flutter#166517)
2025-04-03 engine-flutter-autoroll@skia.org Roll Dart SDK from 2a1a13cc3a91 to 72562ca93bb5 (2 revisions) (flutter/flutter#166514)
2025-04-03 dacoharkes@google.com [native_assets] Roll dependencies (flutter/flutter#166282)
2025-04-03 bruno.leroux@gmail.com Fix read only TextField focus traversal on macOS (flutter/flutter#166056)
2025-04-03 engine-flutter-autoroll@skia.org Roll Skia from c106d7831592 to 2be12bc2668b (1 revision) (flutter/flutter#166509)
2025-04-03 engine-flutter-autoroll@skia.org Roll Fuchsia Linux SDK from v7PGvypiiWLO8PbsZ... to vYisSsIgqw0mqFRVJ... (flutter/flutter#166508)
2025-04-03 engine-flutter-autoroll@skia.org Roll Dart SDK from b8b4076b1237 to 2a1a13cc3a91 (1 revision) (flutter/flutter#166504)
2025-04-03 engine-flutter-autoroll@skia.org Roll Skia from 75a0ec473181 to c106d7831592 (1 revision) (flutter/flutter#166499)
2025-04-03 34465683+rkishan516@users.noreply.github.com Migrate to Theme.brightnessOf method (flutter/flutter#163950)
2025-04-03 34465683+rkishan516@users.noreply.github.com Fix: Range slider show overlay for both thumbs on hovering one (flutter/flutter#165393)
2025-04-03 victorsanniay@gmail.com Deprecate ExpansionTileController (flutter/flutter#166368)
2025-04-03 kalathiyadimil@gmail.com Add styling parameters in `PopupMenuDivider` (flutter/flutter#164790)
2025-04-03 matanlurey@users.noreply.github.com Fix ISSUE_TEMPLATE Ordering: `10 < 9`, but `10 > 09` (flutter/flutter#166455)
2025-04-03 katelovett@google.com Skip flaking scheduler test (flutter/flutter#166471)
2025-04-02 137456488+flutter-pub-roller-bot@users.noreply.github.com Roll pub packages (flutter/flutter#166043)
2025-04-02 yjbanov@google.com [a11y] add SemanticsValidationResult (flutter/flutter#165935)
2025-04-02 58529443+srujzs@users.noreply.github.com Remove unnecessary cache busting mechanism in hot restart (flutter/flutter#166295)
2025-04-02 engine-flutter-autoroll@skia.org Roll Skia from 52cbb917fffd to 75a0ec473181 (21 revisions) (flutter/flutter#166484)
2025-04-02 30870216+gaaclarke@users.noreply.github.com Started pixel aligning hairlines (flutter/flutter#166351)
2025-04-02 47866232+chunhtai@users.noreply.github.com Adds semantics role and adjust semantics for navigation bar (flutter/flutter#162467)
2025-04-02 jacksongardner@google.com Reland "[skwasm] Dynamic Threading" (flutter/flutter#166454)
2025-04-02 dkwingsmt@users.noreply.github.com [dart:ui] Add `Path.addRSuperellipse` (flutter/flutter#166045)
2025-04-02 34465683+rkishan516@users.noreply.github.com Fix: Hero animation for page transition (flutter/flutter#164469)
2025-04-02 34465683+rkishan516@users.noreply.github.com Fix: DelegateTransition for cupertino sheet route (flutter/flutter#164675)
2025-04-02 engine-flutter-autoroll@skia.org Roll Fuchsia Test Scripts from AEdsljKmUiPk92Wvv... to FZdRtNwH7jmADecj6... (flutter/flutter#166383)
2025-04-02 jonahwilliams@google.com [Impeller] cache for text shadows. (flutter/flutter#166228)
2025-04-02 34871572+gmackall@users.noreply.github.com Convert `AppPluginLoaderPlugin` to Kotlin, and add `NativePluginLoaderReflectionBridge` to expose it in Kotlin (flutter/flutter#166027)
2025-04-02 engine-flutter-autoroll@skia.org Roll Dart SDK from 4e1f02bc704f to b8b4076b1237 (7 revisions) (flutter/flutter#166474)
2025-04-02 mit@google.com Update Roadmap (flutter/flutter#166332)
2025-04-02 matanlurey@users.noreply.github.com Update `CODEOWNERS` (flutter/flutter#166444)

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

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

Hero broken while overriding pageTransitions in ThemeData
5 participants