TF-3334 Remove resynchronisation when performing actions with mailbox
This commit is contained in:
@@ -9,7 +9,6 @@ import 'package:flutter_svg/flutter_svg.dart';
|
|||||||
import 'package:get/get.dart';
|
import 'package:get/get.dart';
|
||||||
import 'package:jmap_dart_client/jmap/account_id.dart';
|
import 'package:jmap_dart_client/jmap/account_id.dart';
|
||||||
import 'package:jmap_dart_client/jmap/core/error/method/error_method_response.dart';
|
import 'package:jmap_dart_client/jmap/core/error/method/error_method_response.dart';
|
||||||
import 'package:jmap_dart_client/jmap/core/properties/properties.dart';
|
|
||||||
import 'package:jmap_dart_client/jmap/core/session/session.dart';
|
import 'package:jmap_dart_client/jmap/core/session/session.dart';
|
||||||
import 'package:jmap_dart_client/jmap/core/state.dart' as jmap;
|
import 'package:jmap_dart_client/jmap/core/state.dart' as jmap;
|
||||||
import 'package:jmap_dart_client/jmap/mail/email/email.dart';
|
import 'package:jmap_dart_client/jmap/mail/email/email.dart';
|
||||||
@@ -32,7 +31,6 @@ import 'package:tmail_ui_user/features/mailbox/domain/model/rename_mailbox_reque
|
|||||||
import 'package:tmail_ui_user/features/mailbox/domain/model/subscribe_mailbox_request.dart';
|
import 'package:tmail_ui_user/features/mailbox/domain/model/subscribe_mailbox_request.dart';
|
||||||
import 'package:tmail_ui_user/features/mailbox/domain/model/subscribe_multiple_mailbox_request.dart';
|
import 'package:tmail_ui_user/features/mailbox/domain/model/subscribe_multiple_mailbox_request.dart';
|
||||||
import 'package:tmail_ui_user/features/mailbox/domain/model/subscribe_request.dart';
|
import 'package:tmail_ui_user/features/mailbox/domain/model/subscribe_request.dart';
|
||||||
import 'package:tmail_ui_user/features/mailbox/domain/state/create_default_mailbox_state.dart';
|
|
||||||
import 'package:tmail_ui_user/features/mailbox/domain/state/create_new_mailbox_state.dart';
|
import 'package:tmail_ui_user/features/mailbox/domain/state/create_new_mailbox_state.dart';
|
||||||
import 'package:tmail_ui_user/features/mailbox/domain/state/delete_multiple_mailbox_state.dart';
|
import 'package:tmail_ui_user/features/mailbox/domain/state/delete_multiple_mailbox_state.dart';
|
||||||
import 'package:tmail_ui_user/features/mailbox/domain/state/get_all_mailboxes_state.dart';
|
import 'package:tmail_ui_user/features/mailbox/domain/state/get_all_mailboxes_state.dart';
|
||||||
@@ -104,6 +102,10 @@ class MailboxController extends BaseMailboxController with MailboxActionHandlerM
|
|||||||
|
|
||||||
PresentationEmail? get selectedEmail => mailboxDashBoardController.selectedEmail.value;
|
PresentationEmail? get selectedEmail => mailboxDashBoardController.selectedEmail.value;
|
||||||
|
|
||||||
|
AccountId? get accountId => mailboxDashBoardController.accountId.value;
|
||||||
|
|
||||||
|
Session? get session => mailboxDashBoardController.sessionCurrent;
|
||||||
|
|
||||||
MailboxController(
|
MailboxController(
|
||||||
this._createNewMailboxInteractor,
|
this._createNewMailboxInteractor,
|
||||||
this._deleteMultipleMailboxInteractor,
|
this._deleteMultipleMailboxInteractor,
|
||||||
@@ -159,11 +161,6 @@ class MailboxController extends BaseMailboxController with MailboxActionHandlerM
|
|||||||
_deleteMultipleMailboxSuccess(success.listMailboxIdDeleted, success.currentMailboxState);
|
_deleteMultipleMailboxSuccess(success.listMailboxIdDeleted, success.currentMailboxState);
|
||||||
} else if (success is DeleteMultipleMailboxHasSomeSuccess) {
|
} else if (success is DeleteMultipleMailboxHasSomeSuccess) {
|
||||||
_deleteMultipleMailboxSuccess(success.listMailboxIdDeleted, success.currentMailboxState);
|
_deleteMultipleMailboxSuccess(success.listMailboxIdDeleted, success.currentMailboxState);
|
||||||
} else if (success is RenameMailboxSuccess) {
|
|
||||||
_refreshMailboxChanges(
|
|
||||||
currentMailboxState: success.currentMailboxState,
|
|
||||||
properties: MailboxConstants.propertiesDefault
|
|
||||||
);
|
|
||||||
} else if (success is MoveMailboxSuccess) {
|
} else if (success is MoveMailboxSuccess) {
|
||||||
_moveMailboxSuccess(success);
|
_moveMailboxSuccess(success);
|
||||||
} else if (success is SubscribeMailboxSuccess) {
|
} else if (success is SubscribeMailboxSuccess) {
|
||||||
@@ -172,8 +169,6 @@ class MailboxController extends BaseMailboxController with MailboxActionHandlerM
|
|||||||
_handleUnsubscribeMultipleMailboxAllSuccess(success);
|
_handleUnsubscribeMultipleMailboxAllSuccess(success);
|
||||||
} else if (success is SubscribeMultipleMailboxHasSomeSuccess) {
|
} else if (success is SubscribeMultipleMailboxHasSomeSuccess) {
|
||||||
_handleUnsubscribeMultipleMailboxHasSomeSuccess(success);
|
_handleUnsubscribeMultipleMailboxHasSomeSuccess(success);
|
||||||
} else if (success is CreateDefaultMailboxAllSuccess) {
|
|
||||||
_refreshMailboxChanges(currentMailboxState: success.currentMailboxState);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -188,8 +183,6 @@ class MailboxController extends BaseMailboxController with MailboxActionHandlerM
|
|||||||
_deleteMailboxFailure(failure);
|
_deleteMailboxFailure(failure);
|
||||||
} else if (failure is RefreshChangesAllMailboxFailure) {
|
} else if (failure is RefreshChangesAllMailboxFailure) {
|
||||||
_clearNewFolderId();
|
_clearNewFolderId();
|
||||||
} else if (failure is CreateDefaultMailboxFailure) {
|
|
||||||
_refreshMailboxChanges(currentMailboxState: failure.currentMailboxState);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -224,8 +217,8 @@ class MailboxController extends BaseMailboxController with MailboxActionHandlerM
|
|||||||
|
|
||||||
void _registerObxStreamListener() {
|
void _registerObxStreamListener() {
|
||||||
ever(mailboxDashBoardController.accountId, (accountId) {
|
ever(mailboxDashBoardController.accountId, (accountId) {
|
||||||
if (accountId != null && mailboxDashBoardController.sessionCurrent != null) {
|
if (accountId != null && session != null) {
|
||||||
getAllMailbox(mailboxDashBoardController.sessionCurrent!, accountId);
|
getAllMailbox(session!, accountId);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
@@ -245,9 +238,7 @@ class MailboxController extends BaseMailboxController with MailboxActionHandlerM
|
|||||||
_switchBackToMailboxDefault();
|
_switchBackToMailboxDefault();
|
||||||
mailboxDashBoardController.clearMailboxUIAction();
|
mailboxDashBoardController.clearMailboxUIAction();
|
||||||
} else if (action is RefreshChangeMailboxAction) {
|
} else if (action is RefreshChangeMailboxAction) {
|
||||||
if (action.newState != currentMailboxState) {
|
_refreshMailboxChanges(newState: action.newState);
|
||||||
_refreshMailboxChanges();
|
|
||||||
}
|
|
||||||
mailboxDashBoardController.clearMailboxUIAction();
|
mailboxDashBoardController.clearMailboxUIAction();
|
||||||
} else if (action is OpenMailboxAction) {
|
} else if (action is OpenMailboxAction) {
|
||||||
if (currentContext != null) {
|
if (currentContext != null) {
|
||||||
@@ -281,31 +272,29 @@ class MailboxController extends BaseMailboxController with MailboxActionHandlerM
|
|||||||
}
|
}
|
||||||
|
|
||||||
Future<void> refreshAllMailbox() async {
|
Future<void> refreshAllMailbox() async {
|
||||||
final session = mailboxDashBoardController.sessionCurrent;
|
|
||||||
final accountId = mailboxDashBoardController.accountId.value;
|
|
||||||
if (session != null && accountId != null) {
|
if (session != null && accountId != null) {
|
||||||
consumeState(getAllMailboxInteractor!.execute(session, accountId));
|
consumeState(getAllMailboxInteractor!.execute(session!, accountId!));
|
||||||
} else {
|
} else {
|
||||||
consumeState(Stream.value(Left(GetAllMailboxFailure(NotFoundSessionException()))));
|
consumeState(Stream.value(Left(GetAllMailboxFailure(NotFoundSessionException()))));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void _refreshMailboxChanges({jmap.State? currentMailboxState, Properties? properties}) {
|
void _refreshMailboxChanges({jmap.State? newState}) {
|
||||||
log('MailboxController::_refreshMailboxChanges(): currentMailboxState: $currentMailboxState');
|
log('MailboxController::_refreshMailboxChanges():newState: $newState');
|
||||||
final newMailboxState = currentMailboxState ?? this.currentMailboxState;
|
if (accountId == null ||
|
||||||
log('MailboxController::_refreshMailboxChanges(): newMailboxState: $newMailboxState');
|
session == null ||
|
||||||
final accountId = mailboxDashBoardController.accountId.value;
|
currentMailboxState == null ||
|
||||||
final session = mailboxDashBoardController.sessionCurrent;
|
newState == currentMailboxState) {
|
||||||
if (accountId != null && session != null && newMailboxState != null) {
|
|
||||||
refreshMailboxChanges(
|
|
||||||
session,
|
|
||||||
accountId,
|
|
||||||
newMailboxState,
|
|
||||||
properties: properties
|
|
||||||
);
|
|
||||||
} else {
|
|
||||||
_newFolderId = null;
|
_newFolderId = null;
|
||||||
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
refreshMailboxChanges(
|
||||||
|
session!,
|
||||||
|
accountId!,
|
||||||
|
currentMailboxState!,
|
||||||
|
properties: MailboxConstants.propertiesDefault,
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
void _setMapMailbox() {
|
void _setMapMailbox() {
|
||||||
@@ -381,12 +370,10 @@ class MailboxController extends BaseMailboxController with MailboxActionHandlerM
|
|||||||
.whereNot((role) => mapDefaultMailboxRole.containsKey(role) || findNodeByNameOnFirstLevel(role.value) != null)
|
.whereNot((role) => mapDefaultMailboxRole.containsKey(role) || findNodeByNameOnFirstLevel(role.value) != null)
|
||||||
.toList();
|
.toList();
|
||||||
log('MailboxController::_handleCreateDefaultFolderIfMissing():listRoleMissing: $listRoleMissing');
|
log('MailboxController::_handleCreateDefaultFolderIfMissing():listRoleMissing: $listRoleMissing');
|
||||||
final accountId = mailboxDashBoardController.accountId.value;
|
|
||||||
final session = mailboxDashBoardController.sessionCurrent;
|
|
||||||
if (listRoleMissing.isNotEmpty && accountId != null && session != null) {
|
if (listRoleMissing.isNotEmpty && accountId != null && session != null) {
|
||||||
consumeState(_createDefaultMailboxInteractor.execute(
|
consumeState(_createDefaultMailboxInteractor.execute(
|
||||||
session,
|
session!,
|
||||||
accountId,
|
accountId!,
|
||||||
listRoleMissing
|
listRoleMissing
|
||||||
));
|
));
|
||||||
}
|
}
|
||||||
@@ -543,11 +530,9 @@ class MailboxController extends BaseMailboxController with MailboxActionHandlerM
|
|||||||
}
|
}
|
||||||
|
|
||||||
void goToCreateNewMailboxView(BuildContext context, {PresentationMailbox? parentMailbox}) async {
|
void goToCreateNewMailboxView(BuildContext context, {PresentationMailbox? parentMailbox}) async {
|
||||||
final accountId = mailboxDashBoardController.accountId.value;
|
|
||||||
final session = mailboxDashBoardController.sessionCurrent;
|
|
||||||
if (session !=null && accountId != null) {
|
if (session !=null && accountId != null) {
|
||||||
final arguments = MailboxCreatorArguments(
|
final arguments = MailboxCreatorArguments(
|
||||||
accountId,
|
accountId!,
|
||||||
defaultMailboxTree.value,
|
defaultMailboxTree.value,
|
||||||
personalMailboxTree.value,
|
personalMailboxTree.value,
|
||||||
teamMailboxesTree.value,
|
teamMailboxesTree.value,
|
||||||
@@ -560,9 +545,14 @@ class MailboxController extends BaseMailboxController with MailboxActionHandlerM
|
|||||||
: await push(AppRoutes.mailboxCreator, arguments: arguments);
|
: await push(AppRoutes.mailboxCreator, arguments: arguments);
|
||||||
|
|
||||||
if (result != null && result is NewMailboxArguments) {
|
if (result != null && result is NewMailboxArguments) {
|
||||||
_createNewMailboxAction(session, accountId, CreateNewMailboxRequest(
|
_createNewMailboxAction(
|
||||||
result.newName,
|
session!,
|
||||||
parentId: result.mailboxLocation?.id));
|
accountId!,
|
||||||
|
CreateNewMailboxRequest(
|
||||||
|
result.newName,
|
||||||
|
parentId: result.mailboxLocation?.id,
|
||||||
|
),
|
||||||
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -581,8 +571,6 @@ class MailboxController extends BaseMailboxController with MailboxActionHandlerM
|
|||||||
|
|
||||||
_newFolderId = success.newMailbox.id;
|
_newFolderId = success.newMailbox.id;
|
||||||
}
|
}
|
||||||
|
|
||||||
_refreshMailboxChanges(currentMailboxState: success.currentMailboxState);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void _createNewMailboxFailure(CreateNewMailboxFailure failure) {
|
void _createNewMailboxFailure(CreateNewMailboxFailure failure) {
|
||||||
@@ -714,9 +702,6 @@ class MailboxController extends BaseMailboxController with MailboxActionHandlerM
|
|||||||
}
|
}
|
||||||
|
|
||||||
void _deleteMailboxAction(PresentationMailbox presentationMailbox) {
|
void _deleteMailboxAction(PresentationMailbox presentationMailbox) {
|
||||||
final accountId = mailboxDashBoardController.accountId.value;
|
|
||||||
final session = mailboxDashBoardController.sessionCurrent;
|
|
||||||
|
|
||||||
if (session != null && accountId != null) {
|
if (session != null && accountId != null) {
|
||||||
final tupleMap = MailboxUtils.generateMapDescendantIdsAndMailboxIdList(
|
final tupleMap = MailboxUtils.generateMapDescendantIdsAndMailboxIdList(
|
||||||
[presentationMailbox],
|
[presentationMailbox],
|
||||||
@@ -726,10 +711,11 @@ class MailboxController extends BaseMailboxController with MailboxActionHandlerM
|
|||||||
final listMailboxId = tupleMap.value2;
|
final listMailboxId = tupleMap.value2;
|
||||||
|
|
||||||
consumeState(_deleteMultipleMailboxInteractor.execute(
|
consumeState(_deleteMultipleMailboxInteractor.execute(
|
||||||
session,
|
session!,
|
||||||
accountId,
|
accountId!,
|
||||||
mapDescendantIds,
|
mapDescendantIds,
|
||||||
listMailboxId));
|
listMailboxId,
|
||||||
|
));
|
||||||
} else {
|
} else {
|
||||||
_deleteMailboxFailure(DeleteMultipleMailboxFailure(null));
|
_deleteMailboxFailure(DeleteMultipleMailboxFailure(null));
|
||||||
}
|
}
|
||||||
@@ -752,7 +738,6 @@ class MailboxController extends BaseMailboxController with MailboxActionHandlerM
|
|||||||
_switchBackToMailboxDefault();
|
_switchBackToMailboxDefault();
|
||||||
_closeEmailViewIfMailboxDisabledOrNotExist(listMailboxIdDeleted);
|
_closeEmailViewIfMailboxDisabledOrNotExist(listMailboxIdDeleted);
|
||||||
}
|
}
|
||||||
_refreshMailboxChanges(currentMailboxState: currentMailboxState);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void _openConfirmationDialogDeleteMultipleMailboxAction(
|
void _openConfirmationDialogDeleteMultipleMailboxAction(
|
||||||
@@ -794,9 +779,6 @@ class MailboxController extends BaseMailboxController with MailboxActionHandlerM
|
|||||||
}
|
}
|
||||||
|
|
||||||
void _deleteMultipleMailboxAction(List<PresentationMailbox> selectedMailboxList) {
|
void _deleteMultipleMailboxAction(List<PresentationMailbox> selectedMailboxList) {
|
||||||
final accountId = mailboxDashBoardController.accountId.value;
|
|
||||||
final session = mailboxDashBoardController.sessionCurrent;
|
|
||||||
|
|
||||||
if (session != null && accountId != null) {
|
if (session != null && accountId != null) {
|
||||||
final tupleMap = MailboxUtils.generateMapDescendantIdsAndMailboxIdList(
|
final tupleMap = MailboxUtils.generateMapDescendantIdsAndMailboxIdList(
|
||||||
selectedMailboxList,
|
selectedMailboxList,
|
||||||
@@ -805,10 +787,11 @@ class MailboxController extends BaseMailboxController with MailboxActionHandlerM
|
|||||||
final mapDescendantIds = tupleMap.value1;
|
final mapDescendantIds = tupleMap.value1;
|
||||||
final listMailboxId = tupleMap.value2;
|
final listMailboxId = tupleMap.value2;
|
||||||
consumeState(_deleteMultipleMailboxInteractor.execute(
|
consumeState(_deleteMultipleMailboxInteractor.execute(
|
||||||
session,
|
session!,
|
||||||
accountId,
|
accountId!,
|
||||||
mapDescendantIds,
|
mapDescendantIds,
|
||||||
listMailboxId));
|
listMailboxId,
|
||||||
|
));
|
||||||
} else {
|
} else {
|
||||||
_deleteMailboxFailure(DeleteMultipleMailboxFailure(null));
|
_deleteMailboxFailure(DeleteMultipleMailboxFailure(null));
|
||||||
}
|
}
|
||||||
@@ -835,13 +818,10 @@ class MailboxController extends BaseMailboxController with MailboxActionHandlerM
|
|||||||
}
|
}
|
||||||
|
|
||||||
void _renameMailboxAction(PresentationMailbox presentationMailbox, MailboxName newMailboxName) {
|
void _renameMailboxAction(PresentationMailbox presentationMailbox, MailboxName newMailboxName) {
|
||||||
final accountId = mailboxDashBoardController.accountId.value;
|
|
||||||
final session = mailboxDashBoardController.sessionCurrent;
|
|
||||||
|
|
||||||
if (session != null && accountId != null) {
|
if (session != null && accountId != null) {
|
||||||
consumeState(_renameMailboxInteractor.execute(
|
consumeState(_renameMailboxInteractor.execute(
|
||||||
session,
|
session!,
|
||||||
accountId,
|
accountId!,
|
||||||
RenameMailboxRequest(presentationMailbox.id, newMailboxName))
|
RenameMailboxRequest(presentationMailbox.id, newMailboxName))
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
@@ -890,18 +870,15 @@ class MailboxController extends BaseMailboxController with MailboxActionHandlerM
|
|||||||
textColor: Colors.white,
|
textColor: Colors.white,
|
||||||
actionIcon: SvgPicture.asset(imagePaths.icUndo));
|
actionIcon: SvgPicture.asset(imagePaths.icUndo));
|
||||||
}
|
}
|
||||||
|
|
||||||
_refreshMailboxChanges(
|
|
||||||
currentMailboxState: success.currentMailboxState,
|
|
||||||
properties: MailboxConstants.propertiesDefault
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void _undoMovingMailbox(MoveMailboxRequest newMoveRequest) {
|
void _undoMovingMailbox(MoveMailboxRequest newMoveRequest) {
|
||||||
final session = mailboxDashBoardController.sessionCurrent;
|
|
||||||
final accountId = mailboxDashBoardController.accountId.value;
|
|
||||||
if (session != null && accountId != null) {
|
if (session != null && accountId != null) {
|
||||||
consumeState(_moveMailboxInteractor.execute(session, accountId, newMoveRequest));
|
consumeState(_moveMailboxInteractor.execute(
|
||||||
|
session!,
|
||||||
|
accountId!,
|
||||||
|
newMoveRequest,
|
||||||
|
));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1034,13 +1011,11 @@ class MailboxController extends BaseMailboxController with MailboxActionHandlerM
|
|||||||
PresentationMailbox mailboxSelected,
|
PresentationMailbox mailboxSelected,
|
||||||
PresentationMailbox? destinationMailbox
|
PresentationMailbox? destinationMailbox
|
||||||
) {
|
) {
|
||||||
final accountId = mailboxDashBoardController.accountId.value;
|
|
||||||
final session = mailboxDashBoardController.sessionCurrent;
|
|
||||||
if (session != null && accountId != null) {
|
if (session != null && accountId != null) {
|
||||||
_handleMovingMailbox(
|
_handleMovingMailbox(
|
||||||
context,
|
context,
|
||||||
session,
|
session!,
|
||||||
accountId,
|
accountId!,
|
||||||
MoveAction.moving,
|
MoveAction.moving,
|
||||||
mailboxSelected,
|
mailboxSelected,
|
||||||
destinationMailbox: destinationMailbox
|
destinationMailbox: destinationMailbox
|
||||||
@@ -1112,13 +1087,12 @@ class MailboxController extends BaseMailboxController with MailboxActionHandlerM
|
|||||||
|
|
||||||
Future<void> _updateMailboxIdsBlockNotificationToKeychain(List<PresentationMailbox> mailboxes) async {
|
Future<void> _updateMailboxIdsBlockNotificationToKeychain(List<PresentationMailbox> mailboxes) async {
|
||||||
_iosSharingManager = getBinding<IOSSharingManager>();
|
_iosSharingManager = getBinding<IOSSharingManager>();
|
||||||
final accountId = mailboxDashBoardController.accountId.value;
|
|
||||||
if (accountId == null || _iosSharingManager == null || mailboxes.isEmpty) {
|
if (accountId == null || _iosSharingManager == null || mailboxes.isEmpty) {
|
||||||
logError('MailboxController::_updateMailboxIdsBlockNotificationToKeychain: AccountId = $accountId | IosSharingManager = $_iosSharingManager | Mailboxes = ${mailboxes.length}');
|
logError('MailboxController::_updateMailboxIdsBlockNotificationToKeychain: AccountId = $accountId | IosSharingManager = $_iosSharingManager | Mailboxes = ${mailboxes.length}');
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (await _iosSharingManager!.isExistMailboxIdsBlockNotificationInKeyChain(accountId)) {
|
if (await _iosSharingManager!.isExistMailboxIdsBlockNotificationInKeyChain(accountId!)) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1128,7 +1102,7 @@ class MailboxController extends BaseMailboxController with MailboxActionHandlerM
|
|||||||
.toList();
|
.toList();
|
||||||
log('MailboxController::_updateMailboxIdsBlockNotificationToKeychain:MailboxIdsBlockNotification = $mailboxIdsBlockNotification');
|
log('MailboxController::_updateMailboxIdsBlockNotificationToKeychain:MailboxIdsBlockNotification = $mailboxIdsBlockNotification');
|
||||||
_iosSharingManager!.updateMailboxIdsBlockNotificationInKeyChain(
|
_iosSharingManager!.updateMailboxIdsBlockNotificationInKeyChain(
|
||||||
accountId: accountId,
|
accountId: accountId!,
|
||||||
mailboxIds: mailboxIdsBlockNotification);
|
mailboxIds: mailboxIdsBlockNotification);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1145,8 +1119,6 @@ class MailboxController extends BaseMailboxController with MailboxActionHandlerM
|
|||||||
}
|
}
|
||||||
|
|
||||||
void _unsubscribeMailboxAction(MailboxId mailboxId) {
|
void _unsubscribeMailboxAction(MailboxId mailboxId) {
|
||||||
final accountId = mailboxDashBoardController.accountId.value;
|
|
||||||
final session = mailboxDashBoardController.sessionCurrent;
|
|
||||||
if (session != null && accountId != null) {
|
if (session != null && accountId != null) {
|
||||||
final subscribeRequest = generateSubscribeRequest(
|
final subscribeRequest = generateSubscribeRequest(
|
||||||
mailboxId,
|
mailboxId,
|
||||||
@@ -1155,9 +1127,17 @@ class MailboxController extends BaseMailboxController with MailboxActionHandlerM
|
|||||||
);
|
);
|
||||||
|
|
||||||
if (subscribeRequest is SubscribeMultipleMailboxRequest) {
|
if (subscribeRequest is SubscribeMultipleMailboxRequest) {
|
||||||
consumeState(_subscribeMultipleMailboxInteractor.execute(session, accountId, subscribeRequest));
|
consumeState(_subscribeMultipleMailboxInteractor.execute(
|
||||||
|
session!,
|
||||||
|
accountId!,
|
||||||
|
subscribeRequest,
|
||||||
|
));
|
||||||
} else if (subscribeRequest is SubscribeMailboxRequest) {
|
} else if (subscribeRequest is SubscribeMailboxRequest) {
|
||||||
consumeState(_subscribeMailboxInteractor.execute(session, accountId, subscribeRequest));
|
consumeState(_subscribeMailboxInteractor.execute(
|
||||||
|
session!,
|
||||||
|
accountId!,
|
||||||
|
subscribeRequest,
|
||||||
|
));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1171,11 +1151,6 @@ class MailboxController extends BaseMailboxController with MailboxActionHandlerM
|
|||||||
_closeEmailViewIfMailboxDisabledOrNotExist([success.mailboxId]);
|
_closeEmailViewIfMailboxDisabledOrNotExist([success.mailboxId]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
_refreshMailboxChanges(
|
|
||||||
currentMailboxState: success.currentMailboxState,
|
|
||||||
properties: MailboxConstants.propertiesDefault
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void _handleUnsubscribeMultipleMailboxAllSuccess(SubscribeMultipleMailboxAllSuccess success) {
|
void _handleUnsubscribeMultipleMailboxAllSuccess(SubscribeMultipleMailboxAllSuccess success) {
|
||||||
@@ -1190,11 +1165,6 @@ class MailboxController extends BaseMailboxController with MailboxActionHandlerM
|
|||||||
_closeEmailViewIfMailboxDisabledOrNotExist(success.mailboxIdsSubscribe);
|
_closeEmailViewIfMailboxDisabledOrNotExist(success.mailboxIdsSubscribe);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
_refreshMailboxChanges(
|
|
||||||
currentMailboxState: success.currentMailboxState,
|
|
||||||
properties: MailboxConstants.propertiesDefault
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void _handleUnsubscribeMultipleMailboxHasSomeSuccess(SubscribeMultipleMailboxHasSomeSuccess success) {
|
void _handleUnsubscribeMultipleMailboxHasSomeSuccess(SubscribeMultipleMailboxHasSomeSuccess success) {
|
||||||
@@ -1209,11 +1179,6 @@ class MailboxController extends BaseMailboxController with MailboxActionHandlerM
|
|||||||
_closeEmailViewIfMailboxDisabledOrNotExist(success.mailboxIdsSubscribe);
|
_closeEmailViewIfMailboxDisabledOrNotExist(success.mailboxIdsSubscribe);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
_refreshMailboxChanges(
|
|
||||||
currentMailboxState: success.currentMailboxState,
|
|
||||||
properties: MailboxConstants.propertiesDefault
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void _closeEmailViewIfMailboxDisabledOrNotExist(List<MailboxId> mailboxIdsDisabled) {
|
void _closeEmailViewIfMailboxDisabledOrNotExist(List<MailboxId> mailboxIdsDisabled) {
|
||||||
@@ -1253,9 +1218,6 @@ class MailboxController extends BaseMailboxController with MailboxActionHandlerM
|
|||||||
MailboxId mailboxIdSubscribed,
|
MailboxId mailboxIdSubscribed,
|
||||||
{List<MailboxId>? listDescendantMailboxIds}
|
{List<MailboxId>? listDescendantMailboxIds}
|
||||||
) {
|
) {
|
||||||
final accountId = mailboxDashBoardController.accountId.value;
|
|
||||||
final session = mailboxDashBoardController.sessionCurrent;
|
|
||||||
|
|
||||||
if (session != null && accountId != null) {
|
if (session != null && accountId != null) {
|
||||||
SubscribeRequest? subscribeRequest;
|
SubscribeRequest? subscribeRequest;
|
||||||
|
|
||||||
@@ -1275,9 +1237,17 @@ class MailboxController extends BaseMailboxController with MailboxActionHandlerM
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (subscribeRequest is SubscribeMultipleMailboxRequest) {
|
if (subscribeRequest is SubscribeMultipleMailboxRequest) {
|
||||||
consumeState(_subscribeMultipleMailboxInteractor.execute(session, accountId, subscribeRequest));
|
consumeState(_subscribeMultipleMailboxInteractor.execute(
|
||||||
|
session!,
|
||||||
|
accountId!,
|
||||||
|
subscribeRequest,
|
||||||
|
));
|
||||||
} else if (subscribeRequest is SubscribeMailboxRequest) {
|
} else if (subscribeRequest is SubscribeMailboxRequest) {
|
||||||
consumeState(_subscribeMailboxInteractor.execute(session, accountId, subscribeRequest));
|
consumeState(_subscribeMailboxInteractor.execute(
|
||||||
|
session!,
|
||||||
|
accountId!,
|
||||||
|
subscribeRequest,
|
||||||
|
));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user