forked from Mirror/Ryujinx
6f0395538b
* wip * use embedded window * fix race condition on opengl Windows * fix glx issues on prime nvidia * fix mouse support win32 * clean up * addressed review * addressed review * fix warnings * fix sotware keyboard dialog * Update Ryujinx.Ava/Ui/Applet/SwkbdAppletDialog.axaml.cs Co-authored-by: gdkchan <gab.dark.100@gmail.com> * remove double semi Co-authored-by: gdkchan <gab.dark.100@gmail.com>
33 lines
No EOL
859 B
C#
33 lines
No EOL
859 B
C#
using Ryujinx.Ava.Ui.Controls;
|
|
using Silk.NET.Vulkan;
|
|
using SPB.Graphics.Vulkan;
|
|
using SPB.Platform.Win32;
|
|
using SPB.Platform.X11;
|
|
using SPB.Windowing;
|
|
using System;
|
|
|
|
namespace Ryujinx.Ava.Ui
|
|
{
|
|
public class VulkanEmbeddedWindow : EmbeddedWindow
|
|
{
|
|
private NativeWindowBase _window;
|
|
|
|
public SurfaceKHR CreateSurface(Instance instance)
|
|
{
|
|
if (OperatingSystem.IsWindows())
|
|
{
|
|
_window = new SimpleWin32Window(new NativeHandle(WindowHandle));
|
|
}
|
|
else if (OperatingSystem.IsLinux())
|
|
{
|
|
_window = X11Window;
|
|
}
|
|
else
|
|
{
|
|
throw new PlatformNotSupportedException();
|
|
}
|
|
|
|
return new SurfaceKHR((ulong?)VulkanHelper.CreateWindowSurface(instance.Handle, _window));
|
|
}
|
|
}
|
|
} |