diff --git a/lib/features/mailbox_dashboard/presentation/controller/mailbox_dashboard_controller.dart b/lib/features/mailbox_dashboard/presentation/controller/mailbox_dashboard_controller.dart index 2f5daca59..da3abdcda 100644 --- a/lib/features/mailbox_dashboard/presentation/controller/mailbox_dashboard_controller.dart +++ b/lib/features/mailbox_dashboard/presentation/controller/mailbox_dashboard_controller.dart @@ -253,6 +253,7 @@ class MailboxDashBoardController extends ReloadableController StreamSubscription? _pendingSharedFileInfoSubscription; StreamSubscription? _receivingFileSharingStreamSubscription; StreamSubscription? _currentEmailIdInNotificationIOSStreamSubscription; + bool _isFirstSessionLoad = false; final StreamController> _progressStateController = StreamController>.broadcast(); @@ -264,6 +265,10 @@ class MailboxDashBoardController extends ReloadableController final _notificationManager = LocalNotificationManager.instance; final _fcmService = FcmService.instance; + bool get isFirstSessionLoad => _isFirstSessionLoad; + + bool setIsFirstSessionLoad(bool value) => _isFirstSessionLoad = value; + MailboxDashBoardController( this._moveToMailboxInteractor, this._deleteEmailPermanentlyInteractor, @@ -645,6 +650,7 @@ class MailboxDashBoardController extends ReloadableController void _setUpComponentsFromSession(Session session) { final currentAccountId = session.accountId; + _isFirstSessionLoad = true; sessionCurrent = session; accountId.value = currentAccountId; @@ -3140,6 +3146,7 @@ class MailboxDashBoardController extends ReloadableController mapDefaultMailboxIdByRole = {}; WebSocketController.instance.onClose(); _currentEmailState = null; + _isFirstSessionLoad = false; super.onClose(); } } \ 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 0fbb49501..51880dfe4 100644 --- a/lib/features/thread/presentation/thread_controller.dart +++ b/lib/features/thread/presentation/thread_controller.dart @@ -261,7 +261,10 @@ class ThreadController extends BaseController with EmailActionController { _currentMemoryMailboxId = mailbox.id; consumeState(Stream.value(Right(GetAllEmailLoading()))); _resetToOriginalValue(); - _getAllEmailAction(getLatestChanges: false); + _getAllEmailAction( + getLatestChanges: mailboxDashBoardController.isFirstSessionLoad, + ); + mailboxDashBoardController.setIsFirstSessionLoad(false); } else if (mailbox == null) { // disable current mailbox when search active _currentMemoryMailboxId = null; _resetToOriginalValue(); @@ -520,7 +523,7 @@ class ThreadController extends BaseController with EmailActionController { void _getAllEmailAction({ bool getLatestChanges = true, }) { - log('ThreadController::_getAllEmailAction:'); + log('ThreadController::_getAllEmailAction:getLatestChanges = $getLatestChanges'); if (_session != null &&_accountId != null) { consumeState(_getEmailsInMailboxInteractor.execute( _session!,