TF-3449 Update Mark as Important state when open draft email and reload page
Signed-off-by: dab246 <tdvu@linagora.com>
This commit is contained in:
@@ -35,6 +35,7 @@ class SaveComposerCacheOnWebInteractor {
|
||||
composerCache: ComposerCache(
|
||||
email: emailCreated,
|
||||
hasRequestReadReceipt: createEmailRequest.hasRequestReadReceipt,
|
||||
isMarkAsImportant: createEmailRequest.isMarkAsImportant,
|
||||
displayMode: createEmailRequest.displayMode
|
||||
));
|
||||
return Right(SaveComposerCacheSuccess());
|
||||
|
||||
@@ -634,6 +634,7 @@ class ComposerController extends BaseController
|
||||
emailId: arguments.presentationEmail!.id!,
|
||||
);
|
||||
_emailIdEditing = arguments.presentationEmail!.id!;
|
||||
isMarkAsImportant.value = arguments.presentationEmail!.isMarkAsImportant;
|
||||
break;
|
||||
case EmailActionType.editSendingEmail:
|
||||
_initEmailAddress(
|
||||
@@ -721,6 +722,7 @@ class ComposerController extends BaseController
|
||||
if (!PlatformInfo.isWeb) return;
|
||||
|
||||
screenDisplayMode.value = arguments.displayMode;
|
||||
isMarkAsImportant.value = arguments.isMarkAsImportant ?? false;
|
||||
|
||||
_initEmailAddress(
|
||||
presentationEmail: arguments.presentationEmail!,
|
||||
@@ -1316,6 +1318,7 @@ class ComposerController extends BaseController
|
||||
identity: identitySelected.value,
|
||||
attachments: uploadController.attachmentsUploaded,
|
||||
hasReadReceipt: hasRequestReadReceipt.value,
|
||||
isMarkAsImportant: isMarkAsImportant.value,
|
||||
);
|
||||
|
||||
return savedEmailDraft.hashCode;
|
||||
|
||||
@@ -13,6 +13,7 @@ class SavedEmailDraft with EquatableMixin {
|
||||
final List<Attachment> attachments;
|
||||
final Identity? identity;
|
||||
final bool hasReadReceipt;
|
||||
final bool isMarkAsImportant;
|
||||
|
||||
SavedEmailDraft({
|
||||
required this.content,
|
||||
@@ -24,6 +25,7 @@ class SavedEmailDraft with EquatableMixin {
|
||||
required this.attachments,
|
||||
required this.identity,
|
||||
required this.hasReadReceipt,
|
||||
this.isMarkAsImportant = false,
|
||||
});
|
||||
|
||||
factory SavedEmailDraft.empty() {
|
||||
@@ -51,6 +53,7 @@ class SavedEmailDraft with EquatableMixin {
|
||||
{3: replyToRecipients},
|
||||
attachments,
|
||||
identity,
|
||||
hasReadReceipt
|
||||
hasReadReceipt,
|
||||
isMarkAsImportant,
|
||||
];
|
||||
}
|
||||
@@ -29,6 +29,7 @@ class ComposerArguments extends RouterArguments {
|
||||
final IdentityId? selectedIdentityId;
|
||||
final List<Attachment>? inlineImages;
|
||||
final bool? hasRequestReadReceipt;
|
||||
final bool? isMarkAsImportant;
|
||||
final ScreenDisplayMode displayMode;
|
||||
final List<EmailAddress>? cc;
|
||||
final List<EmailAddress>? bcc;
|
||||
@@ -56,6 +57,7 @@ class ComposerArguments extends RouterArguments {
|
||||
this.cc,
|
||||
this.bcc,
|
||||
this.listPost,
|
||||
this.isMarkAsImportant,
|
||||
});
|
||||
|
||||
factory ComposerArguments.fromSendingEmail(SendingEmail sendingEmail) =>
|
||||
@@ -119,6 +121,7 @@ class ComposerArguments extends RouterArguments {
|
||||
inlineImages: composerCache.email?.allAttachments.listAttachmentsDisplayedInContent,
|
||||
hasRequestReadReceipt: composerCache.hasRequestReadReceipt,
|
||||
displayMode: composerCache.displayMode,
|
||||
isMarkAsImportant: composerCache.isMarkAsImportant,
|
||||
);
|
||||
|
||||
factory ComposerArguments.replyEmail({
|
||||
@@ -234,6 +237,7 @@ class ComposerArguments extends RouterArguments {
|
||||
selectedIdentityId,
|
||||
inlineImages,
|
||||
hasRequestReadReceipt,
|
||||
isMarkAsImportant,
|
||||
displayMode,
|
||||
cc,
|
||||
bcc,
|
||||
@@ -258,6 +262,7 @@ class ComposerArguments extends RouterArguments {
|
||||
IdentityId? selectedIdentityId,
|
||||
List<Attachment>? inlineImages,
|
||||
bool? hasRequestReadReceipt,
|
||||
bool? isMarkAsImportant,
|
||||
ScreenDisplayMode? displayMode,
|
||||
List<EmailAddress>? cc,
|
||||
List<EmailAddress>? bcc,
|
||||
@@ -281,6 +286,7 @@ class ComposerArguments extends RouterArguments {
|
||||
selectedIdentityId: selectedIdentityId ?? this.selectedIdentityId,
|
||||
inlineImages: inlineImages ?? this.inlineImages,
|
||||
hasRequestReadReceipt: hasRequestReadReceipt ?? this.hasRequestReadReceipt,
|
||||
isMarkAsImportant: isMarkAsImportant ?? this.isMarkAsImportant,
|
||||
displayMode: displayMode ?? this.displayMode,
|
||||
cc: cc ?? this.cc,
|
||||
bcc: bcc ?? this.bcc,
|
||||
|
||||
@@ -10,11 +10,13 @@ class ComposerCache with EquatableMixin {
|
||||
|
||||
final Email? email;
|
||||
final bool? hasRequestReadReceipt;
|
||||
final bool? isMarkAsImportant;
|
||||
final ScreenDisplayMode displayMode;
|
||||
|
||||
ComposerCache({
|
||||
this.email,
|
||||
this.hasRequestReadReceipt,
|
||||
this.isMarkAsImportant,
|
||||
this.displayMode = ScreenDisplayMode.normal
|
||||
});
|
||||
|
||||
@@ -26,6 +28,7 @@ class ComposerCache with EquatableMixin {
|
||||
List<Object?> get props => [
|
||||
email,
|
||||
hasRequestReadReceipt,
|
||||
isMarkAsImportant,
|
||||
displayMode
|
||||
];
|
||||
}
|
||||
|
||||
@@ -347,7 +347,7 @@ void main() {
|
||||
replyToRecipients: {replyToRecipient},
|
||||
identity: identity,
|
||||
attachments: [attachment],
|
||||
hasReadReceipt: alwaysReadReceiptEnabled
|
||||
hasReadReceipt: alwaysReadReceiptEnabled,
|
||||
);
|
||||
|
||||
// act
|
||||
|
||||
Reference in New Issue
Block a user