TF-1328 Implement archiveMessage in thread and singleEmail

(cherry picked from commit 83b45fdb3f3138e59b7882a8fdb77e522e753f3e)
This commit is contained in:
hieubt
2023-12-26 12:19:11 +07:00
committed by Dat H. Pham
parent 92ea5865aa
commit 53922c19d2
6 changed files with 71 additions and 54 deletions
@@ -2393,6 +2393,28 @@ class MailboxDashBoardController extends ReloadableController {
return false;
}
void archiveMessage(BuildContext context, PresentationEmail email) {
final mailboxContain = email.findMailboxContain(mapMailboxById);
if (mailboxContain != null) {
final archiveMailboxId = getMailboxIdByRole(PresentationMailbox.roleArchive);
final archiveMailboxPath = mapMailboxById[archiveMailboxId]?.getDisplayName(context);
if (archiveMailboxId != null) {
final moveToArchiveMailboxRequest = MoveToMailboxRequest(
{mailboxContain.id: [email.id!]},
archiveMailboxId,
MoveAction.moving,
EmailActionType.moveToMailbox,
destinationPath: archiveMailboxPath
);
moveToMailbox(
sessionCurrent!,
accountId.value!,
moveToArchiveMailboxRequest
);
}
}
}
@override
void onClose() {
_emailReceiveManager.closeEmailReceiveManagerStream();