From 0200bf1674c04671fafdf7111b3979693e31ac3a Mon Sep 17 00:00:00 2001 From: the-djmaze <> Date: Tue, 27 Sep 2022 18:59:07 +0200 Subject: [PATCH] rename deleteMessagesFromFolder() to moveMessagesToFolderType() as it is 90% to move instead of delete --- dev/App/User.js | 29 +++++------ dev/View/User/MailBox/MessageList.js | 51 +++++++------------ dev/View/User/MailBox/MessageView.js | 14 ++--- .../templates/Views/User/MailMessageList.html | 2 +- 4 files changed, 38 insertions(+), 58 deletions(-) diff --git a/dev/App/User.js b/dev/App/User.js index c2c6ba2ab..8c613e169 100644 --- a/dev/App/User.js +++ b/dev/App/User.js @@ -103,16 +103,16 @@ export class AppUser extends AbstractApp { } /** - * @param {number} iDeleteType + * @param {number} iFolderType * @param {string} sFromFolderFullName * @param {Array} aUidForRemove - * @param {boolean=} bUseFolder = true + * @param {boolean=} bDelete = false */ - deleteMessagesFromFolder(iDeleteType, sFromFolderFullName, aUidForRemove, bUseFolder) { + moveMessagesToFolderType(iFolderType, sFromFolderFullName, aUidForRemove, bDelete) { let oMoveFolder = null, nSetSystemFoldersNotification = null; - switch (iDeleteType) { + switch (iFolderType) { case FolderType.Spam: oMoveFolder = getFolderFromCacheList(FolderUserStore.spamFolder()); nSetSystemFoldersNotification = SetSystemFoldersNotification.Spam; @@ -131,22 +131,19 @@ export class AppUser extends AbstractApp { // no default } - bUseFolder = undefined === bUseFolder ? true : !!bUseFolder; - if (bUseFolder) { - if ( - (FolderType.Spam === iDeleteType && UNUSED_OPTION_VALUE === FolderUserStore.spamFolder()) || - (FolderType.Trash === iDeleteType && UNUSED_OPTION_VALUE === FolderUserStore.trashFolder()) || - (FolderType.Archive === iDeleteType && UNUSED_OPTION_VALUE === FolderUserStore.archiveFolder()) - ) { - bUseFolder = false; - } + if (!bDelete && ( + (FolderType.Spam === iFolderType && UNUSED_OPTION_VALUE === FolderUserStore.spamFolder()) || + (FolderType.Trash === iFolderType && UNUSED_OPTION_VALUE === FolderUserStore.trashFolder()) || + (FolderType.Archive === iFolderType && UNUSED_OPTION_VALUE === FolderUserStore.archiveFolder()) + )) { + bDelete = true; } - if (!oMoveFolder && bUseFolder) { + if (!oMoveFolder && !bDelete) { showScreenPopup(FolderSystemPopupView, [nSetSystemFoldersNotification]); } else if ( - !bUseFolder || - (FolderType.Trash === iDeleteType && + bDelete || + (FolderType.Trash === iFolderType && (sFromFolderFullName === FolderUserStore.spamFolder() || sFromFolderFullName === FolderUserStore.trashFolder())) ) { diff --git a/dev/View/User/MailBox/MessageList.js b/dev/View/User/MailBox/MessageList.js index 97a2803f3..633e3b5e8 100644 --- a/dev/View/User/MailBox/MessageList.js +++ b/dev/View/User/MailBox/MessageList.js @@ -52,7 +52,15 @@ const * @param {Array=} aMessages = null * @returns {void} */ - listAction = (...args) => MessagelistUserStore.setAction(...args); + listAction = (...args) => MessagelistUserStore.setAction(...args), + + moveMessagesToFolderType = (toFolderType, bDelete) => + rl.app.moveMessagesToFolderType( + toFolderType, + FolderUserStore.currentFolderFullName(), + MessagelistUserStore.listCheckedOrSelectedUidsWithSubMails(), + bDelete + ); let iGoToUpOrDownTimeout = 0, @@ -218,7 +226,7 @@ export class MailMessageList extends AbstractViewRight { ).throttle(50)); decorateKoCommands(this, { - multyForwardCommand: canBeMovedHelper, + forwardCommand: canBeMovedHelper, deleteWithoutMoveCommand: canBeMovedHelper, deleteCommand: canBeMovedHelper, archiveCommand: canBeMovedHelper, @@ -246,7 +254,7 @@ export class MailMessageList extends AbstractViewRight { } } - multyForwardCommand() { + forwardCommand() { showMessageComposer([ ComposeType.ForwardAsAttachment, MessagelistUserStore.listCheckedOrSelected() @@ -255,49 +263,24 @@ export class MailMessageList extends AbstractViewRight { deleteWithoutMoveCommand() { if (SettingsCapa('DangerousActions')) { - rl.app.deleteMessagesFromFolder( - FolderType.Trash, - FolderUserStore.currentFolderFullName(), - MessagelistUserStore.listCheckedOrSelectedUidsWithSubMails(), - false - ); + moveMessagesToFolderType(FolderType.Trash, true); } } deleteCommand() { - rl.app.deleteMessagesFromFolder( - FolderType.Trash, - FolderUserStore.currentFolderFullName(), - MessagelistUserStore.listCheckedOrSelectedUidsWithSubMails(), - true - ); + moveMessagesToFolderType(FolderType.Trash); } archiveCommand() { - rl.app.deleteMessagesFromFolder( - FolderType.Archive, - FolderUserStore.currentFolderFullName(), - MessagelistUserStore.listCheckedOrSelectedUidsWithSubMails(), - true - ); + moveMessagesToFolderType(FolderType.Archive); } spamCommand() { - rl.app.deleteMessagesFromFolder( - FolderType.Spam, - FolderUserStore.currentFolderFullName(), - MessagelistUserStore.listCheckedOrSelectedUidsWithSubMails(), - true - ); + moveMessagesToFolderType(FolderType.Spam); } notSpamCommand() { - rl.app.deleteMessagesFromFolder( - FolderType.NotSpam, - FolderUserStore.currentFolderFullName(), - MessagelistUserStore.listCheckedOrSelectedUidsWithSubMails(), - true - ); + moveMessagesToFolderType(FolderType.NotSpam); } moveCommand() {} @@ -720,7 +703,7 @@ export class MailMessageList extends AbstractViewRight { }); addShortcut('f,mailforward', 'shift', [Scope.MessageList, Scope.MessageView], () => { - this.multyForwardCommand(); + this.forwardCommand(); return false; }); diff --git a/dev/View/User/MailBox/MessageView.js b/dev/View/User/MailBox/MessageView.js index 10f3995b8..69aa95de5 100644 --- a/dev/View/User/MailBox/MessageView.js +++ b/dev/View/User/MailBox/MessageView.js @@ -81,12 +81,12 @@ export class MailMessageView extends AbstractViewRight { createCommandReplyHelper = type => createCommand(() => this.replyOrforward(type), this.canBeRepliedOrForwarded), - createCommandActionHelper = (folderType, useFolder) => + createCommandActionHelper = (folderType, bDelete) => createCommand(() => { const message = currentMessage(); if (message) { currentMessage(null); - rl.app.deleteMessagesFromFolder(folderType, message.folder, [message.uid], useFolder); + rl.app.moveMessagesToFolderType(folderType, message.folder, [message.uid], bDelete); } }, this.messageVisibility); @@ -205,11 +205,11 @@ export class MailMessageView extends AbstractViewRight { this.forwardAsAttachmentCommand = createCommandReplyHelper(ComposeType.ForwardAsAttachment); this.editAsNewCommand = createCommandReplyHelper(ComposeType.EditAsNew); - this.deleteCommand = createCommandActionHelper(FolderType.Trash, true); - this.deleteWithoutMoveCommand = createCommandActionHelper(FolderType.Trash, false); - this.archiveCommand = createCommandActionHelper(FolderType.Archive, true); - this.spamCommand = createCommandActionHelper(FolderType.Spam, true); - this.notSpamCommand = createCommandActionHelper(FolderType.NotSpam, true); + this.deleteCommand = createCommandActionHelper(FolderType.Trash); + this.deleteWithoutMoveCommand = createCommandActionHelper(FolderType.Trash, true); + this.archiveCommand = createCommandActionHelper(FolderType.Archive); + this.spamCommand = createCommandActionHelper(FolderType.Spam); + this.notSpamCommand = createCommandActionHelper(FolderType.NotSpam); decorateKoCommands(this, { messageEditCommand: self => self.messageVisibility(), diff --git a/snappymail/v/0.0.0/app/templates/Views/User/MailMessageList.html b/snappymail/v/0.0.0/app/templates/Views/User/MailMessageList.html index 1681d6f31..bad7e28dc 100644 --- a/snappymail/v/0.0.0/app/templates/Views/User/MailMessageList.html +++ b/snappymail/v/0.0.0/app/templates/Views/User/MailMessageList.html @@ -55,7 +55,7 @@