TF-3372 Use viewStateMailboxActionProgress to build progress bar for not only MarkAsRead but also Empty mailbox action
This commit is contained in:
committed by
Dat H. Pham
parent
da0a3a9da6
commit
06adc9e6a8
+21
-5
@@ -225,7 +225,7 @@ class MailboxDashBoardController extends ReloadableController
|
|||||||
final filterMessageOption = FilterMessageOption.all.obs;
|
final filterMessageOption = FilterMessageOption.all.obs;
|
||||||
final listEmailSelected = <PresentationEmail>[].obs;
|
final listEmailSelected = <PresentationEmail>[].obs;
|
||||||
final composerOverlayState = ComposerOverlayState.inActive.obs;
|
final composerOverlayState = ComposerOverlayState.inActive.obs;
|
||||||
final viewStateMarkAsReadMailbox = Rx<Either<Failure, Success>>(Right(UIState.idle));
|
final viewStateMailboxActionProgress = Rx<Either<Failure, Success>>(Right(UIState.idle));
|
||||||
final vacationResponse = Rxn<VacationResponse>();
|
final vacationResponse = Rxn<VacationResponse>();
|
||||||
final routerParameters = Rxn<Map<String, dynamic>>();
|
final routerParameters = Rxn<Map<String, dynamic>>();
|
||||||
final _isDraggingMailbox = RxBool(false);
|
final _isDraggingMailbox = RxBool(false);
|
||||||
@@ -559,7 +559,7 @@ class MailboxDashBoardController extends ReloadableController
|
|||||||
|
|
||||||
void _registerStreamListener() {
|
void _registerStreamListener() {
|
||||||
progressState.listen((state) {
|
progressState.listen((state) {
|
||||||
viewStateMarkAsReadMailbox.value = state;
|
viewStateMailboxActionProgress.value = state;
|
||||||
});
|
});
|
||||||
|
|
||||||
_refreshActionEventController.stream
|
_refreshActionEventController.stream
|
||||||
@@ -1395,6 +1395,8 @@ class MailboxDashBoardController extends ReloadableController
|
|||||||
}
|
}
|
||||||
|
|
||||||
void _emptyTrashFolderSuccess(EmptyTrashFolderSuccess success) {
|
void _emptyTrashFolderSuccess(EmptyTrashFolderSuccess success) {
|
||||||
|
viewStateMailboxActionProgress.value = Right(UIState.idle);
|
||||||
|
|
||||||
if (currentOverlayContext != null && currentContext != null) {
|
if (currentOverlayContext != null && currentContext != null) {
|
||||||
appToast.showToastSuccessMessage(
|
appToast.showToastSuccessMessage(
|
||||||
currentOverlayContext!,
|
currentOverlayContext!,
|
||||||
@@ -1537,7 +1539,7 @@ class MailboxDashBoardController extends ReloadableController
|
|||||||
}
|
}
|
||||||
|
|
||||||
void _markAsReadMailboxSuccess(Success success) {
|
void _markAsReadMailboxSuccess(Success success) {
|
||||||
viewStateMarkAsReadMailbox.value = Right(UIState.idle);
|
viewStateMailboxActionProgress.value = Right(UIState.idle);
|
||||||
|
|
||||||
if (success is MarkAsMailboxReadAllSuccess) {
|
if (success is MarkAsMailboxReadAllSuccess) {
|
||||||
if (currentContext != null && currentOverlayContext != null) {
|
if (currentContext != null && currentOverlayContext != null) {
|
||||||
@@ -1557,7 +1559,7 @@ class MailboxDashBoardController extends ReloadableController
|
|||||||
}
|
}
|
||||||
|
|
||||||
void _markAsReadMailboxFailure(MarkAsMailboxReadFailure failure) {
|
void _markAsReadMailboxFailure(MarkAsMailboxReadFailure failure) {
|
||||||
viewStateMarkAsReadMailbox.value = Right(UIState.idle);
|
viewStateMailboxActionProgress.value = Right(UIState.idle);
|
||||||
if (currentOverlayContext != null && currentContext != null) {
|
if (currentOverlayContext != null && currentContext != null) {
|
||||||
appToast.showToastErrorMessage(
|
appToast.showToastErrorMessage(
|
||||||
currentOverlayContext!,
|
currentOverlayContext!,
|
||||||
@@ -1569,7 +1571,7 @@ class MailboxDashBoardController extends ReloadableController
|
|||||||
}
|
}
|
||||||
|
|
||||||
void _markAsReadMailboxAllFailure(MarkAsMailboxReadAllFailure failure) {
|
void _markAsReadMailboxAllFailure(MarkAsMailboxReadAllFailure failure) {
|
||||||
viewStateMarkAsReadMailbox.value = Right(UIState.idle);
|
viewStateMailboxActionProgress.value = Right(UIState.idle);
|
||||||
if (currentOverlayContext != null && currentContext != null) {
|
if (currentOverlayContext != null && currentContext != null) {
|
||||||
appToast.showToastErrorMessage(
|
appToast.showToastErrorMessage(
|
||||||
currentOverlayContext!,
|
currentOverlayContext!,
|
||||||
@@ -2392,6 +2394,8 @@ class MailboxDashBoardController extends ReloadableController
|
|||||||
}
|
}
|
||||||
|
|
||||||
void _emptySpamFolderSuccess(EmptySpamFolderSuccess success) {
|
void _emptySpamFolderSuccess(EmptySpamFolderSuccess success) {
|
||||||
|
viewStateMailboxActionProgress.value = Right(UIState.idle);
|
||||||
|
|
||||||
if (currentOverlayContext != null && currentContext != null) {
|
if (currentOverlayContext != null && currentContext != null) {
|
||||||
appToast.showToastSuccessMessage(
|
appToast.showToastSuccessMessage(
|
||||||
currentOverlayContext!,
|
currentOverlayContext!,
|
||||||
@@ -2776,6 +2780,18 @@ class MailboxDashBoardController extends ReloadableController
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void _handleEmptySpamFolderFailure(EmptySpamFolderFailure failure) {
|
||||||
|
viewStateMailboxActionProgress.value = Right(UIState.idle);
|
||||||
|
|
||||||
|
toastManager.showMessageFailure(failure);
|
||||||
|
}
|
||||||
|
|
||||||
|
void _handleEmptyTrashFolderFailure(EmptyTrashFolderFailure failure) {
|
||||||
|
viewStateMailboxActionProgress.value = Right(UIState.idle);
|
||||||
|
|
||||||
|
toastManager.showMessageFailure(failure);
|
||||||
|
}
|
||||||
|
|
||||||
void _handleGetRestoredDeletedMessageSuccess(GetRestoredDeletedMessageSuccess success) async {
|
void _handleGetRestoredDeletedMessageSuccess(GetRestoredDeletedMessageSuccess success) async {
|
||||||
if (selectedMailbox.value != null && selectedMailbox.value!.isRecovered) {
|
if (selectedMailbox.value != null && selectedMailbox.value!.isRecovered) {
|
||||||
dispatchEmailUIAction(RefreshChangeEmailAction(null));
|
dispatchEmailUIAction(RefreshChangeEmailAction(null));
|
||||||
|
|||||||
@@ -107,7 +107,7 @@ class MailboxDashBoardView extends BaseMailboxDashBoardView {
|
|||||||
responsiveUtils: controller.responsiveUtils,
|
responsiveUtils: controller.responsiveUtils,
|
||||||
)),
|
)),
|
||||||
Obx(() => MarkMailboxAsReadLoadingBanner(
|
Obx(() => MarkMailboxAsReadLoadingBanner(
|
||||||
viewState: controller.viewStateMarkAsReadMailbox.value,
|
viewState: controller.viewStateMailboxActionProgress.value,
|
||||||
)),
|
)),
|
||||||
const SpamReportBannerWebWidget(),
|
const SpamReportBannerWebWidget(),
|
||||||
QuotasBannerWidget(),
|
QuotasBannerWidget(),
|
||||||
|
|||||||
@@ -864,7 +864,7 @@ class ThreadView extends GetWidget<ThreadController>
|
|||||||
|
|
||||||
Widget _buildMarkAsMailboxReadLoading(BuildContext context) {
|
Widget _buildMarkAsMailboxReadLoading(BuildContext context) {
|
||||||
return Obx(() {
|
return Obx(() {
|
||||||
final viewState = controller.mailboxDashBoardController.viewStateMarkAsReadMailbox.value;
|
final viewState = controller.mailboxDashBoardController.viewStateMailboxActionProgress.value;
|
||||||
return viewState.fold(
|
return viewState.fold(
|
||||||
(failure) => const SizedBox.shrink(),
|
(failure) => const SizedBox.shrink(),
|
||||||
(success) {
|
(success) {
|
||||||
|
|||||||
Reference in New Issue
Block a user