TF-3911 Support mail keyboard shortcut actions in email detailed view on web

This commit is contained in:
dab246
2025-07-29 02:00:32 +07:00
committed by Dat H. Pham
parent 1c7778d6cc
commit b2989521d9
36 changed files with 763 additions and 270 deletions
@@ -7,6 +7,8 @@ import 'package:model/model.dart';
extension ListPresentationEmailExtension on List<PresentationEmail> {
bool get isAllEmailRead => every((email) => email.hasRead);
bool get isAllEmailUnread => every((email) => !email.hasRead);
bool get isAllEmailStarred => every((email) => email.hasStarred);
bool get isAllSelectionInActive {
@@ -15,6 +15,7 @@ import 'package:model/email/eml_attachment.dart';
import 'package:model/email/presentation_email.dart';
import 'package:model/extensions/email_address_extension.dart';
import 'package:model/extensions/list_email_address_extension.dart';
import 'package:model/extensions/presentation_mailbox_extension.dart';
import 'package:model/extensions/utc_date_extension.dart';
import 'package:model/mailbox/presentation_mailbox.dart';
import 'package:model/mailbox/select_mode.dart';
@@ -207,4 +208,13 @@ extension PresentationEmailExtension on PresentationEmail {
keywords?.addAll(newKeywords);
keywords?.removeWhere((key, value) => !value);
}
bool get isDeletePermanentlyEnabled {
return mailboxContain?.isTrash ?? mailboxContain?.isSpam ?? false;
}
bool isReplyAllEnabled(String ownerEmailAddress) {
final countMailAddress = getCountMailAddressWithoutMe(ownerEmailAddress);
return countMailAddress > 1;
}
}