diff options
Diffstat (limited to 'Ryujinx.Ava/Ui/Windows/DlcManagerWindow.axaml.cs')
-rw-r--r-- | Ryujinx.Ava/Ui/Windows/DlcManagerWindow.axaml.cs | 13 |
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); } } } |