This gist is a summary of contributions made by clarkezone, as a spare time hobby project, to bring the Flutter framework to the Universal Windows Platform application programming model for Windows. The result enabled Flutter native apps to run on Windows 10 and XBOX. Aditionally, it enabled Flutter to run on a new variant of Windows targeted at tablets called Windows 10x. A preview of the OS was available at the time in the form of an emulator image target at developers although the OS was later discontinued before release.
The work was released as an alpha in Flutter v2.2; this writeup gives more details. The Flutter team later decided to back out the UWP aspects due to concerns about the future of the UWP model as described in the following issue: flutter/flutter#14967 (comment).
The change lists encompase:
- adding a native win32 embedder implementation to Flutter Engine replacing the prior temporary implementation that was based on the GLFW library.
- adding support to Angle for SpriteVisual hosting. This leveraged new Windows compositor API's that shipped in Windows 10 to integrate Angle 3D content into both win32 and UWP UI views.
- adding a UWP Flutter Engine embedding implementation leveraging 1 and 2 above.
Changlists representing the above functionality:
- Flutter Engine: https://github.com/flutter/engine/pulls?q=author:clarkezone
- Angle
SpriteVisual
hosting: https://chromium-review.googlesource.com/q/project:angle/angle+status:merged+jeclarke - Angle build support for UWP: https://chromium-review.googlesource.com/q/project:angle/angle+status:merged+clarkezone
- Flutter Framework: https://github.com/flutter/flutter/issues?q=author%3Aclarkezone
Demos can be found on YouTube.