From 77a769327630be68f5138ac0a4ce30f6dd11a260 Mon Sep 17 00:00:00 2001 From: Paul Schneider Date: Sat, 22 Aug 2026 16:09:35 +0100 Subject: [PATCH] Revert "build(android): downgrade Avalonia 12 -> 11.3.20 + Avalonia.Maui 11.3.0" This reverts commit a4bc7b5e6a7892e603878877a8c963fef662c83e. --- src/PostIt/Directory.Packages.props | 18 +++++----- src/PostIt/PostIt.Android/Application.cs | 32 +++++++++-------- src/PostIt/PostIt.Android/MainActivity.cs | 10 +----- .../PostIt.Android/PostIt.Android.csproj | 3 +- src/PostIt/PostIt/Maui/MauiEmbeddingApp.cs | 35 ------------------- src/PostIt/PostIt/PostIt.csproj | 2 +- src/Yavsc.Abstract/Yavsc.Abstract.csproj | 2 +- src/Yavsc.Api.Client/Yavsc.Api.Client.csproj | 2 +- 8 files changed, 30 insertions(+), 74 deletions(-) delete mode 100644 src/PostIt/PostIt/Maui/MauiEmbeddingApp.cs diff --git a/src/PostIt/Directory.Packages.props b/src/PostIt/Directory.Packages.props index 023d0654..59b6b600 100644 --- a/src/PostIt/Directory.Packages.props +++ b/src/PostIt/Directory.Packages.props @@ -3,20 +3,18 @@ - - - - - - - - + + + + + + + - - + diff --git a/src/PostIt/PostIt.Android/Application.cs b/src/PostIt/PostIt.Android/Application.cs index 62ace02b..fb6b08d3 100644 --- a/src/PostIt/PostIt.Android/Application.cs +++ b/src/PostIt/PostIt.Android/Application.cs @@ -1,19 +1,21 @@ -using Android.App; +using Android.App; +using Android.Runtime; +using Avalonia; +using Avalonia.Android; -namespace PostIt.Android; - -/// -/// Bare shell for Android. Avalonia -/// 11 initialises its platform services from -/// (which extends AvaloniaMainActivity<App>); no per-Application -/// Avalonia setup is needed here. Kept only so that the [Application] entry -/// stays present in the merged manifest, which the Android runtime expects -/// when the manifest declares a custom android:name in the application tag. -/// -[Application] -public class Application : Android.App.Application +namespace PostIt.Android { - public Application(nint javaReference, JniHandleOwnership transfer) : base(javaReference, transfer) + [Application] + public class Application : AvaloniaAndroidApplication { + protected Application(nint javaReference, JniHandleOwnership transfer) : base(javaReference, transfer) + { + } + + protected override AppBuilder CustomizeAppBuilder(AppBuilder builder) + { + return base.CustomizeAppBuilder(builder) + .WithInterFont(); + } } -} \ No newline at end of file +} diff --git a/src/PostIt/PostIt.Android/MainActivity.cs b/src/PostIt/PostIt.Android/MainActivity.cs index 057703a4..1b413a9f 100644 --- a/src/PostIt/PostIt.Android/MainActivity.cs +++ b/src/PostIt/PostIt.Android/MainActivity.cs @@ -2,7 +2,6 @@ using Android.App; using Android.Content.PM; using Android.Content; using Avalonia.Android; -using Avalonia; using AndroidX.Emoji2.Text; namespace PostIt.Android; @@ -15,15 +14,8 @@ namespace PostIt.Android; MainLauncher = true, LaunchMode = LaunchMode.SingleTask, ConfigurationChanges = ConfigChanges.Orientation | ConfigChanges.ScreenSize | ConfigChanges.UiMode)] -public class MainActivity : AvaloniaMainActivity +public class MainActivity : AvaloniaMainActivity { - protected override AppBuilder CustomizeAppBuilder(AppBuilder builder) - { - return base.CustomizeAppBuilder(builder) - .UseMaui(this) - .WithInterFont(); - } - /// /// Strongly-typed handle to the current MainActivity instance, set in /// and consumed by platform services such as diff --git a/src/PostIt/PostIt.Android/PostIt.Android.csproj b/src/PostIt/PostIt.Android/PostIt.Android.csproj index 1f865b07..7669ef62 100644 --- a/src/PostIt/PostIt.Android/PostIt.Android.csproj +++ b/src/PostIt/PostIt.Android/PostIt.Android.csproj @@ -1,7 +1,7 @@ Exe - net9.0-android36.0 + net10.0-android android-arm64;android-x64 23.0.0 @@ -24,7 +24,6 @@ - diff --git a/src/PostIt/PostIt/Maui/MauiEmbeddingApp.cs b/src/PostIt/PostIt/Maui/MauiEmbeddingApp.cs deleted file mode 100644 index 4f58b4f2..00000000 --- a/src/PostIt/PostIt/Maui/MauiEmbeddingApp.cs +++ /dev/null @@ -1,35 +0,0 @@ -using Microsoft.Maui.Controls; - -namespace PostIt.Maui; - -/// -/// Empty MAUI application registered as the embedding host for -/// Avalonia.Maui. Avalonia.Maui expects a -/// -derived type so that -/// its .UseMaui<TMauiApp>(activity) extension can build the -/// embedding pipeline (services, handlers, IPlatformApplication). -/// -/// We never actually display any MAUI controls — the embedding sits in front -/// of Avalonia so that Avalonia's Android platform layer (which is otherwise -/// bound to a stub on Avalonia 12 / present-but-broken on Avalonia 11 without -/// MAUI) gets the real Android Context and runs the surface view -/// lifecycle correctly. This class exists to satisfy the generic constraint -/// of UseMaui<TMauiApp> and gives MAUI something to attach its -/// handler tree to. -/// -/// Override CreateWindow with a no-op or leave the default; the -/// virtual MAUI window is consumed by Avalonia.Maui's embedding and -/// never surfaces to the user (Avalonia owns the visual tree). -/// -public class MauiEmbeddingApp : Application -{ - public MauiEmbeddingApp() - { - } - - protected override Window CreateWindow(IActivationState? activationState) - { - // No-op window: Avalonia.Maui wraps it and never shows it. - return new Window(); - } -} \ No newline at end of file diff --git a/src/PostIt/PostIt/PostIt.csproj b/src/PostIt/PostIt/PostIt.csproj index 90fdd837..1b48c21f 100644 --- a/src/PostIt/PostIt/PostIt.csproj +++ b/src/PostIt/PostIt/PostIt.csproj @@ -1,6 +1,6 @@ - net9.0 + net10.0 enable latest true diff --git a/src/Yavsc.Abstract/Yavsc.Abstract.csproj b/src/Yavsc.Abstract/Yavsc.Abstract.csproj index 2305fc8c..7a4f83ae 100644 --- a/src/Yavsc.Abstract/Yavsc.Abstract.csproj +++ b/src/Yavsc.Abstract/Yavsc.Abstract.csproj @@ -1,6 +1,6 @@ - net9.0 + net10.0 enable A shared model for a little client/server app, dealing about establishing some contract, between some human client and provider. diff --git a/src/Yavsc.Api.Client/Yavsc.Api.Client.csproj b/src/Yavsc.Api.Client/Yavsc.Api.Client.csproj index c078789c..ade7ca17 100644 --- a/src/Yavsc.Api.Client/Yavsc.Api.Client.csproj +++ b/src/Yavsc.Api.Client/Yavsc.Api.Client.csproj @@ -1,6 +1,6 @@ - net9.0 + net10.0 enable Yavsc.Api.Client Yavsc.Api.Client