diff --git a/lib/features/mailbox/presentation/mailbox_view_web.dart b/lib/features/mailbox/presentation/mailbox_view_web.dart index f7bd4bd9f..19989bea3 100644 --- a/lib/features/mailbox/presentation/mailbox_view_web.dart +++ b/lib/features/mailbox/presentation/mailbox_view_web.dart @@ -285,7 +285,7 @@ class MailboxView extends GetWidget with AppLoaderMixin, Popu _openMailboxMenuAction(context, position, mailboxNode.item)) ..addOnSelectMailboxFolderClick((mailboxNode) => controller.selectMailboxNode(mailboxNode)) - ..addOnDragItemAccepted(controller.mailboxDashBoardController.dragSelectedMultipleEmailToMailboxAction)) + ..addOnDragItemAccepted(_handleDragItemAccepted)) .build()), children: _buildListChildTileWidget(context, mailboxNode) ).build() @@ -297,11 +297,23 @@ class MailboxView extends GetWidget with AppLoaderMixin, Popu _openMailboxMenuAction(context, position, mailboxNode.item)) ..addOnSelectMailboxFolderClick((mailboxNode) => controller.selectMailboxNode(mailboxNode)) - ..addOnDragItemAccepted(controller.mailboxDashBoardController.dragSelectedMultipleEmailToMailboxAction)) + ..addOnDragItemAccepted(_handleDragItemAccepted)) .build()) ).toList() ?? []; } + void _handleDragItemAccepted(List listEmails, PresentationMailbox presentationMailbox) { + final mailboxPath = controller.findNodePath(presentationMailbox.id) + ?? presentationMailbox.name?.name; + log('MailboxView::_handleDragItemAccepted(): mailboxPath: $mailboxPath'); + if (mailboxPath != null) { + final newMailbox = presentationMailbox.toPresentationMailboxWithMailboxPath(mailboxPath); + controller.mailboxDashBoardController.dragSelectedMultipleEmailToMailboxAction(listEmails, newMailbox); + } else { + controller.mailboxDashBoardController.dragSelectedMultipleEmailToMailboxAction(listEmails, presentationMailbox); + } + } + Widget _buildInputSearchFormWidget(BuildContext context) { return Padding( padding: const EdgeInsets.only(top: 16),