From c8f9292babd5aa6021ce1bd6a977130baebb7de3 Mon Sep 17 00:00:00 2001 From: Emmanuel Hansen Date: Tue, 16 Aug 2022 16:32:37 +0000 Subject: Avalonia - Couple fixes and improvements to vulkan (#3483) * drop split devices, rebase * add fallback to opengl if vulkan is not available * addressed review * ensure present image references are incremented and decremented when necessary * allow changing vsync for vulkan * fix screenshot on avalonia vulkan * save favorite when toggled * improve sync between popups * use separate devices for each new window * fix crash when closing window * addressed review * don't create the main window with immediate mode * change skia vk delegate to method * update vulkan throwonerror * addressed review --- Ryujinx.Ava/Ui/Controls/OpenGLRendererControl.cs | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'Ryujinx.Ava/Ui/Controls/OpenGLRendererControl.cs') diff --git a/Ryujinx.Ava/Ui/Controls/OpenGLRendererControl.cs b/Ryujinx.Ava/Ui/Controls/OpenGLRendererControl.cs index db9caca1..e58bdaa0 100644 --- a/Ryujinx.Ava/Ui/Controls/OpenGLRendererControl.cs +++ b/Ryujinx.Ava/Ui/Controls/OpenGLRendererControl.cs @@ -37,7 +37,7 @@ namespace Ryujinx.Ava.Ui.Controls public override void DestroyBackgroundContext() { - _image = null; + Image = null; if (_fence != IntPtr.Zero) { @@ -57,6 +57,8 @@ namespace Ryujinx.Ava.Ui.Controls Dispatcher.UIThread.InvokeAsync(() => { Image = (int)image; + + InvalidateVisual(); }).Wait(); if (_fence != IntPtr.Zero) @@ -66,7 +68,7 @@ namespace Ryujinx.Ava.Ui.Controls _fence = GL.FenceSync(SyncCondition.SyncGpuCommandsComplete, WaitSyncFlags.None); - QueueRender(); + InvalidateVisual(); _gameBackgroundWindow.SwapBuffers(); } -- cgit v1.2.3