TF-369 Fix auto close email when download attachment in browser with small screen

This commit is contained in:
dab246
2022-03-29 16:39:41 +07:00
committed by Dat H. Pham
parent bdd3fac021
commit 3a38d40469
4 changed files with 21 additions and 13 deletions
@@ -140,8 +140,6 @@ class EmailController extends BaseController {
_moveToMailboxSuccess(success);
} else if (success is MarkAsStarEmailSuccess) {
_markAsEmailStarSuccess(success);
} else if (success is DownloadAttachmentForWebSuccess) {
_downloadAttachmentForWebSuccessAction(success);
}
});
}
@@ -308,28 +306,25 @@ class EmailController extends BaseController {
}
}
void downloadAttachmentForWeb(Attachment attachment) {
_downloadAttachmentForWebAction(attachment);
void downloadAttachmentForWeb(BuildContext context, Attachment attachment) {
_downloadAttachmentForWebAction(context, attachment);
}
void _downloadAttachmentForWebAction(Attachment attachment) async {
void _downloadAttachmentForWebAction(BuildContext context, Attachment attachment) async {
final accountId = mailboxDashBoardController.accountId.value;
if (accountId != null && mailboxDashBoardController.sessionCurrent != null) {
final baseDownloadUrl = mailboxDashBoardController.sessionCurrent!.getDownloadUrl();
_appToast.showToast(AppLocalizations.of(context).your_download_has_started);
consumeState(_downloadAttachmentForWebInteractor.execute(attachment, accountId, baseDownloadUrl));
}
}
void _downloadAttachmentForWebFailureAction(Failure failure) {
if (failure is DownloadAttachmentForWebFailure) {
popBack();
if (failure is DownloadAttachmentForWebFailure && currentContext != null) {
_appToast.showErrorToast(AppLocalizations.of(currentContext!).attachment_download_failed);
}
}
void _downloadAttachmentForWebSuccessAction(Success success) async {
popBack();
}
void moveToMailboxAction(PresentationEmail email) async {
final currentMailbox = mailboxDashBoardController.selectedMailbox.value;
final accountId = mailboxDashBoardController.accountId.value;
@@ -450,7 +450,7 @@ class EmailView extends GetView with UserSettingPopupMenuMixin {
..onExpandAttachmentActionClick(() => emailController.toggleDisplayAttachmentsAction())
..onDownloadAttachmentFileActionClick((attachment) {
if (kIsWeb) {
emailController.downloadAttachmentForWeb(attachment);
emailController.downloadAttachmentForWeb(context, attachment);
} else {
if (Platform.isAndroid) {
emailController.downloadAttachments(context, [attachment]);
+7 -1
View File
@@ -1,5 +1,5 @@
{
"@@last_modified": "2022-03-29T13:00:02.017403",
"@@last_modified": "2022-03-29T16:34:59.741046",
"initializing_data": "Initializing data...",
"@initializing_data": {
"type": "text",
@@ -899,5 +899,11 @@
"type": "text",
"placeholders_order": [],
"placeholders": {}
},
"your_download_has_started": "Your download has started",
"@your_download_has_started": {
"type": "text",
"placeholders_order": [],
"placeholders": {}
}
}
@@ -956,4 +956,11 @@ class AppLocalizations {
name: 'the_total_size_of_attachments_in_an_email_exceeds_the_limit'
);
}
String get your_download_has_started {
return Intl.message(
'Your download has started',
name: 'your_download_has_started'
);
}
}