TF-1715 Perform email actions in Favorite folder
This commit is contained in:
+2
-1
@@ -1347,7 +1347,8 @@ class MailboxDashBoardController extends ReloadableController
|
||||
.where((email) => email.id != null)
|
||||
.map((e) => MapEntry(e.id!, e.hasRead))
|
||||
);
|
||||
if (searchController.isSearchEmailRunning){
|
||||
if (searchController.isSearchEmailRunning ||
|
||||
selectedMailbox.value?.id.isFavoriteMailboxId == true) {
|
||||
final Map<MailboxId,List<EmailId>> mapListEmailSelectedByMailBoxId = {};
|
||||
for (var element in listEmails) {
|
||||
final mailbox = element.findMailboxContain(mapMailboxById);
|
||||
|
||||
+3
-1
@@ -5,6 +5,7 @@ import 'package:jmap_dart_client/jmap/mail/mailbox/mailbox.dart';
|
||||
import 'package:model/email/email_action_type.dart';
|
||||
import 'package:model/email/presentation_email.dart';
|
||||
import 'package:model/extensions/list_presentation_email_extension.dart';
|
||||
import 'package:model/extensions/mailbox_id_extension.dart';
|
||||
import 'package:model/extensions/presentation_email_extension.dart';
|
||||
import 'package:model/mailbox/presentation_mailbox.dart';
|
||||
import 'package:tmail_ui_user/features/email/domain/model/move_action.dart';
|
||||
@@ -48,7 +49,8 @@ extension HandleActionTypeForEmailSelection on MailboxDashBoardController {
|
||||
|
||||
final mapEmailIdsByMailboxId = <MailboxId, List<EmailId>>{};
|
||||
|
||||
if (searchController.isSearchEmailRunning) {
|
||||
if (searchController.isSearchEmailRunning ||
|
||||
selectedMailbox.value?.id.isFavoriteMailboxId == true) {
|
||||
for (final email in emails) {
|
||||
final mailboxId = email.firstMailboxIdAvailable;
|
||||
final emailId = email.id;
|
||||
|
||||
+5
-1
@@ -2,6 +2,7 @@ import 'package:jmap_dart_client/jmap/core/unsigned_int.dart';
|
||||
import 'package:jmap_dart_client/jmap/mail/email/email.dart';
|
||||
import 'package:jmap_dart_client/jmap/mail/mailbox/mailbox.dart';
|
||||
import 'package:model/email/presentation_email.dart';
|
||||
import 'package:model/extensions/mailbox_id_extension.dart';
|
||||
import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/controller/mailbox_dashboard_controller.dart';
|
||||
|
||||
extension MoveEmailsToMailboxExtension on MailboxDashBoardController {
|
||||
@@ -9,7 +10,10 @@ extension MoveEmailsToMailboxExtension on MailboxDashBoardController {
|
||||
required Map<MailboxId,List<EmailId>> originalMailboxIdsWithEmailIds,
|
||||
required MailboxId destinationMailboxId,
|
||||
}) {
|
||||
if (destinationMailboxId == selectedMailbox.value?.id) return;
|
||||
if (destinationMailboxId == selectedMailbox.value?.id ||
|
||||
selectedMailbox.value?.id.isFavoriteMailboxId == true) {
|
||||
return;
|
||||
}
|
||||
|
||||
final currentEmails = List<PresentationEmail>.from(
|
||||
emailsInCurrentMailbox,
|
||||
|
||||
Reference in New Issue
Block a user