hawkerm / monaco-editor-uwp

A Windows Runtime Component wrapper around the web-based Monaco Editor.
MIT License
152 stars 36 forks source link

WinUI 3 support #56

Open dotMorten opened 3 years ago

dotMorten commented 3 years ago

Do you have any plans on adding a WinUI 3 version of this awesome library? (and let me know if you'd need help)

dotMorten commented 3 years ago

Just realized there's a PR here: https://github.com/hawkerm/monaco-editor-uwp/pull/32

hawkerm commented 3 years ago

Hey @dotMorten, yeah it's on the radar. Alex has just been playing with it for testing in the Windows Community Toolkit sample app as he tests out various toolkit things for WinUI 3 in general.

I need to merge in all the Uno Fork and update the NuGet package. I plan to try and refactor the base Monaco interface bits to pure .NET Standard library and investigate having a better separation of the WebView like Uno folks did not just for WASM, but for WebView vs. WebView2 as well. Ideally we could test this via WPF, WinUI 3, and Blazor? as well to try and consolidate efforts...

That's the grand plan at least... I just need to set aside some time over the holidays to dig into it a bit. I've side-lined myself mostly to my day job this year (for better and for worse)... Good news is I plan to have these priorities merge a bit more closely together (for this project at least) in 2021.

hez2010 commented 3 years ago

Blocking issue: https://github.com/microsoft/microsoft-ui-xaml/issues/4377

hawkerm commented 3 years ago

@azchohfi in your latest update to #32, I'm assuming you didn't try the workaround yet from https://github.com/microsoft/microsoft-ui-xaml/issues/4377#issuecomment-791182187 to enable AddHostObjectToScript directly and remove the custom code, eh? (Feels like a simple extension we could write and have to make it more source compatible?)

I can maybe try investigating this more next week too? 😊

azchohfi commented 3 years ago

That is not out yet. I double checked. It will be out on 0.5.0, but its not out on the prerelease one.