ryujinx-mirror/Ryujinx.Graphics.Vulkan
Ac_K a1ddaa2736
ui: Fixes disposing on GTK/Avalonia and Firmware Messages on Avalonia (#3885)
* ui: Only wait on _exitEvent when MainLoop is active under GTK

This fixes a dispose issue under Horizon/GTK, we don't check if the ApplicationClient is null so it throw NCE. We don't check if the main loop is active and waiting an event which is set in the main loop... So that could lead to a freeze.

Everything works fine in GTK now.

Related issue: https://github.com/Ryujinx/Ryujinx/issues/3873

As a side note, same kind of issue appear in Avalonia UI too. Firmware's popup doesn't show anything and the emulator just freeze.

* TSRBerry's change

Co-authored-by: TSRBerry <20988865+TSRBerry@users.noreply.github.com>

* Fix Avalonia crashing/freezing

* Add Avalonia OpenGL fixes

* Fix firmware popup on windows

* Fixes everything

* Add _initialized bool to VulkanRenderer and OpenGL Window

Co-authored-by: TSRBerry <20988865+TSRBerry@users.noreply.github.com>
2022-11-24 15:08:27 +01:00
..
Queries Vulkan backend (#2518) 2022-07-31 18:26:06 -03:00
Shaders Implement HLE macro for DrawElementsIndirect (#3748) 2022-11-16 14:53:04 -03:00
Auto.cs Vulkan backend (#2518) 2022-07-31 18:26:06 -03:00
AutoFlushCounter.cs Periodically Flush Commands for Vulkan (#3689) 2022-09-14 13:48:31 -03:00
BackgroundResources.cs Vulkan backend (#2518) 2022-07-31 18:26:06 -03:00
BitMap.cs Vulkan backend (#2518) 2022-07-31 18:26:06 -03:00
BufferHolder.cs Vulkan: Don't create preload command buffer outside a render pass (#3864) 2022-11-18 14:58:56 +00:00
BufferManager.cs Implement HLE macro for DrawElementsIndirect (#3748) 2022-11-16 14:53:04 -03:00
BufferState.cs Convert Quads to Triangles in Vulkan (#3715) 2022-09-20 18:38:48 -03:00
BufferUsageBitmap.cs Support use of buffer ranges with size 0 (#3736) 2022-10-03 20:08:38 -03:00
CacheByRange.cs Implement HLE macro for DrawElementsIndirect (#3748) 2022-11-16 14:53:04 -03:00
CommandBufferPool.cs Vulkan backend (#2518) 2022-07-31 18:26:06 -03:00
CommandBufferScoped.cs Vulkan backend (#2518) 2022-07-31 18:26:06 -03:00
Constants.cs Vulkan backend (#2518) 2022-07-31 18:26:06 -03:00
DescriptorSetCollection.cs Vulkan backend (#2518) 2022-07-31 18:26:06 -03:00
DescriptorSetManager.cs Vulkan backend (#2518) 2022-07-31 18:26:06 -03:00
DescriptorSetUpdater.cs GAL: Send all buffer assignments at once rather than individually (#3881) 2022-11-24 07:50:59 +00:00
DisposableBuffer.cs Vulkan backend (#2518) 2022-07-31 18:26:06 -03:00
DisposableBufferView.cs Vulkan backend (#2518) 2022-07-31 18:26:06 -03:00
DisposableFramebuffer.cs Vulkan backend (#2518) 2022-07-31 18:26:06 -03:00
DisposableImage.cs Vulkan backend (#2518) 2022-07-31 18:26:06 -03:00
DisposableImageView.cs Vulkan backend (#2518) 2022-07-31 18:26:06 -03:00
DisposableMemory.cs Vulkan backend (#2518) 2022-07-31 18:26:06 -03:00
DisposablePipeline.cs Vulkan backend (#2518) 2022-07-31 18:26:06 -03:00
DisposableRenderPass.cs Vulkan backend (#2518) 2022-07-31 18:26:06 -03:00
DisposableSampler.cs Vulkan backend (#2518) 2022-07-31 18:26:06 -03:00
EnumConversion.cs Convert Quads to Triangles in Vulkan (#3715) 2022-09-20 18:38:48 -03:00
FenceHelper.cs Vulkan backend (#2518) 2022-07-31 18:26:06 -03:00
FenceHolder.cs Vulkan backend (#2518) 2022-07-31 18:26:06 -03:00
FormatCapabilities.cs Fix R4G4B4A4 format on Vulkan (#3696) 2022-09-13 07:59:38 +02:00
FormatConverter.cs Vulkan backend (#2518) 2022-07-31 18:26:06 -03:00
FormatTable.cs Fix R4G4B4A4 format on Vulkan (#3696) 2022-09-13 07:59:38 +02:00
FramebufferParams.cs Implement HLE macros for render target clears (#3528) 2022-08-04 21:30:08 +00:00
HardwareCapabilities.cs Restride vertex buffer when stride causes attributes to misalign in Vulkan. (#3679) 2022-09-08 20:30:19 -03:00
HashTableSlim.cs Vulkan backend (#2518) 2022-07-31 18:26:06 -03:00
HelperShader.cs GAL: Send all buffer assignments at once rather than individually (#3881) 2022-11-24 07:50:59 +00:00
IdList.cs Vulkan backend (#2518) 2022-07-31 18:26:06 -03:00
IndexBufferPattern.cs Fix primitive count calculation for topology conversion (#3763) 2022-10-16 19:25:40 -03:00
IndexBufferState.cs Implement HLE macro for DrawElementsIndirect (#3748) 2022-11-16 14:53:04 -03:00
MemoryAllocation.cs Vulkan backend (#2518) 2022-07-31 18:26:06 -03:00
MemoryAllocator.cs Vulkan backend (#2518) 2022-07-31 18:26:06 -03:00
MemoryAllocatorBlockList.cs Vulkan backend (#2518) 2022-07-31 18:26:06 -03:00
MultiFenceHolder.cs Vulkan backend (#2518) 2022-07-31 18:26:06 -03:00
NativeArray.cs Rename ToSpan to AsSpan (#3556) 2022-08-11 18:07:37 -03:00
PersistentFlushBuffer.cs Vulkan backend (#2518) 2022-07-31 18:26:06 -03:00
PipelineBase.cs GAL: Send all buffer assignments at once rather than individually (#3881) 2022-11-24 07:50:59 +00:00
PipelineConverter.cs Vulkan: Implement multisample <-> non-multisample copies and depth-stencil resolve (#3723) 2022-11-02 18:17:19 -03:00
PipelineDynamicState.cs Vulkan: Use dynamic state for blend constants (#3793) 2022-10-25 23:49:23 +00:00
PipelineFull.cs Update units of memory from decimal to binary prefixes (#3716) 2022-11-16 23:27:42 +01:00
PipelineHelperShader.cs Restride vertex buffer when stride causes attributes to misalign in Vulkan. (#3679) 2022-09-08 20:30:19 -03:00
PipelineLayoutCache.cs Vulkan backend (#2518) 2022-07-31 18:26:06 -03:00
PipelineLayoutCacheEntry.cs Vulkan backend (#2518) 2022-07-31 18:26:06 -03:00
PipelineLayoutFactory.cs Restride vertex buffer when stride causes attributes to misalign in Vulkan. (#3679) 2022-09-08 20:30:19 -03:00
PipelineState.cs Minor improvement to Vulkan pipeline state and bindings management (#3829) 2022-11-10 13:38:38 -03:00
PipelineUid.cs Minor improvement to Vulkan pipeline state and bindings management (#3829) 2022-11-10 13:38:38 -03:00
Ryujinx.Graphics.Vulkan.csproj infra: Migrate to .NET 7 (#3795) 2022-11-09 20:22:43 +01:00
SamplerHolder.cs Vulkan: Fix sampler custom border color (#3751) 2022-10-10 08:35:44 +02:00
SemaphoreHolder.cs Vulkan backend (#2518) 2022-07-31 18:26:06 -03:00
Shader.cs Avoid allocating unmanaged string per shader (#3730) 2022-10-02 10:59:34 +02:00
ShaderCollection.cs Vulkan: Don't create preload command buffer outside a render pass (#3864) 2022-11-18 14:58:56 +00:00
SpecInfo.cs Vulkan: Implement multisample <-> non-multisample copies and depth-stencil resolve (#3723) 2022-11-02 18:17:19 -03:00
StagingBuffer.cs Vulkan: Fix some issues with CacheByRange (#3743) 2022-10-08 11:28:27 -03:00
SyncManager.cs Vulkan backend (#2518) 2022-07-31 18:26:06 -03:00
TextureBuffer.cs GPU: Pass SpanOrArray for Texture SetData to avoid copy (#3745) 2022-10-08 12:04:47 -03:00
TextureCopy.cs Vulkan: Implement multisample <-> non-multisample copies and depth-stencil resolve (#3723) 2022-11-02 18:17:19 -03:00
TextureStorage.cs Dispose Vulkan TextureStorage when views hit 0 instead of immediately (#3738) 2022-10-18 23:52:08 +00:00
TextureView.cs Vulkan: Implement multisample <-> non-multisample copies and depth-stencil resolve (#3723) 2022-11-02 18:17:19 -03:00
Vendor.cs Vulkan backend (#2518) 2022-07-31 18:26:06 -03:00
VertexBufferState.cs Fix various issues caused by Vertex/Index buffer conversions (#3762) 2022-10-16 19:38:58 -03:00
VulkanConfiguration.cs Use RGBA16 vertex format if RGB16 is not supported on Vulkan (#3552) 2022-08-20 16:20:27 -03:00
VulkanException.cs Vulkan backend (#2518) 2022-07-31 18:26:06 -03:00
VulkanInitialization.cs Implement HLE macro for DrawElementsIndirect (#3748) 2022-11-16 14:53:04 -03:00
VulkanRenderer.cs ui: Fixes disposing on GTK/Avalonia and Firmware Messages on Avalonia (#3885) 2022-11-24 15:08:27 +01:00
Window.cs Avalonia - Use embedded window for avalonia (#3674) 2022-09-19 15:05:26 -03:00
WindowBase.cs Avalonia - Use embedded window for avalonia (#3674) 2022-09-19 15:05:26 -03:00