diff --git a/ShareX/Enums.cs b/ShareX/Enums.cs index 563f62477..a70d6e649 100644 --- a/ShareX/Enums.cs +++ b/ShareX/Enums.cs @@ -239,24 +239,27 @@ public enum PopUpNotificationType // Localized ToastNotification } - [DefaultValue(OpenUrl)] public enum ToastClickAction { [Description("Close notification")] CloseNotification, [Description("Annotate image")] AnnotateImage, - [Description("Copy image to clipboard")] + [Description("Copy image")] CopyImageToClipboard, - [Description("Copy URL")] + [Description("Copy file")] + CopyFile, + [Description("Copy file path")] + CopyFilePath, + [Description("Copy link")] CopyUrl, [Description("Open file")] OpenFile, [Description("Open folder")] OpenFolder, - [Description("Open URL")] + [Description("Open link")] OpenUrl, - [Description("Upload")] + [Description("Upload file")] Upload } diff --git a/ShareX/Forms/NotificationForm.cs b/ShareX/Forms/NotificationForm.cs index 2f1ac76e0..60298c4f5 100644 --- a/ShareX/Forms/NotificationForm.cs +++ b/ShareX/Forms/NotificationForm.cs @@ -283,31 +283,57 @@ private void ExecuteAction(ToastClickAction action) { case ToastClickAction.AnnotateImage: if (!string.IsNullOrEmpty(Config.FilePath) && Helpers.IsImageFile(Config.FilePath)) + { TaskHelpers.AnnotateImageFromFile(Config.FilePath); + } break; case ToastClickAction.CopyImageToClipboard: if (!string.IsNullOrEmpty(Config.FilePath)) + { ClipboardHelpers.CopyImageFromFile(Config.FilePath); + } + break; + case ToastClickAction.CopyFile: + if (!string.IsNullOrEmpty(Config.FilePath)) + { + ClipboardHelpers.CopyFile(Config.FilePath); + } + break; + case ToastClickAction.CopyFilePath: + if (!string.IsNullOrEmpty(Config.FilePath)) + { + ClipboardHelpers.CopyText(Config.FilePath); + } break; case ToastClickAction.CopyUrl: if (!string.IsNullOrEmpty(Config.URL)) + { ClipboardHelpers.CopyText(Config.URL); + } break; case ToastClickAction.OpenFile: if (!string.IsNullOrEmpty(Config.FilePath)) + { Helpers.OpenFile(Config.FilePath); + } break; case ToastClickAction.OpenFolder: if (!string.IsNullOrEmpty(Config.FilePath)) + { Helpers.OpenFolderWithFile(Config.FilePath); + } break; case ToastClickAction.OpenUrl: if (!string.IsNullOrEmpty(Config.URL)) + { URLHelpers.OpenURL(Config.URL); + } break; case ToastClickAction.Upload: if (!string.IsNullOrEmpty(Config.FilePath)) + { UploadManager.UploadFile(Config.FilePath); + } break; } }