refactor: migrate CupertinoPageTransitionsBuilder to cupertino folder#179776
refactor: migrate CupertinoPageTransitionsBuilder to cupertino folder#179776auto-submit[bot] merged 5 commits intoflutter:masterfrom
Conversation
There was a problem hiding this comment.
Code Review
This pull request refactors the CupertinoPageTransitionsBuilder by moving it from the material library to the cupertino library. This is a logical change as the builder's implementation is based on Cupertino transition mixins. The author has correctly updated all usages within the repository, including examples and tests, by adding the necessary cupertino.dart import. The changes are clean, correct, and improve code organization. I have reviewed the code and found no issues.
victorsanni
left a comment
There was a problem hiding this comment.
Can we add a test here?
be2c573 to
751e27c
Compare
I have added few tests. |
| /// Used by [PageTransitionsTheme] to define a horizontal [MaterialPageRoute] | ||
| /// page transition animation that matches native iOS page transitions. |
There was a problem hiding this comment.
Can we have a more non-Material oriented + Cupertino/iOS heavy documentation here? Then add a See also section that mentions MaterialPageRoute and PageTransitionsTheme etc.
0e44a9f to
65c30e4
Compare
65c30e4 to
27d80ce
Compare
27d80ce to
4d6c439
Compare
|
Google tests are failing due to missing cupertino imports. |
Will someone update those, or should we export these from material.dart(for now)? |
Hmm, I am not sure if dart fix can do this, but I've reached out to see if they can. Otherwise we should be able to add it manually. I think a simple migration guide is a good idea. It can cover all the things we moved around wrt page transitions and explain why. :) |
Based on flutter/flutter#179776. Change-Id: Ia80e1c4217959b8309694fa12973fdacf032fcf9 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/471603 Reviewed-by: Brian Wilkerson <[email protected]> Commit-Queue: Keerti Parthasarathy <[email protected]>
I will create a simple migration guide for this. |
|
I heard back from the Dart team, looks like dart fix can do this. Here is an example: transforms:
- title: 'Replaced by cupertino CupertinoPageTransitionsBuilder'
date: 2023-11-09
element:
uris: ['material.dart']
class: 'CupertinoPageTransitionsBuilder'
changes:
- kind: 'replacedBy'
newElement:
uris: ['cupertino.dart']
class: 'CupertinoPageTransitionsBuilder' |
|
Thanks for the migration guide as well! |
Add migration guide for page transition builders reorganisation _PRs or commits this PR depends on (if any): flutter/flutter#179776 Changes - Added src/content/release/breaking-changes/decouple-page-transition-builders.md with: - Overview of all page transition builders and their libraries - Background explaining why the reorganization was made - Simple migration guide (add Cupertino import) - Added entry to src/content/release/breaking-changes/index.md under "Not yet released to stable" ## Presubmit checklist - [x] If you are unwilling, or unable, to sign the CLA, even for a _tiny_, one-word PR, please file an issue instead of a PR. - [x] If this PR is not meant to land until a future stable release, mark it as draft with an explanation. - [x] This PR follows the [Google Developer Documentation Style Guidelines](https://developers.google.com/style)—for example, it doesn't use _i.e._ or _e.g._, and it avoids _I_ and _we_ (first-person pronouns). - [x] This PR uses [semantic line breaks](https://github.com/dart-lang/site-shared/blob/main/doc/writing-for-dart-and-flutter-websites.md#semantic-line-breaks) of 80 characters or fewer. --------- Co-authored-by: Shams Zakhour <[email protected]> Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
4d6c439 to
ecf684d
Compare
|
@Piinks Need your green flag for merging. |
|
Google testing is passing now, just need to resolve some internal hitches that are preventing it from being reflected on the Github UI. |
Piinks
left a comment
There was a problem hiding this comment.
LGTM! This might need a rebase to land now?
10780a7 to
bbe101b
Compare
|
Rebased 👍 I will confirm with Victor that the Google testing failures are ok before popping on the autosubmit. :) |
Should be ok - I added the cupertino library import to relevant files (and a comment for the linter to ignore since it is currently unused). |
Roll Flutter from e8f9dc50356d to 9bda20a11f1e (34 revisions) flutter/flutter@e8f9dc5...9bda20a 2026-02-10 [email protected] Remove Material import from focus_traversal_test.dart (flutter/flutter#180994) 2026-02-10 [email protected] Roll Skia from 6e217430c052 to cffb3bf918df (1 revision) (flutter/flutter#182131) 2026-02-10 [email protected] Encourage splitting large test files in testing documentation 2 (flutter/flutter#182051) 2026-02-10 [email protected] refactor: migrate CupertinoPageTransitionsBuilder to cupertino folder (flutter/flutter#179776) 2026-02-10 [email protected] Delete the last remaining skia only fragment shader tests (flutter/flutter#182127) 2026-02-10 [email protected] [a11y][android] Set new CheckState APIs for android API 36 (flutter/flutter#182113) 2026-02-10 [email protected] Add missing dependencies to framework_tests_misc_leak_tracking (flutter/flutter#181929) 2026-02-10 [email protected] Roll Dart SDK from eee0e2e11174 to 69eb951f8f7e (2 revisions) (flutter/flutter#182128) 2026-02-10 [email protected] Marks Linux_android_emu android_display_cutout to be flaky (flutter/flutter#181901) 2026-02-10 [email protected] Bump Dart to 3.10 (flutter/flutter#174066) 2026-02-10 [email protected] Roll Skia from d4b7e24a209b to 6e217430c052 (6 revisions) (flutter/flutter#182126) 2026-02-09 [email protected] Intercept UIScene device log and print a guided warning (flutter/flutter#181515) 2026-02-09 [email protected] Introduce ScrollCacheExtent and also fixes unbound shrinkwrap cache ex… (flutter/flutter#181092) 2026-02-09 [email protected] [Android] Add mechanism for setting Android engine flags via Android manifest (take 2) (flutter/flutter#181632) 2026-02-09 [email protected] Fix wrong comment about default impeller value (flutter/flutter#181831) 2026-02-09 [email protected] fix build fail for wayland only platform (flutter/flutter#182057) 2026-02-09 [email protected] [AGP 9] Added Warning Against Updating to AGP 9 (flutter/flutter#181977) 2026-02-09 [email protected] Updated Shaderc dep (flutter/flutter#180976) 2026-02-09 [email protected] Refactor accessibility guidelines out to widget layer (flutter/flutter#181672) 2026-02-09 [email protected] Roll Skia from 68dff53238e5 to d4b7e24a209b (2 revisions) (flutter/flutter#182087) 2026-02-09 [email protected] fix: OutlineInputBorder not respecting BorderSide stroke alignment (flutter/flutter#180487) 2026-02-09 [email protected] Adds opengles to engine dart tests (flutter/flutter#181933) 2026-02-09 [email protected] Add command to build a Swift Package for Add to App and generate FlutterPluginRegistrant (flutter/flutter#181224) 2026-02-09 [email protected] Remove unused constant in `bundle.dart` (flutter/flutter#182023) 2026-02-09 [email protected] Roll Fuchsia Linux SDK from iqtwdXlgKIyZkL5Li... to 7BGf7mPQvgLi7Axb6... (flutter/flutter#182082) 2026-02-09 [email protected] Remove unused getters in `user_messages.dart` (flutter/flutter#181867) 2026-02-09 [email protected] Roll Packages from 7805d3e to 3d5eaa5 (3 revisions) (flutter/flutter#182083) 2026-02-09 [email protected] Roll Skia from 5d891cd7fb7f to 68dff53238e5 (1 revision) (flutter/flutter#182080) 2026-02-09 [email protected] Update example description (flutter/flutter#182067) 2026-02-09 [email protected] Roll Dart SDK from 965b51c219d3 to eee0e2e11174 (1 revision) (flutter/flutter#182073) 2026-02-09 [email protected] Roll Skia from 9533d7533d59 to 5d891cd7fb7f (6 revisions) (flutter/flutter#182070) 2026-02-09 [email protected] Add a new flutter cli command, running-apps, using mDNS app discovery (flutter/flutter#180098) 2026-02-09 [email protected] Roll Skia from b7db9f35f0f2 to 9533d7533d59 (2 revisions) (flutter/flutter#182069) 2026-02-08 [email protected] Improve FlWindowMonitor API (flutter/flutter#181885) 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 [email protected],[email protected] 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 To report a problem with the AutoRoller itself, please file a bug: https://issues.skia.org/issues/new?component=1389291&template=1850622 ...
…flutter#179776) Changes: * Move CupertinoPageTransitionsBuilder from material/page_transitions_theme.dart to cupertino/route.dart part of: flutter#172929 ## 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.
Changes:
part of: #172929
Pre-launch Checklist
///).