diff --git a/src/Avalonia.OpenGL/AngleOptions.cs b/src/Avalonia.OpenGL/AngleOptions.cs index 84744288ed..40a673b574 100644 --- a/src/Avalonia.OpenGL/AngleOptions.cs +++ b/src/Avalonia.OpenGL/AngleOptions.cs @@ -7,7 +7,8 @@ namespace Avalonia.OpenGL public enum PlatformApi { DirectX9, - DirectX11 + DirectX11, + WGL } public IList AllowedPlatformApis { get; set; } = null; diff --git a/src/Avalonia.OpenGL/EglDisplay.cs b/src/Avalonia.OpenGL/EglDisplay.cs index 89dee4fc37..c84ef4533d 100644 --- a/src/Avalonia.OpenGL/EglDisplay.cs +++ b/src/Avalonia.OpenGL/EglDisplay.cs @@ -36,7 +36,12 @@ namespace Avalonia.OpenGL throw new OpenGlException("eglGetPlatformDisplayEXT is not supported by libegl.dll"); var allowedApis = AvaloniaLocator.Current.GetService()?.AllowedPlatformApis - ?? new [] {AngleOptions.PlatformApi.DirectX11, AngleOptions.PlatformApi.DirectX9}; + ?? new [] + { + AngleOptions.PlatformApi.WGL, + AngleOptions.PlatformApi.DirectX11, + AngleOptions.PlatformApi.DirectX9 + }; foreach (var platformApi in allowedApis) { @@ -45,6 +50,8 @@ namespace Avalonia.OpenGL dapi = EGL_PLATFORM_ANGLE_TYPE_D3D9_ANGLE; else if (platformApi == AngleOptions.PlatformApi.DirectX11) dapi = EGL_PLATFORM_ANGLE_TYPE_D3D11_ANGLE; + else if (platformApi == AngleOptions.PlatformApi.WGL) + dapi = EGL_PLATFORM_ANGLE_TYPE_ANGLE; else continue;