Add Foldable support for modal routes#92909
Conversation
3fbdcff to
159c087
Compare
|
Awesome! Thank you, and apologies for the delay while I was OOO. Reviewing the last ones today. |
Piinks
left a comment
There was a problem hiding this comment.
Looking good overall, I wonder though, is it necessary to always include the DisplayFeatureSubScreen widget if we are not using a foldable device? Can that widget only be added when it is relevant, rather than it always being in the tree?
|
|
Gold has detected about 38 new digest(s) on patchset 28. |
|
@goderbauer can you provide a secondary review? |
goderbauer
left a comment
There was a problem hiding this comment.
LGTM after the comment about the doc is addressed.
Roll Flutter from 38dbbb1 to 0dfb656 (135 revisions) flutter/flutter@38dbbb1...0dfb656 2022-03-10 engine-flutter-autoroll@skia.org Roll Engine from bf2bf3a3fd2b to 6b1a24b1a108 (10 revisions) (flutter/flutter#99917) 2022-03-10 engine-flutter-autoroll@skia.org Roll Plugins from eb6ad34 to 20e231b (8 revisions) (flutter/flutter#99913) 2022-03-10 engine-flutter-autoroll@skia.org Roll Engine from 2c1816b39127 to bf2bf3a3fd2b (3 revisions) (flutter/flutter#99887) 2022-03-10 darrenaustin@google.com Migrate NavigationRail to Material 3. (flutter/flutter#99171) 2022-03-10 katelovett@google.com Remove expired ThemeData deprecations (flutter/flutter#98578) 2022-03-09 engine-flutter-autoroll@skia.org Roll Engine from 09a11d137953 to 2c1816b39127 (3 revisions) (flutter/flutter#99878) 2022-03-09 chillers@google.com [ci.yaml] Remove unused benchmark property (flutter/flutter#99843) 2022-03-09 591699+clocksmith@users.noreply.github.com [Material] Create an InkSparkle splash effect that matches the Material 3 ripple effect (flutter/flutter#99731) 2022-03-09 katelovett@google.com Remove deprecated RenderEditable.onSelectionChanged (flutter/flutter#98582) 2022-03-09 fluttergithubbot@gmail.com Marks Mac_ios post_backdrop_filter_perf_ios__timeline_summary to be flaky (flutter/flutter#99856) 2022-03-09 engine-flutter-autoroll@skia.org Roll Engine from 6d7bcc9e577c to 09a11d137953 (3 revisions) (flutter/flutter#99870) 2022-03-09 ychris@google.com [tool] Add CADisableMinimumFrameDurationOnPhone to iOS templates (flutter/flutter#94509) 2022-03-09 jeff@fuzzybinary.com First pass at using platform abstraction for plugins (flutter/flutter#92672) 2022-03-09 darrenaustin@google.com Fix `ColorScheme.shadow` to default to black even for dark themes. (flutter/flutter#99722) 2022-03-09 engine-flutter-autoroll@skia.org Roll Engine from a0963f14b67d to 6d7bcc9e577c (3 revisions) (flutter/flutter#99847) 2022-03-09 darrenaustin@google.com Updated tokens to v0.90. (flutter/flutter#99782) 2022-03-09 fluttergithubbot@gmail.com Marks Mac_ios backdrop_filter_perf_ios__timeline_summary to be unflaky (flutter/flutter#99836) 2022-03-09 jmccandless@google.com updateEditingValueWithDeltas snippet docs fix (flutter/flutter#99570) 2022-03-09 engine-flutter-autoroll@skia.org Roll Engine from 9362061fbb79 to a0963f14b67d (1 revision) (flutter/flutter#99838) 2022-03-09 engine-flutter-autoroll@skia.org Roll Plugins from b906ea5 to eb6ad34 (9 revisions) (flutter/flutter#99828) 2022-03-09 6655696+guidezpl@users.noreply.github.com Update visibility of methods for internal use (flutter/flutter#98124) 2022-03-09 engine-flutter-autoroll@skia.org Roll Engine from 621c88dc2d13 to 9362061fbb79 (6 revisions) (flutter/flutter#99809) 2022-03-09 engine-flutter-autoroll@skia.org Roll Engine from 5c760759feca to 621c88dc2d13 (2 revisions) (flutter/flutter#99792) 2022-03-09 chingjun@google.com Pass 'assume-initialize-from-dill-up-to-date' flag to the frontend server (flutter/flutter#99791) 2022-03-09 alexandre.ardhuin@gmail.com remove unnecessary null check (flutter/flutter#99507) 2022-03-09 31859944+LongCatIsLooong@users.noreply.github.com Avoid calling `performLayout` when only the relayout boundary is different (flutter/flutter#99056) 2022-03-09 zanderso@users.noreply.github.com Revert "Add the refresh rate fields to perf_test (#99710)" (flutter/flutter#99801) 2022-03-09 katelovett@google.com Re-land removal of maxLengthEnforced deprecation (flutter/flutter#99787) 2022-03-09 ychris@google.com Add the refresh rate fields to perf_test (flutter/flutter#99710) 2022-03-09 magder@google.com Remove tool crash git.io link shortener (flutter/flutter#99574) 2022-03-09 brunotacca@gmail.com 95533 min sdk error msgs enhancements (flutter/flutter#99550) 2022-03-08 katelovett@google.com Remove deprecated OutlineButton (flutter/flutter#98546) 2022-03-08 Phelicks@users.noreply.github.com [flutter_tools] Fix Typo in tool error message (flutter/flutter#97793) 2022-03-08 magder@google.com Handle hidden dot files in iOS framework bundles (flutter/flutter#99771) 2022-03-08 darrenaustin@google.com Updated tokens to v0.88. (flutter/flutter#99568) 2022-03-08 katelovett@google.com Revert "Remove deprecated CupertinoTextField, TextField, TextFormField maxLengthEnforced" (flutter/flutter#99768) 2022-03-08 andreidiaconu@users.noreply.github.com Add Foldable support for modal routes (flutter/flutter#92909) 2022-03-08 engine-flutter-autoroll@skia.org Roll Plugins from 675f91b to b906ea5 (4 revisions) (flutter/flutter#99765) 2022-03-08 engine-flutter-autoroll@skia.org Roll Engine from 0fed94d050b1 to 5c760759feca (1 revision) (flutter/flutter#99751) 2022-03-08 31410839+maheshmnj@users.noreply.github.com Fix: Date picker interactive sample not loading (flutter/flutter#99401) 2022-03-08 chris@bracken.jp Check string size before Win32 MultiByte <-> WideChar conversions (flutter/flutter#99729) 2022-03-08 engine-flutter-autoroll@skia.org Roll Engine from 9c3f73864029 to 0fed94d050b1 (6 revisions) (flutter/flutter#99728) 2022-03-08 31410839+maheshmnj@users.noreply.github.com Adds a Listview tile select example (flutter/flutter#99165) 2022-03-08 katelovett@google.com Remove deprecated CupertinoTextField, TextField, TextFormField maxLengthEnforced (flutter/flutter#98539) 2022-03-08 engine-flutter-autoroll@skia.org Roll Engine from 9e1594bd741f to 9c3f73864029 (2 revisions) (flutter/flutter#99721) 2022-03-08 49699333+dependabot[bot]@users.noreply.github.com Bump debian from bullseye-20220125-slim to bullseye-20220228-slim in /dev/ci/docker_linux (flutter/flutter#99708) ...

This PR makes modal routes and dialogs avoid overlapping display features. It also adds an
anchorPointparameter to methods used for showing dialogs, in order to make it easier to control where dialogs show up. In practical terms, it helps with displaying modals on only one of the screens on dual-screen foldables.Here is an example of showing a dialog on one of the screens, instead of the middle of the screen (where the example device has a display feature):
This is split from a larger PR for foldable support in order to make it easier to review (#77156).
Issues that will be fixed by this PR:
Depends on:
Pre-launch Checklist
///).