aboutsummaryrefslogtreecommitdiff
path: root/Ryujinx.Ava/Ui/Windows/DlcManagerWindow.axaml.cs
diff options
context:
space:
mode:
Diffstat (limited to 'Ryujinx.Ava/Ui/Windows/DlcManagerWindow.axaml.cs')
-rw-r--r--Ryujinx.Ava/Ui/Windows/DlcManagerWindow.axaml.cs13
1 files changed, 9 insertions, 4 deletions
diff --git a/Ryujinx.Ava/Ui/Windows/DlcManagerWindow.axaml.cs b/Ryujinx.Ava/Ui/Windows/DlcManagerWindow.axaml.cs
index cb2ed324..7450c64f 100644
--- a/Ryujinx.Ava/Ui/Windows/DlcManagerWindow.axaml.cs
+++ b/Ryujinx.Ava/Ui/Windows/DlcManagerWindow.axaml.cs
@@ -2,6 +2,7 @@ using Avalonia;
using Avalonia.Collections;
using Avalonia.Controls;
using Avalonia.Markup.Xaml;
+using Avalonia.Threading;
using LibHac.Common;
using LibHac.Fs;
using LibHac.Fs.Fsa;
@@ -21,6 +22,7 @@ using System.Diagnostics;
using System.IO;
using System.Linq;
using System.Text;
+using System.Threading.Tasks;
using Path = System.IO.Path;
namespace Ryujinx.Ava.Ui.Windows
@@ -125,15 +127,18 @@ namespace Ryujinx.Ava.Ui.Windows
}
catch (Exception ex)
{
- ContentDialogHelper.CreateErrorDialog(this,
+ Dispatcher.UIThread.InvokeAsync(async () =>
+ {
+ await ContentDialogHelper.CreateErrorDialog(this,
string.Format(LocaleManager.Instance[
"DialogDlcLoadNcaErrorMessage"], ex.Message, containerPath));
+ });
}
return null;
}
- private void AddDlc(string path)
+ private async Task AddDlc(string path)
{
if (!File.Exists(path) || Dlcs.FirstOrDefault(x => x.ContainerPath == path) != null)
{
@@ -175,7 +180,7 @@ namespace Ryujinx.Ava.Ui.Windows
if (!containsDlc)
{
- ContentDialogHelper.CreateErrorDialog(this, LocaleManager.Instance["DialogDlcNoDlcErrorMessage"]);
+ await ContentDialogHelper.CreateErrorDialog(this, LocaleManager.Instance["DialogDlcNoDlcErrorMessage"]);
}
}
}
@@ -214,7 +219,7 @@ namespace Ryujinx.Ava.Ui.Windows
{
foreach (string file in files)
{
- AddDlc(file);
+ await AddDlc(file);
}
}
}