From 6d8951027221504119eb40f6d9df0735e13142ef Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Wies=C5=82aw=20=C5=A0olt=C3=A9s?= Date: Mon, 8 Aug 2016 21:43:24 +0200 Subject: [PATCH] Added AppBuilder and Initialize --- .../Avalonia.Android/AndroidPlatform.cs | 41 +++++++++++-------- 1 file changed, 24 insertions(+), 17 deletions(-) diff --git a/src/Android/Avalonia.Android/AndroidPlatform.cs b/src/Android/Avalonia.Android/AndroidPlatform.cs index 1840e90886..bbb6c904dc 100644 --- a/src/Android/Avalonia.Android/AndroidPlatform.cs +++ b/src/Android/Avalonia.Android/AndroidPlatform.cs @@ -1,17 +1,27 @@ +using System; +using System.IO; using Avalonia.Android.CanvasRendering; using Avalonia.Android.Platform; using Avalonia.Android.Platform.Input; -using Avalonia.Android.Platform.Specific; +using Avalonia.Android.Platform.SkiaPlatform; +using Avalonia.Controls; using Avalonia.Controls.Platform; using Avalonia.Input; using Avalonia.Input.Platform; using Avalonia.Platform; using Avalonia.Shared.PlatformSupport; -using Avalonia.Skia; -using System; -using System.Collections.Generic; -using Avalonia.Android.Platform.SkiaPlatform; -using System.IO; + +namespace Avalonia +{ + public static class AndroidApplicationExtensions + { + public static AppBuilder UseAndroid(this AppBuilder builder) + { + builder.WindowingSubsystem = Avalonia.Android.AndroidPlatform.Initialize; + return builder; + } + } +} namespace Avalonia.Android { @@ -25,26 +35,23 @@ namespace Avalonia.Android private readonly double _scalingFactor = 1; - AndroidPlatform() + public AndroidPlatform() + { + _scalingFactor = global::Android.App.Application.Context.Resources.DisplayMetrics.ScaledDensity; + } + + public static void Initialize() { AvaloniaLocator.CurrentMutable .Bind().ToTransient() .Bind().ToTransient() .Bind().ToSingleton() .Bind().ToSingleton() - .Bind().ToConstant(this) + .Bind().ToConstant(Instance) .Bind().ToConstant(new AndroidThreadingInterface()) .Bind().ToTransient() .Bind().ToTransient() - .Bind().ToConstant(this); - - SkiaPlatform.Initialize(); - - _scalingFactor = global::Android.App.Application.Context.Resources.DisplayMetrics.ScaledDensity; - - - //we have custom Assetloader so no need to overwrite it - + .Bind().ToConstant(Instance); } public void Init(Type applicationType)