From fafcecf0f38d0c2cb30457fe0e951f2ba4ad7d7e Mon Sep 17 00:00:00 2001 From: Dan Walmsley Date: Tue, 13 Feb 2018 15:15:16 +0000 Subject: [PATCH] system dialog combines the initialDirectory and InitialFileName on Gtk. --- src/Gtk/Avalonia.Gtk3/SystemDialogs.cs | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/Gtk/Avalonia.Gtk3/SystemDialogs.cs b/src/Gtk/Avalonia.Gtk3/SystemDialogs.cs index fb8af02d5d..cff376ad1f 100644 --- a/src/Gtk/Avalonia.Gtk3/SystemDialogs.cs +++ b/src/Gtk/Avalonia.Gtk3/SystemDialogs.cs @@ -1,5 +1,6 @@ using System; using System.Collections.Generic; +using System.IO; using System.Linq; using System.Text; using System.Threading.Tasks; @@ -79,9 +80,11 @@ namespace Avalonia.Gtk3 public Task ShowFileDialogAsync(FileDialog dialog, IWindowImpl parent) { - return ShowDialog(dialog.Title, ((WindowBaseImpl) parent)?.GtkWidget, + return ShowDialog(dialog.Title, ((WindowBaseImpl)parent)?.GtkWidget, dialog is OpenFileDialog ? GtkFileChooserAction.Open : GtkFileChooserAction.Save, - (dialog as OpenFileDialog)?.AllowMultiple ?? false, dialog.InitialFileName); + (dialog as OpenFileDialog)?.AllowMultiple ?? false, + Path.Combine(string.IsNullOrEmpty(dialog.InitialDirectory) ? "" : dialog.InitialDirectory, + string.IsNullOrEmpty(dialog.InitialFileName) ? "" : dialog.InitialFileName)); } public async Task ShowFolderDialogAsync(OpenFolderDialog dialog, IWindowImpl parent)