diff --git a/lib/features/thread/presentation/mixin/email_action_controller.dart b/lib/features/thread/presentation/mixin/email_action_controller.dart index 280337c0c..a18d7aa19 100644 --- a/lib/features/thread/presentation/mixin/email_action_controller.dart +++ b/lib/features/thread/presentation/mixin/email_action_controller.dart @@ -337,4 +337,8 @@ mixin EmailActionController { void archiveMessage(BuildContext context, PresentationEmail email) { mailboxDashBoardController.archiveMessage(context, email); } + + bool hasArchiveMailbox() { + return mailboxDashBoardController.getMailboxIdByRole(PresentationMailbox.roleArchive) != null; + } } \ No newline at end of file diff --git a/lib/features/thread/presentation/thread_controller.dart b/lib/features/thread/presentation/thread_controller.dart index c3b339e60..04463a857 100644 --- a/lib/features/thread/presentation/thread_controller.dart +++ b/lib/features/thread/presentation/thread_controller.dart @@ -1446,7 +1446,7 @@ class ThreadController extends BaseController with EmailActionController { return DismissDirection.none; } - return isInArchiveMailbox(email) + return isInArchiveMailbox(email) || !hasArchiveMailbox() ? DismissDirection.startToEnd : DismissDirection.horizontal; }