TF-3881 Thread Detail Bottom sheet close when action

TF-3881 Thread Detail Unsubscribe context menu

TF-3881 Thread Detail Update date time format

TF-3881 Thread Detail Update sender receiver spacing

TF-3881 Thread Detail Add messageId and references to presentation email

TF-3881 Thread Detail Filter created email on refresh

TF-3881 Thread Detail Fix CI

TF-3881 Thread Detail Fix previous action throws out of index

TF-3881 Thread Detail Update sender receiver spacing

TF-3881 Thread Detail Adjust email actions when expanded

TF-3881 Thread Detail Adjust days ago received time

TF-3881 Thread Detail Fix debouncer when update setting

TF-3881 Thread Detail Adjust days ago received time

TF-3881 Thread Detail Adjust email actions when expanded

TF-3881 Thread Detail Hide next previous if not in range

TF-3881 Thread Detail Arrange more action according to text direction

TF-3881 Thread Detail Hide next previous if not in range

TF-3881 Thread Detail Fix move email on tablet
This commit is contained in:
DatDang
2025-07-18 10:34:08 +07:00
committed by Dat H. Pham
parent 51c5c7e13a
commit b3ce1f076c
20 changed files with 108 additions and 43 deletions
+10
View File
@@ -54,6 +54,8 @@ class PresentationEmail with EquatableMixin, SearchSnippetMixin {
final Map<IndividualHeaderIdentifier, String?>? listPostHeader;
final Map<IndividualHeaderIdentifier, String?>? listUnsubscribeHeader;
final EmailInThreadStatus? emailInThreadStatus;
final MessageIdsHeaderValue? messageId;
final MessageIdsHeaderValue? references;
PresentationEmail({
this.id,
@@ -85,6 +87,8 @@ class PresentationEmail with EquatableMixin, SearchSnippetMixin {
this.listPostHeader,
this.listUnsubscribeHeader,
this.emailInThreadStatus,
this.messageId,
this.references,
});
String getSenderName() {
@@ -215,6 +219,8 @@ class PresentationEmail with EquatableMixin, SearchSnippetMixin {
listPostHeader,
listUnsubscribeHeader,
emailInThreadStatus,
messageId,
references,
];
PresentationEmail copyWith({
@@ -247,6 +253,8 @@ class PresentationEmail with EquatableMixin, SearchSnippetMixin {
Map<IndividualHeaderIdentifier, String?>? listPostHeader,
Map<IndividualHeaderIdentifier, String?>? listUnsubscribeHeader,
EmailInThreadStatus? emailInThreadStatus,
MessageIdsHeaderValue? messageId,
MessageIdsHeaderValue? references,
}) {
return PresentationEmail(
id: id ?? this.id,
@@ -278,6 +286,8 @@ class PresentationEmail with EquatableMixin, SearchSnippetMixin {
listPostHeader: listPostHeader ?? this.listPostHeader,
listUnsubscribeHeader: listUnsubscribeHeader ?? this.listUnsubscribeHeader,
emailInThreadStatus: emailInThreadStatus ?? this.emailInThreadStatus,
messageId: messageId ?? this.messageId,
references: references ?? this.references,
);
}
}
@@ -131,6 +131,8 @@ extension EmailExtension on Email {
priorityHeader: priorityHeader,
listPostHeader: listPostHeader,
listUnsubscribeHeader: listUnsubscribeHeader,
messageId: messageId,
references: references,
)
..searchSnippetSubject = searchSnippetSubject
..searchSnippetPreview = searchSnippetPreview;
@@ -170,6 +172,8 @@ extension EmailExtension on Email {
listUnsubscribeHeader: updatedProperties.contain(IndividualHeaderIdentifier.listUnsubscribeHeader.value)
? newEmail.listUnsubscribeHeader
: listUnsubscribeHeader,
messageId: updatedProperties.contain(EmailProperty.messageId) ? newEmail.messageId : messageId,
references: updatedProperties.contain(EmailProperty.references) ? newEmail.references : references,
);
}
@@ -114,6 +114,8 @@ extension PresentationEmailExtension on PresentationEmail {
listPostHeader: listPostHeader,
listUnsubscribeHeader: listUnsubscribeHeader,
threadId: threadId,
messageId: messageId,
references: references,
);
}