diff --git a/src/OSX/Avalonia.MonoMac/SystemDialogsImpl.cs b/src/OSX/Avalonia.MonoMac/SystemDialogsImpl.cs index 4226668119..04db728a2b 100644 --- a/src/OSX/Avalonia.MonoMac/SystemDialogsImpl.cs +++ b/src/OSX/Avalonia.MonoMac/SystemDialogsImpl.cs @@ -7,6 +7,7 @@ using Avalonia.Controls; using Avalonia.Controls.Platform; using Avalonia.Platform; using MonoMac.AppKit; +using MonoMac.Foundation; namespace Avalonia.MonoMac { @@ -24,9 +25,9 @@ namespace Avalonia.MonoMac else { if (panel is NSOpenPanel openPanel) - tcs.SetResult(openPanel.Filenames); + tcs.SetResult(openPanel.Urls.Select(url => url.AbsoluteString).ToArray()); else - tcs.SetResult(new[] { panel.Filename }); + tcs.SetResult(new[] { panel.Url.AbsoluteString }); } panel.OrderOut(panel); keyWindow?.MakeKeyAndOrderFront(keyWindow); @@ -62,7 +63,7 @@ namespace Avalonia.MonoMac panel = new NSSavePanel(); panel.Title = panel.Title; if (dialog.InitialDirectory != null) - panel.Directory = dialog.InitialDirectory; + panel.DirectoryUrl = new NSUrl(dialog.InitialDirectory); if (dialog.InitialFileName != null) panel.NameFieldStringValue = dialog.InitialFileName; if (dialog.Filters?.Count > 0) @@ -84,7 +85,7 @@ namespace Avalonia.MonoMac CanChooseFiles = false }; if (dialog.DefaultDirectory != null) - panel.Directory = dialog.DefaultDirectory; + panel.DirectoryUrl = new NSUrl(dialog.DefaultDirectory); return (await RunPanel(panel, parent))?.FirstOrDefault(); } }