diff --git a/src/Avalonia.DotNetCoreRuntime/AppBuilder.cs b/src/Avalonia.DotNetCoreRuntime/AppBuilder.cs
index 2b9b3083b1..2ce0ee32fb 100644
--- a/src/Avalonia.DotNetCoreRuntime/AppBuilder.cs
+++ b/src/Avalonia.DotNetCoreRuntime/AppBuilder.cs
@@ -37,12 +37,15 @@ namespace Avalonia
/// An instance.
public AppBuilder UsePlatformDetect()
{
+ var os = RuntimePlatform.GetRuntimeInfo().OperatingSystem;
//We don't have the ability to load every assembly right now, so we are
//stuck with manual configuration here
//Helpers are extracted to separate methods to take the advantage of the fact
//that CLR doesn't try to load dependencies before referencing method is jitted
- if (RuntimePlatform.GetRuntimeInfo().OperatingSystem == OperatingSystemType.WinNT)
+ if (os == OperatingSystemType.WinNT)
LoadWin32();
+ else if(os==OperatingSystemType.OSX)
+ LoadMonoMac();
else
LoadGtk3();
this.UseSkia();
@@ -50,6 +53,7 @@ namespace Avalonia
return this;
}
+ void LoadMonoMac() => this.UseMonoMac();
void LoadWin32() => this.UseWin32();
void LoadGtk3() => this.UseGtk3();
}
diff --git a/src/OSX/Avalonia.MonoMac/AssemblyInfo.cs b/src/OSX/Avalonia.MonoMac/AssemblyInfo.cs
new file mode 100644
index 0000000000..7aeb12b1de
--- /dev/null
+++ b/src/OSX/Avalonia.MonoMac/AssemblyInfo.cs
@@ -0,0 +1,5 @@
+using System;
+using System.Collections.Generic;
+using System.Text;using Avalonia.MonoMac;
+using Avalonia.Platform;
+[assembly: ExportWindowingSubsystem(OperatingSystemType.OSX, 1, "MonoMac", typeof(MonoMacPlatform), nameof(MonoMacPlatform.Initialize))]]
\ No newline at end of file
diff --git a/src/OSX/Avalonia.MonoMac/Avalonia.MonoMac.csproj b/src/OSX/Avalonia.MonoMac/Avalonia.MonoMac.csproj
index d5aa038b0e..3a279c05fb 100644
--- a/src/OSX/Avalonia.MonoMac/Avalonia.MonoMac.csproj
+++ b/src/OSX/Avalonia.MonoMac/Avalonia.MonoMac.csproj
@@ -2,8 +2,10 @@
netstandard2.0
True
+ false
+