From fbf2b09706a55856c76aaf9051007eedf1f4b0ab Mon Sep 17 00:00:00 2001
From: TSRBerry <20988865+TSRBerry@users.noreply.github.com>
Date: Tue, 29 Nov 2022 06:33:46 +0100
Subject: [PATCH] ava: Make dialogs using an overlay window work on Linux
 (#3938)

---
 Ryujinx.Ava/Ryujinx.Ava.csproj                 |  2 +-
 Ryujinx.Ava/Ui/Controls/ContentDialogHelper.cs | 13 ++++++++++---
 2 files changed, 11 insertions(+), 4 deletions(-)

diff --git a/Ryujinx.Ava/Ryujinx.Ava.csproj b/Ryujinx.Ava/Ryujinx.Ava.csproj
index c851b45135..9818914cfe 100644
--- a/Ryujinx.Ava/Ryujinx.Ava.csproj
+++ b/Ryujinx.Ava/Ryujinx.Ava.csproj
@@ -27,7 +27,7 @@
     <PackageReference Include="Avalonia.Svg.Skia" Version="0.10.18" />
     <PackageReference Include="jp2masa.Avalonia.Flexbox" Version="0.2.0" />
     <PackageReference Include="DynamicData" Version="7.12.8" />
-    <PackageReference Include="FluentAvaloniaUI" Version="1.4.4" />
+    <PackageReference Include="FluentAvaloniaUI" Version="1.4.5" />
     <PackageReference Include="XamlNameReferenceGenerator" Version="1.4.2" />
 
     <PackageReference Include="OpenTK.Core" Version="4.7.2" />
diff --git a/Ryujinx.Ava/Ui/Controls/ContentDialogHelper.cs b/Ryujinx.Ava/Ui/Controls/ContentDialogHelper.cs
index 9fcc2d2ec0..9cf4231c51 100644
--- a/Ryujinx.Ava/Ui/Controls/ContentDialogHelper.cs
+++ b/Ryujinx.Ava/Ui/Controls/ContentDialogHelper.cs
@@ -127,9 +127,16 @@ namespace Ryujinx.Ava.Ui.Controls
                     contentDialog.PrimaryButtonClick += deferCloseAction;
                 }
 
-                await contentDialog.ShowAsync(ContentDialogPlacement.Popup);
+                if (useOverlay)
+                {
+                    await contentDialog.ShowAsync(overlay, ContentDialogPlacement.Popup);
 
-                overlay?.Close();
+                    overlay!.Close();
+                }
+                else
+                {
+                    await contentDialog.ShowAsync(ContentDialogPlacement.Popup);
+                }
             }
 
             if (useOverlay)
@@ -391,4 +398,4 @@ namespace Ryujinx.Ava.Ui.Controls
             return string.Empty;
         }
     }
-}
+}
\ No newline at end of file