Skip to content

Update to Avalonia 12, Swap to ReactiveUI.SourceGenerators for samples#45

Merged
mysteryx93 merged 14 commits intomysteryx93:masterfrom
FirehawkV21:master
Apr 24, 2026
Merged

Update to Avalonia 12, Swap to ReactiveUI.SourceGenerators for samples#45
mysteryx93 merged 14 commits intomysteryx93:masterfrom
FirehawkV21:master

Conversation

@FirehawkV21
Copy link
Copy Markdown
Contributor

@FirehawkV21 FirehawkV21 commented Apr 17, 2026

  • Update the Avalonia library and samples to Avalonia 12. Due to breaking changes on Avalonia 12, I had to do a few fixes (Using WindowDecorations instead of SystemDecorations and ensure that the Navigation classes and views are working with Avalonia 12).
  • Replaced ReactiveUI.Fody with ReactiveUI.SourceGenerators for the samples.

# TODO

Check that compiled bindings don't break the library. I haven't tested it fully, but unless the library relies on reflection, it shouldn't be a big issue.
Update samples to use compiled bindings. I have updated a few, but it it's just a two-line fix per view (Compiled bindings require a reference to the ViewModel in the View so it knows where to wire in.

EDIT: Libraries and samples are in working order (aside from the Android sample, which is partially working).

@mysteryx93
Copy link
Copy Markdown
Owner

Great job! I won't be having time to work into v12 update so if you can handle this release, that would be terrific!

Is there more that needs to be tweaked before publishing the new version for v12 compatibility? I can give you a few more days to test/tweak, and when it's ready I'll publish it.

Compiled bindings work just find with MvvmDialogs, shouldn't have any issue there.

Something in my todo list: use the new native navigation controls with MvvmDialogs for mobile navigation. This would be a bit more work though.

Other than that, are you seeing any parts that would need updating, like the standard dialog APIs to open/save files/folders?

@FirehawkV21
Copy link
Copy Markdown
Contributor Author

FirehawkV21 commented Apr 17, 2026

As of right now, the library itself works fine. I only had to fix up DialogService (since SystemDecorations was changed to WindowDecorations) and NavigationRoot.axaml (due to compiled binding being default now). The current issue is with the extension libraries.

Outside of these, the Avalonia library works as it should. I have tested more demos and they seem to work well enough. The only issue is the Demo.CrossPlatform. Android uses the IActivityApplicationLifetime interface now, so (at least StorageProvider) need a slight re-work to take it into account. The Android sample is broken right now. I'll see if I can fix it up.

@FirehawkV21
Copy link
Copy Markdown
Contributor Author

FirehawkV21 commented Apr 18, 2026

OK. I have the library and most of the samples fully working now. I did have to fork the MessageBox.Avalonia so I can get the PR done (at least until that library is updated). The only asterisk is that FluentAvalonia is (currently) in a pre-release.

The Android sample does work now, although some of the buttons just crash the app. The debugger just fails on me right now, so I can't diagnose the issue as to why.

Outside of these, I think it's done. If there any issues, let me know.

@FirehawkV21 FirehawkV21 marked this pull request as ready for review April 18, 2026 18:10
@mysteryx93
Copy link
Copy Markdown
Owner

just it would have to be published as a preview since it relies on preview dependencies

Even MessageBox.Avalonia can't be referenced from a publish until they release your PR

@FirehawkV21
Copy link
Copy Markdown
Contributor Author

Fine by me.

…ut leave in commented code that connects the one).
@FirehawkV21
Copy link
Copy Markdown
Contributor Author

FirehawkV21 commented Apr 21, 2026

Quick update: The PR for MessageBox.Avalonia got merged and they've released a new version for it. I've updated my PR to use that instead.

I've also removed the old DevTools (since it was removed and the docs mention the new one as a replacement). I'm not sure if I should add it in (since it's part of the Avalona Plus subscription), so I left code commented in that activates and let you decide if you want to or not.

@mysteryx93
Copy link
Copy Markdown
Owner

DevTools is just in the demo? Doesn't really matter; but if it's not free anymore then better remove it

@mysteryx93 mysteryx93 merged commit 76ac114 into mysteryx93:master Apr 24, 2026
@mysteryx93
Copy link
Copy Markdown
Owner

v2.3 is now published.

Could you write a quick changelog?

@mysteryx93
Copy link
Copy Markdown
Owner

Someone is having an issue on Android, would you have time to check it out?
#46

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants