diff --git a/Moonlight/Features/FileManager/Implementations/DeleteSelectionAction.cs b/Moonlight/Features/FileManager/Implementations/DeleteSelectionAction.cs index fbc0142f..c63c4e57 100644 --- a/Moonlight/Features/FileManager/Implementations/DeleteSelectionAction.cs +++ b/Moonlight/Features/FileManager/Implementations/DeleteSelectionAction.cs @@ -14,8 +14,37 @@ public class DeleteSelectionAction : IFileManagerSelectionAction { var alertService = provider.GetRequiredService(); var toastService = provider.GetRequiredService(); + + var folderEmoji = "\ud83d\udcc1"; + var fileEmoji = "\ud83d\udcc4"; + + var showFolderCount = 3; + var showFileCount = 6; + + var folderCount = entries.Count(x => x.IsDirectory); + var fileCount = entries.Count(x => x.IsFile); - if(!await alertService.YesNo($"Do you really want to delete {entries.Length} item(s)?")) + // Construct file list + var fileList = ""; + + foreach (var folder in entries.Where(x => x.IsDirectory).Take(showFolderCount)) + { + fileList += folderEmoji + " " + folder.Name + "\n"; + } + + if (folderCount > showFolderCount) + fileList += "And " + (folderCount - showFolderCount) + " more folders... \n\n"; + + foreach (var file in entries.Where(x => x.IsFile).Take(showFileCount)) + { + fileList += fileEmoji + " " + file.Name + "\n"; + } + + if (fileCount > showFileCount) + fileList += "And " + (fileCount - showFileCount) + " more files..."; + + + if(!await alertService.YesNo($"Do you really want to delete {folderCount + fileCount} item(s)? \n\n" + fileList)) return; await toastService.CreateProgress("fileManagerSelectionDelete", "Deleting items");