‘What happened?’ – Visual Studio Magazine
WinUI 3 Team Asked “What Happened” About Delayed Open Source Plans
Reddit AMA attendees are also asking for support for multiple windows, XAML islands, and more.
A developer asked Microsoft’s WinUI 3 development team about delayed open source plans for the nearly two-year-old project that serves as the company’s next-gen UI library for building Windows apps. Part of the answer was that it was “harder than we thought” getting the project into the open source community. So it’s still a work in progress.
Microsoft explains that WinUI 3 is the now decoupled component of the native UI platform that is included in the scope of delivery of the Windows App SDK (formerly called “Project Reunion”). It uses Fluent Design to provide a native user experience (UX) framework for Windows desktop (Win32) and UWP applications, the two schemes that are bridged in a “reunion”.
The Windows App SDK development team recently hosted a liveask me something“(AMA) event on the Reddit social site on the occasion of the latest v1.0 debut. This raised the question of the delayed open source plans for WinUI 3.
“When WinUI3 was first announced, one of the big promises was open source and we were all excited,” said a post by dotMorten. “It’s been almost two years since that promise, and open source planning has been tacitly removed from the roadmap entirely and is never discussed. What happened and when will we see open sourcing WinUI so we can get better debugging and community engagement like we saw with .NET Core? ”
Here is the answer:
Ryan Demopoulos here (the guy who’s been talking about open source for two years). They asked “what happened” – a very legitimate question. Basically two things happened:
- Post-sourcing over 3 million lines of code, including repairing thousands of private API calls, was more difficult than we thought.
- Our top priority with major stable releases like 0.5, 0.8 and the last 1.0 has been to make sure we have the right features with as much stability as possible. This meant the team was focusing on those skills, and this came at the expense of advances toward open source. As already mentioned, we just shipped WinAppSDK 1.0, which was a huge improvement for the WinUI 3 team and everyone involved. We are already looking at 1.1 and the holidays are just around the corner. Internally, I’ve already had a number of conversations with our team about what to do with open source – when can we realistically achieve this given that there is still a lot to do and processes to implement? As soon as I have a better sense of what’s left and we can tackle the remaining items, I’ll update the community with this information. Probably at one of our community calls in 2022.
“Thanks for providing a detailed update on this!” rang in another participant. “It’s nice that it hasn’t been forgotten.”
Other delays: Multiple Windows, XAML Islands, etc.
The open sourcing of the WinUI 3 UI component of the Windows App SDK is just one of the aspects of the project that is lagging behind as the AMA also discussed other features that are not fully ready, including support for multiple windows and XAML islands.
Indeed it is Windows App SDK Portal which now serves as a roadmap shows “Multiple Window Support” for v.1.1, which will probably still be missing in the 2nd. “). Other functions planned for v1.1 include push notifications for non-store, local apps Toast notifications and more.
XAML islands, on the other hand, are “considering“, in addition to media, card, and ink controls, along with many other features. XAML Islands enables Windows coders to leverage new parts of the user interface from the UWP in existing Win32 apps, including Windows Forms and Windows Presentation Foundation (WPF ) Technologies, and Windows 10 version 1903 and later developers can host WinRT XAML controls in non-UWP desktop applications using XAML Islands, Microsoft explains here.
During the Reddit AMA, a Microsoft developer provided more information about the project when a participant asked about the schedule for XAML Islands in WinUI 3:
XAML Islands is one of the next priorities for WinUI 3. It’s a pretty big room; We have learned a lot from XAML Islands in UWP XAML (WinUI 2), and we are already trying to bring this feature to WinUI 3, but in an improved form. I expect how this goes that you will start to see experimental Islands APIs when we ship 1.1 and probably not have stable versions of the APIs until 1.2-ish. But the team is already actively working on it and this work will continue until 2022 and 2023 as we work on more and more scenarios. It is probably a journey of a total of 2 years + that we want to successively bring online as soon as possible.
What was done in WinUI 3 in Windows App SDK v1.0, the Release Notes show off these new features and updates:
- We added new controls (PipsPager, Expander, BreadcrumbBar) and updated existing controls to reflect the latest Windows styles from WinUI 2.6.
- MSIX packaging for individual projects is supported in WinUI by creating a new application with the template “Blank App, Packaged …”.
- We now support deploying WinUI 3 apps without an MSIX package on Windows versions 1809 and above. Please take a look Create an unzipped WinUI 3 desktop app for more information.
WinUI 3 projects can now set their target version to Windows 10, version 1809. Previously, they could only be set to version 1903. In-App Toolbar, Hot Reload, and Live Visual Tree for WinUI-packaged apps are supported in Visual Studio 2022 Preview 5 and GA.
Regarding the Windows App SDK in general, Microsoft said this in the AMA:
“What’s new, you ask? The stable version 1.0 of WinUI can be used for shipping production applications with other apps. This version of the Windows App SDK focuses on unpackaged app support on x86 and x64. Look out for ARM64 support that will be added in the next stable release. “