Skip to content

Conversation

knopp
Copy link
Member

@knopp knopp commented May 13, 2025

Replace this paragraph with a description of what this PR is changing or adding, and why. Consider including before/after screenshots.

List which issues are fixed by this PR. You must list at least one issue. An issue is not required if the PR fixes something trivial like a typo.

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 engine flutter/engine related. See also e: labels. platform-windows Building on or for Windows specifically a: desktop Running on desktop platform-macos labels May 13, 2025
@knopp knopp force-pushed the multiwindow_ffi_engine branch from 15df486 to d30149d Compare May 13, 2025 10:42
Copy link
Contributor

@rkishan516 rkishan516 left a comment

Choose a reason for hiding this comment

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

I am assuming we are planning to merge this before #167393. I found some basic things which we might want to change before merge.

void* FlutterGetWindowHandle(int64_t engine_id, FlutterViewIdentifier view_id);

FLUTTER_DARWIN_EXPORT
void* FlutterGetWindowHandle(int64_t engine_id, FlutterViewIdentifier view_id);
Copy link
Contributor

Choose a reason for hiding this comment

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

Does this code got duplicated ?

FLUTTER_DARWIN_EXPORT
void* FlutterGetWindowHandle(int64_t engine_id, FlutterViewIdentifier view_id);

Copy link
Contributor

@mattkae mattkae left a comment

Choose a reason for hiding this comment

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

Some smaller architectural comments, specifically around the Windows platform

Comment on lines +859 to +867
.width = 0,
.height = 0,
.pixel_ratio = 1.0,
Copy link
Member

Choose a reason for hiding this comment

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

Does the view controller not have initial size and pixel ratio values?

Copy link
Member Author

Choose a reason for hiding this comment

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

The comment above says

  // These will be overriden immediately after the FlutterView is created
  // by actual values.

At the point where we're creating the view we don't really know the pixel ratio, and the FlutterView will immediately send a metrics event anyway.

Copy link
Member

@loic-sharma loic-sharma Jun 17, 2025

Choose a reason for hiding this comment

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

At the point where we're creating the view we don't really know the pixel ratio,

Ah interesting. Why is that?

Is it we don't know which display the view will be on? Does macOS have a concept of a primary display we could use optimistically?

and the FlutterView will immediately send a metrics event anyway.

Right, and that matches what Flutter does for the implicit view today.

However, I'm being a little annoying here as this is an area we'd like to improve. Today, Flutter creates an initial throwaway frame with size 0x0 to bootstrap the framework. Once we receive the real metrics, we do a second frame with the correct size. This second frame is able to reuse some but not all the work done by the initial frame.

This two-frame bootstrapping process is wasteful. If we provide the correct metrics in the add view call, the initial bootstrapping frame has less throwaway work.

FWIW I'd be OK with punting this work to a future PR, but if this is fixable could we leave a TODO?

Copy link
Member Author

Choose a reason for hiding this comment

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

A reconfigure event will be sent as soon as FlutterView knows its backing properties. I think the reconfigure event should come early enough in the cycle so that we don't do any actual wasteful work when creating new views.

The first build of any (newly created) view content should have full configured resolution and pixel aspect ratio.

The two frame boostraping might be an issue, but it's not really related to multiview (and it would only happen once per application) so I don't think this is the place to address this.

@dkwingsmt dkwingsmt self-requested a review June 12, 2025 21:18
@mattkae mattkae requested review from mattkae and loic-sharma June 17, 2025 12:50
@knopp knopp added the autosubmit Merge PR when tree becomes green via auto submit App label Jul 8, 2025
@auto-submit auto-submit bot removed the autosubmit Merge PR when tree becomes green via auto submit App label Jul 8, 2025
Copy link
Contributor

auto-submit bot commented Jul 8, 2025

autosubmit label was removed for flutter/flutter/168728, because - The status or check suite Linux linux_license has failed. Please fix the issues identified (or deflake) before re-applying this label.

@knopp knopp force-pushed the multiwindow_ffi_engine branch from d6e8885 to eb12b4c Compare July 8, 2025 15:52
@mattkae mattkae added the autosubmit Merge PR when tree becomes green via auto submit App label Jul 8, 2025
@auto-submit auto-submit bot added this pull request to the merge queue Jul 8, 2025
Merged via the queue into flutter:master with commit fc286d0 Jul 8, 2025
175 checks passed
@flutter-dashboard flutter-dashboard bot removed the autosubmit Merge PR when tree becomes green via auto submit App label Jul 8, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Jul 9, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Jul 9, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Jul 9, 2025
auto-submit bot pushed a commit to flutter/packages that referenced this pull request Jul 9, 2025
flutter/flutter@adffe24...ac12f66

