-
Notifications
You must be signed in to change notification settings - Fork 1.2k
WinUI 3/islands support #5576
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
WinUI 3/islands support #5576
Conversation
* Playground Win32 - start getting it working on WinUI 3 * Change files * use lifted DWXS * DWXS header * create separate 16.7 packaging solution * format * fix non-winui3 case * use CI nuget downloaded and expanded to C:\temp * preprocessor defines * Port to WinUI 3 dev nuget with IXP payload (almost preview 2). Islands are rendering! * hosting namespace * Playground Win32 - start getting it working on WinUI 3 * DWXS header * create separate 16.7 packaging solution * format * guard against hresult (from failed activation) in UIManager, update reference to winui.props in WAP * Playground Win32 - start getting it working on WinUI 3 * DWXS header * create separate 16.7 packaging solution * format * Port to WinUI 3 dev nuget with IXP payload (almost preview 2). Islands are rendering! * Playground Win32 - start getting it working on WinUI 3 * use lifted DWXS * DWXS header * create separate 16.7 packaging solution * format * guard against hresult (from failed activation) in UIManager, update reference to winui.props in WAP * Playground Win32 - start getting it working on WinUI 3 * DWXS header * create separate 16.7 packaging solution * format * Port to WinUI 3 dev nuget with IXP payload (almost preview 2). Islands are rendering!
* Playground Win32 - start getting it working on WinUI 3 * Change files * use lifted DWXS * DWXS header * create separate 16.7 packaging solution * format * fix non-winui3 case * use CI nuget downloaded and expanded to C:\temp * preprocessor defines * Port to WinUI 3 dev nuget with IXP payload (almost preview 2). Islands are rendering! * hosting namespace * Playground Win32 - start getting it working on WinUI 3 * DWXS header * create separate 16.7 packaging solution * format * guard against hresult (from failed activation) in UIManager, update reference to winui.props in WAP * Playground Win32 - start getting it working on WinUI 3 * DWXS header * create separate 16.7 packaging solution * format * Port to WinUI 3 dev nuget with IXP payload (almost preview 2). Islands are rendering! * Playground Win32 - start getting it working on WinUI 3 * use lifted DWXS * DWXS header * create separate 16.7 packaging solution * format * guard against hresult (from failed activation) in UIManager, update reference to winui.props in WAP * Playground Win32 - start getting it working on WinUI 3 * DWXS header * create separate 16.7 packaging solution * format * Port to WinUI 3 dev nuget with IXP payload (almost preview 2). Islands are rendering!
|
Hello @asklar! Because this pull request has the Do note that I've been instructed to only help merge pull requests of this repository that have been opened for at least 10 hours, a condition that will be fulfilled in about 1 hour 55 minutes. No worries though, I will be back when the time is right! 😉 p.s. you can customize the way I help with merging this pull request, such as holding this pull request until a specific person approves. Simply @mention me (
|
| @@ -0,0 +1,13 @@ | |||
| <?xml version="1.0" encoding="utf-8"?> | |||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Could we avoid having spaces in the folder and file names? Many tools will fail to work. Especially if they originally created for Unix-like OSes.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@vmoroz can you clarify what tools created for Unix might have to deal with a Windows app packaging project?
This relies on bits that will only be available publicly via WinUI 3 preview 3, so for now I'm using a nuget package from CI.
All of the changes are usable with system xaml and winui 3 preview 2 except for one in
TouchEventHandler(since the IXP apis are changing), so that one change is behind aWINUI3_PREVIEW3preprocessor define.The facebook api for native UI manager has a fixed set of exception types it handles, and obviously those don't include
winrt::hresult_error, so when a WinRT type activation fails, ahresult_erroris thrown and goes unhandled crashing the whole process, so adding a conversion fromhresult_errorto the error message so that the frame that's lower in the stack handles it (since it catches among a few other things,std::strings).I'm also including a script to transform packages.config and winui.props automatically based on a new nuget package.
Microsoft Reviewers: Open in CodeFlow