TF-2667 Add cancel button in progress send message dialog

This commit is contained in:
dab246
2024-03-12 12:53:41 +07:00
committed by Dat H. Pham
parent ae6341532c
commit f2b70aec48
16 changed files with 215 additions and 46 deletions
+12 -4
View File
@@ -117,7 +117,10 @@ class EmailAPI with HandleSetErrorMixin {
Session session,
AccountId accountId,
EmailRequest emailRequest,
{CreateNewMailboxRequest? mailboxRequest}
{
CreateNewMailboxRequest? mailboxRequest,
CancelToken? cancelToken,
}
) async {
final requestBuilder = JmapRequestBuilder(_httpClient, ProcessingInvocation());
@@ -199,7 +202,7 @@ class EmailAPI with HandleSetErrorMixin {
final response = await (requestBuilder
..usings(capabilities))
.build()
.execute();
.execute(cancelToken: cancelToken);
final setEmailResponse = response.parse<SetEmailResponse>(
setEmailInvocation.methodCallId,
@@ -606,7 +609,12 @@ class EmailAPI with HandleSetErrorMixin {
return List.empty();
}
Future<bool> deleteEmailPermanently(Session session, AccountId accountId, EmailId emailId) async {
Future<bool> deleteEmailPermanently(
Session session,
AccountId accountId,
EmailId emailId,
{CancelToken? cancelToken}
) async {
final requestBuilder = JmapRequestBuilder(_httpClient, ProcessingInvocation());
final setEmailMethod = SetEmailMethod(accountId)
..addDestroy({emailId.id});
@@ -619,7 +627,7 @@ class EmailAPI with HandleSetErrorMixin {
final response = await (requestBuilder
..usings(capabilities))
.build()
.execute();
.execute(cancelToken: cancelToken);
final setEmailResponse = response.parse<SetEmailResponse>(
setEmailInvocation.methodCallId,