2025-07-09 engine-flutter-autoroll@skia.org Roll Packages from cba2e90 to 4a231ae (5 revisions) (flutter/flutter#171879)
2025-07-09 ahmedsameha1@gmail.com Replace [FinderBase] with [Finder] in the documentation of Matchers (flutter/flutter#168279)
2025-07-09 mdebbar@google.com Revert "Mark web_long_running_tests_2_5 as bringup" (flutter/flutter#171872)
2025-07-09 bruno.leroux@gmail.com Apply normalization to TimePickerThemeData.inputDecorationTheme (flutter/flutter#171584)
2025-07-09 bruno.leroux@gmail.com Fix InputDecorationThemeData.activeIndicatorBorder is not applied (flutter/flutter#171764)
2025-07-09 robert.ancell@canonical.com Fix multi-view GL rendering not working since software rendering was added (flutter/flutter#171409)
2025-07-09 fluttergithubbot@gmail.com Marks Linux_android_emu android_engine_vulkan_tests to be unflaky (flutter/flutter#171141)
2025-07-08 engine-flutter-autoroll@skia.org Roll Fuchsia Linux SDK from AinHuT0vgOelA1g7_... to 0-xqmXWc4cXzw3tfe... (flutter/flutter#171823)
2025-07-08 fluttergithubbot@gmail.com Marks Linux_android_emu android_display_cutout to be unflaky (flutter/flutter#171140)
2025-07-08 1063596+reidbaker@users.noreply.github.com [Documentation] When updating kgp minimum document additional changes that are required (flutter/flutter#171819)
2025-07-08 fluttergithubbot@gmail.com Marks Linux_android_emu android_engine_opengles_tests to be unflaky (flutter/flutter#171142)
2025-07-08 biggs0125@gmail.com Add support for running dart2wasm in dry run mode on js compilations (flutter/flutter#171682)
2025-07-08 matanlurey@users.noreply.github.com Remove now duplicate un-forward ports for Android (flutter/flutter#171473)
2025-07-08 kjlubick@users.noreply.github.com [skia] Update usage of removed gn flag (flutter/flutter#171800)
2025-07-08 mdebbar@google.com [web] Disable auto-formatting for the stack_trace.dart test file (flutter/flutter#171801)
2025-07-08 1063596+reidbaker@users.noreply.github.com Bump warn and error versions of agp, kotlin and gradle versions in preparation for gradle 9 (flutter/flutter#171776)
2025-07-08 63253361+Phantom-101@users.noreply.github.com Removed string keys (flutter/flutter#171293)
2025-07-08 32538273+ValentinVignal@users.noreply.github.com Add `radioSide` to `RadioListTile` (flutter/flutter#171318)
2025-07-08 engine-flutter-autoroll@skia.org Roll Fuchsia Test Scripts from ZpnML-jis0gVIvtx5... to MnFlN7VWM_7h7EmBV... (flutter/flutter#171787)
2025-07-08 matanlurey@users.noreply.github.com Add/use `addMachineOutputFlag`/`outputsMachineFormat` instead of strings (flutter/flutter#171459)
2025-07-08 36861262+QuncCccccc@users.noreply.github.com Update translation from console (flutter/flutter#171556)
2025-07-08 bkonyi@google.com [ Tool ] Support upgrading to a new Flutter version pointing to the same revision as a previous version (flutter/flutter#171783)
2025-07-08 matej.knopp@gmail.com Multi-window support (engine) (flutter/flutter#168728)
2025-07-08 34269530+PrimaelQuemerais@users.noreply.github.com Fixes an issue where TapRegion would consume taps regardless of navigation state (flutter/flutter#169067)
2025-07-08 rmolivares@renzo-olivares.dev SliverSemantics (flutter/flutter#167300)
2025-07-08 engine-flutter-autoroll@skia.org Roll Skia from e159882c6ce0 to 0fef076beec3 (3 revisions) (flutter/flutter#171779)
2025-07-08 mdebbar@google.com Run hot_restart_web_amd_test.dart on Mac/Windows (flutter/flutter#171281)
2025-07-08 engine-flutter-autoroll@skia.org Roll Packages from 2c52f24 to cba2e90 (2 revisions) (flutter/flutter#171775)

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.

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

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
mboetger pushed a commit to mboetger/flutter that referenced this pull request Jul 9, 2025
<!--
Thanks for filing a pull request!
Reviewers are typically assigned within a week of filing a request.
To learn more about code review, see our documentation on Tree Hygiene:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md
-->

*Replace this paragraph with a description of what this PR is changing
or adding, and why. Consider including before/after screenshots.*

*List which issues are fixed by this PR. You must list at least one
issue. An issue is not required if the PR fixes something trivial like a
typo.*

*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

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

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

<!-- Links -->
[Contributor Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#overview
[Tree Hygiene]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md
[test-exempt]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests
[Flutter Style Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md
[Features we expect every widget to implement]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#features-we-expect-every-widget-to-implement
[CLA]: https://cla.developers.google.com/
[flutter/tests]: https://github.com/flutter/tests
[breaking change policy]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes
[Discord]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md
[Data Driven Fixes]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md

---------

Co-authored-by: Matthew Kosarek <matt.kosarek@canonical.com>
Co-authored-by: Loïc Sharma <737941+loic-sharma@users.noreply.github.com>
mboetger pushed a commit to mboetger/flutter that referenced this pull request Jul 21, 2025
<!--
Thanks for filing a pull request!
Reviewers are typically assigned within a week of filing a request.
To learn more about code review, see our documentation on Tree Hygiene:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md
-->

*Replace this paragraph with a description of what this PR is changing
or adding, and why. Consider including before/after screenshots.*

*List which issues are fixed by this PR. You must list at least one
issue. An issue is not required if the PR fixes something trivial like a
typo.*

*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

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

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

<!-- Links -->
[Contributor Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#overview
[Tree Hygiene]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md
[test-exempt]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests
[Flutter Style Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md
[Features we expect every widget to implement]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#features-we-expect-every-widget-to-implement
[CLA]: https://cla.developers.google.com/
[flutter/tests]: https://github.com/flutter/tests
[breaking change policy]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes
[Discord]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md
[Data Driven Fixes]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md

---------

Co-authored-by: Matthew Kosarek <matt.kosarek@canonical.com>
Co-authored-by: Loïc Sharma <737941+loic-sharma@users.noreply.github.com>
azatech pushed a commit to azatech/flutter that referenced this pull request Jul 28, 2025
<!--
Thanks for filing a pull request!
Reviewers are typically assigned within a week of filing a request.
To learn more about code review, see our documentation on Tree Hygiene:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md
-->

*Replace this paragraph with a description of what this PR is changing
or adding, and why. Consider including before/after screenshots.*

*List which issues are fixed by this PR. You must list at least one
issue. An issue is not required if the PR fixes something trivial like a
typo.*

*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

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

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

<!-- Links -->
[Contributor Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#overview
[Tree Hygiene]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md
[test-exempt]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests
[Flutter Style Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md
[Features we expect every widget to implement]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#features-we-expect-every-widget-to-implement
[CLA]: https://cla.developers.google.com/
[flutter/tests]: https://github.com/flutter/tests
[breaking change policy]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes
[Discord]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md
[Data Driven Fixes]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md

---------

Co-authored-by: Matthew Kosarek <matt.kosarek@canonical.com>
Co-authored-by: Loïc Sharma <737941+loic-sharma@users.noreply.github.com>
vashworth pushed a commit to vashworth/packages that referenced this pull request Jul 30, 2025
…r#9584)

flutter/flutter@adffe24...ac12f66

2025-07-09 engine-flutter-autoroll@skia.org Roll Packages from cba2e90 to 4a231ae (5 revisions) (flutter/flutter#171879)
2025-07-09 ahmedsameha1@gmail.com Replace [FinderBase] with [Finder] in the documentation of Matchers (flutter/flutter#168279)
2025-07-09 mdebbar@google.com Revert "Mark web_long_running_tests_2_5 as bringup" (flutter/flutter#171872)
2025-07-09 bruno.leroux@gmail.com Apply normalization to TimePickerThemeData.inputDecorationTheme (flutter/flutter#171584)
2025-07-09 bruno.leroux@gmail.com Fix InputDecorationThemeData.activeIndicatorBorder is not applied (flutter/flutter#171764)
2025-07-09 robert.ancell@canonical.com Fix multi-view GL rendering not working since software rendering was added (flutter/flutter#171409)
2025-07-09 fluttergithubbot@gmail.com Marks Linux_android_emu android_engine_vulkan_tests to be unflaky (flutter/flutter#171141)
2025-07-08 engine-flutter-autoroll@skia.org Roll Fuchsia Linux SDK from AinHuT0vgOelA1g7_... to 0-xqmXWc4cXzw3tfe... (flutter/flutter#171823)
2025-07-08 fluttergithubbot@gmail.com Marks Linux_android_emu android_display_cutout to be unflaky (flutter/flutter#171140)
2025-07-08 1063596+reidbaker@users.noreply.github.com [Documentation] When updating kgp minimum document additional changes that are required (flutter/flutter#171819)
2025-07-08 fluttergithubbot@gmail.com Marks Linux_android_emu android_engine_opengles_tests to be unflaky (flutter/flutter#171142)
2025-07-08 biggs0125@gmail.com Add support for running dart2wasm in dry run mode on js compilations (flutter/flutter#171682)
2025-07-08 matanlurey@users.noreply.github.com Remove now duplicate un-forward ports for Android (flutter/flutter#171473)
2025-07-08 kjlubick@users.noreply.github.com [skia] Update usage of removed gn flag (flutter/flutter#171800)
2025-07-08 mdebbar@google.com [web] Disable auto-formatting for the stack_trace.dart test file (flutter/flutter#171801)
2025-07-08 1063596+reidbaker@users.noreply.github.com Bump warn and error versions of agp, kotlin and gradle versions in preparation for gradle 9 (flutter/flutter#171776)
2025-07-08 63253361+Phantom-101@users.noreply.github.com Removed string keys (flutter/flutter#171293)
2025-07-08 32538273+ValentinVignal@users.noreply.github.com Add `radioSide` to `RadioListTile` (flutter/flutter#171318)
2025-07-08 engine-flutter-autoroll@skia.org Roll Fuchsia Test Scripts from ZpnML-jis0gVIvtx5... to MnFlN7VWM_7h7EmBV... (flutter/flutter#171787)
2025-07-08 matanlurey@users.noreply.github.com Add/use `addMachineOutputFlag`/`outputsMachineFormat` instead of strings (flutter/flutter#171459)
2025-07-08 36861262+QuncCccccc@users.noreply.github.com Update translation from console (flutter/flutter#171556)
2025-07-08 bkonyi@google.com [ Tool ] Support upgrading to a new Flutter version pointing to the same revision as a previous version (flutter/flutter#171783)
2025-07-08 matej.knopp@gmail.com Multi-window support (engine) (flutter/flutter#168728)
2025-07-08 34269530+PrimaelQuemerais@users.noreply.github.com Fixes an issue where TapRegion would consume taps regardless of navigation state (flutter/flutter#169067)
2025-07-08 rmolivares@renzo-olivares.dev SliverSemantics (flutter/flutter#167300)
2025-07-08 engine-flutter-autoroll@skia.org Roll Skia from e159882c6ce0 to 0fef076beec3 (3 revisions) (flutter/flutter#171779)
2025-07-08 mdebbar@google.com Run hot_restart_web_amd_test.dart on Mac/Windows (flutter/flutter#171281)
2025-07-08 engine-flutter-autoroll@skia.org Roll Packages from 2c52f24 to cba2e90 (2 revisions) (flutter/flutter#171775)

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.

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

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Aug 14, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Aug 14, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Aug 15, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Aug 15, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Aug 16, 2025
ksokolovskyi pushed a commit to ksokolovskyi/flutter that referenced this pull request Aug 19, 2025
<!--
Thanks for filing a pull request!
Reviewers are typically assigned within a week of filing a request.
To learn more about code review, see our documentation on Tree Hygiene:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md
-->

*Replace this paragraph with a description of what this PR is changing
or adding, and why. Consider including before/after screenshots.*

*List which issues are fixed by this PR. You must list at least one
issue. An issue is not required if the PR fixes something trivial like a
typo.*

*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

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

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

<!-- Links -->
[Contributor Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#overview
[Tree Hygiene]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md
[test-exempt]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests
[Flutter Style Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md
[Features we expect every widget to implement]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#features-we-expect-every-widget-to-implement
[CLA]: https://cla.developers.google.com/
[flutter/tests]: https://github.com/flutter/tests
[breaking change policy]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes
[Discord]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md
[Data Driven Fixes]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md

---------

Co-authored-by: Matthew Kosarek <matt.kosarek@canonical.com>
Co-authored-by: Loïc Sharma <737941+loic-sharma@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
a: desktop Running on desktop engine flutter/engine related. See also e: labels. platform-macos platform-windows Building on or for Windows specifically
Projects
None yet
Development

Successfully merging this pull request may close these issues.

8 participants