TF-1328 Implement archiveMessage in thread and singleEmail
(cherry picked from commit 83b45fdb3f3138e59b7882a8fdb77e522e753f3e)
This commit is contained in:
@@ -1183,11 +1183,13 @@ class ThreadController extends BaseController with EmailActionController {
|
||||
if (direction == DismissDirection.startToEnd) {
|
||||
ReadActions readActions = !email.hasRead ? ReadActions.markAsRead : ReadActions.markAsUnread;
|
||||
markAsEmailRead(email, readActions, MarkReadAction.swipeOnThread);
|
||||
} else if (direction == DismissDirection.endToStart) {
|
||||
archiveMessage(context, email);
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
DismissDirection getSwipeDirection(bool isWebDesktop, SelectMode selectMode) {
|
||||
DismissDirection getSwipeDirection(bool isWebDesktop, SelectMode selectMode, PresentationEmail email) {
|
||||
if (isWebDesktop) {
|
||||
return DismissDirection.none;
|
||||
}
|
||||
@@ -1196,9 +1198,13 @@ class ThreadController extends BaseController with EmailActionController {
|
||||
return DismissDirection.none;
|
||||
}
|
||||
|
||||
return DismissDirection.startToEnd;
|
||||
return isInArchiveMailbox(email)
|
||||
? DismissDirection.startToEnd
|
||||
: DismissDirection.horizontal;
|
||||
}
|
||||
|
||||
bool isInArchiveMailbox(PresentationEmail email) => email.mailboxContain?.isArchive == true;
|
||||
|
||||
void scrollToTop() {
|
||||
if (listEmailController.hasClients) {
|
||||
listEmailController.animateTo(0, duration: const Duration(milliseconds: 500), curve: Curves.fastOutSlowIn);
|
||||
|
||||
Reference in New Issue
Block a user