Avoid fetching again identity lists in SingleEmailController
This commit is contained in:
@@ -327,8 +327,10 @@ class SingleEmailController extends BaseController with AppLoaderMixin {
|
|||||||
markAsEmailRead(selectedEmail, ReadActions.markAsRead, MarkReadAction.tap);
|
markAsEmailRead(selectedEmail, ReadActions.markAsRead, MarkReadAction.tap);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (_identitySelected == null) {
|
if (mailboxDashBoardController.listIdentities.isEmpty) {
|
||||||
_getAllIdentities();
|
_getAllIdentities();
|
||||||
|
} else {
|
||||||
|
_initializeSelectedIdentity(mailboxDashBoardController.listIdentities);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -418,17 +420,20 @@ class SingleEmailController extends BaseController with AppLoaderMixin {
|
|||||||
|
|
||||||
void _getAllIdentitiesSuccess(GetAllIdentitiesSuccess success) {
|
void _getAllIdentitiesSuccess(GetAllIdentitiesSuccess success) {
|
||||||
if (success.identities?.isNotEmpty == true) {
|
if (success.identities?.isNotEmpty == true) {
|
||||||
if (currentEmail != null) {
|
_initializeSelectedIdentity(success.identities!);
|
||||||
final currentMailbox = getMailboxContain(currentEmail!);
|
}
|
||||||
log('SingleEmailController::_getAllIdentitiesSuccess():currentMailbox: $currentMailbox');
|
}
|
||||||
if (_isBelongToTeamMailboxes(currentMailbox)) {
|
|
||||||
_setUpDefaultIdentityForTeamMailbox(success.identities!, currentMailbox!);
|
void _initializeSelectedIdentity(List<Identity> identities) {
|
||||||
} else {
|
if (currentEmail != null) {
|
||||||
_setUpDefaultIdentity(success.identities!);
|
final currentMailbox = getMailboxContain(currentEmail!);
|
||||||
}
|
if (_isBelongToTeamMailboxes(currentMailbox)) {
|
||||||
|
_setUpDefaultIdentityForTeamMailbox(identities, currentMailbox!);
|
||||||
} else {
|
} else {
|
||||||
_setUpDefaultIdentity(success.identities!);
|
_setUpDefaultIdentity(identities);
|
||||||
}
|
}
|
||||||
|
} else {
|
||||||
|
_setUpDefaultIdentity(identities);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -621,6 +626,7 @@ class SingleEmailController extends BaseController with AppLoaderMixin {
|
|||||||
blobCalendarEvent.value = null;
|
blobCalendarEvent.value = null;
|
||||||
emailUnsubscribe.value = null;
|
emailUnsubscribe.value = null;
|
||||||
_printEmailAction = null;
|
_printEmailAction = null;
|
||||||
|
_identitySelected = null;
|
||||||
if (isEmailClosing) {
|
if (isEmailClosing) {
|
||||||
emailLoadedViewState.value = Right(UIState.idle);
|
emailLoadedViewState.value = Right(UIState.idle);
|
||||||
viewState.value = Right(UIState.idle);
|
viewState.value = Right(UIState.idle);
|
||||||
|
|||||||
+2
@@ -2523,6 +2523,8 @@ class MailboxDashBoardController extends ReloadableController {
|
|||||||
log('MailboxDashBoardController::_handleGetAllIdentitiesSuccess: IDENTITIES_SIZE = ${_identities?.length}');
|
log('MailboxDashBoardController::_handleGetAllIdentitiesSuccess: IDENTITIES_SIZE = ${_identities?.length}');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
List<Identity> get listIdentities => _identities ?? [];
|
||||||
|
|
||||||
@override
|
@override
|
||||||
void onClose() {
|
void onClose() {
|
||||||
_emailReceiveManager.closeEmailReceiveManagerStream();
|
_emailReceiveManager.closeEmailReceiveManagerStream();
|
||||||
|
|||||||
Reference in New Issue
Block a user