Going ‘Where Developers Are,’ Microsoft Contributes Foldable Tech to Flutter
Although Google’s Flutter development platform might be seen as a competitor to Microsoft’s Xamarin.Forms and .NET MAUI, Microsoft’s Surface Duo dev team is continuing to contribute foldable tech to Google’s open source mobile-centric project.
“Our goal is to be where developers are and provide the best possible experience when developing for Surface Duo and these announcements only bring us all closer together,” said the dev team’s Andrei Diaconu in a Feb. 24 Foldable Flutter follow-up.
Those announcements follow a March 2021 update about how the Surface Duo team was contributing open source code to boost support for foldable scenarios, which come with inherent development challenges. “We love Flutter and foldable devices and want developers to have the best possible experience when working with both, Diaconu said at the time. “We’re contributing to Flutter to give it foldable capabilities.”
Specifically, the team opened pull requests (PRs) on the Flutter project’s framework PR (Foldable support & TwoPane Widget #77156) and engine (Display Features support (Foldable and Cutout) #24756.) “We made a lot of progress and are happy to announce that the Engine PR is merged,” Diaconu reported last week. “The initial Framework PR was split into smaller PRs, and some of them have also been merged.”
Those PRs provide functionality around Display Features, which are parts of a display that can be obstructed by hardware features.
It’s also easier for developers to try out the dev team’s contributions that haven’t yet been merged, which used to be much more complicated in that it required a custom configured Flutter Engine. “Things are a lot simpler now,” Diaconu said.
He also pointed to new Surface Duo Flutter samples, depicted above.
“These showcase all the design patterns that our team proposes for dual-screen devices,” Diaconu said. “They also show you a few things you can do with dialogs or the hinge angle.”
The Flutter team made big news recently by announcing new support for creating Windows apps in addition to mobile apps. That happens to be key functionality for .NET MAUI, which Microsoft calls an evolution of Xamarin.Forms because it brings that same Windows app development support.
That might lead some to view Flutter/Google as a competitor to .NET MAUI/Microsoft, but not Diaconu.
“The Flutter team has recently released Flutter 2.10,” he said. “The most important announcement made with this release is Windows support reaching production quality. Our goal is to be where developers are and provide the best possible experience when developing for Surface Duo and these announcements only bring us all closer together.”
That Google and Microsoft are together at all on this stuff might seem surprising, as Google’s head Flutter guy, Tim Sneath, is a former principal lead program manager for Visual Studio who in 2017 left Microsoft to join the Flutter team, aiming a few negative parting shots at Microsoft. Sneath is now the product manager for Flutter and its associated programming language, Dart.
Despite Sneath’s criticism of Microsoft when he went out the door, there appears to be no lingering ill will. For example, when Google announced the Windows app support, Microsoft’s Kevin Gallo said: “We’re delighted to see Flutter adding support for creating Windows apps. Windows is an open platform, and we welcome all developers. We’re excited to see Flutter developers bring their experiences to Windows and also publish to the Microsoft Store. Flutter support for Windows is a big step for the community, and we can’t wait to see what you’ll bring to Windows!”
At the same time, Sneath shouted out some thanks to Microsoft: “Several teams from Microsoft have contributed to today’s announcement. In particular, we’d like to express our gratitude to the Fluent design team for their contribution of iconography for Flutter apps on Windows. Their fluentui_system_icons package has been awarded Flutter Favorite status to signify its quality. We’ve also been impressed with the investments Microsoft has made around accessibility for Windows, and we’re grateful for that team’s assistance to ensure Flutter has support for screen readers from day one.”