diff --git a/lib/features/email/presentation/widgets/email_view_app_bar_widget.dart b/lib/features/email/presentation/widgets/email_view_app_bar_widget.dart index a1e180689..195bb5393 100644 --- a/lib/features/email/presentation/widgets/email_view_app_bar_widget.dart +++ b/lib/features/email/presentation/widgets/email_view_app_bar_widget.dart @@ -117,17 +117,17 @@ class EmailViewAppBarWidget extends StatelessWidget { iconSize: EmailViewAppBarWidgetStyles.deleteButtonIconSize, backgroundColor: Colors.transparent, padding: EmailViewAppBarWidgetStyles.buttonPadding, - iconColor: mailboxContain?.isTrash == false - ? EmailViewAppBarWidgetStyles.emptyTrashButtonColor - : EmailViewAppBarWidgetStyles.deletePermanentButtonColor, - tooltipMessage: mailboxContain?.isTrash == false - ? AppLocalizations.of(context).move_to_trash - : AppLocalizations.of(context).delete_permanently, + iconColor: canDeletePermanently + ? EmailViewAppBarWidgetStyles.deletePermanentButtonColor + : EmailViewAppBarWidgetStyles.emptyTrashButtonColor, + tooltipMessage: canDeletePermanently + ? AppLocalizations.of(context).delete_permanently + : AppLocalizations.of(context).move_to_trash, onTapActionCallback: () { - if (mailboxContain?.isTrash == false) { - onEmailActionClick?.call(presentationEmail, EmailActionType.moveToTrash); - } else { + if (canDeletePermanently) { onEmailActionClick?.call(presentationEmail, EmailActionType.deletePermanently); + } else { + onEmailActionClick?.call(presentationEmail, EmailActionType.moveToTrash); } } ), @@ -165,4 +165,8 @@ class EmailViewAppBarWidget extends StatelessWidget { isSearchActivated; } } + + bool get canDeletePermanently { + return mailboxContain?.isTrash == true || mailboxContain?.isSpam == true; + } } \ No newline at end of file diff --git a/lib/features/thread/presentation/widgets/app_bar/selection_web_app_bar_thread_widget.dart b/lib/features/thread/presentation/widgets/app_bar/selection_web_app_bar_thread_widget.dart index 0780601ab..4a0175a0a 100644 --- a/lib/features/thread/presentation/widgets/app_bar/selection_web_app_bar_thread_widget.dart +++ b/lib/features/thread/presentation/widgets/app_bar/selection_web_app_bar_thread_widget.dart @@ -152,5 +152,5 @@ class SelectionWebAppBarThreadWidget extends StatelessWidget { ); } - bool get _deletePermanentlyValid => mailboxSelected?.isTrash == true || mailboxSelected?.isDrafts == true; + bool get _deletePermanentlyValid => mailboxSelected?.isTrash == true || mailboxSelected?.isDrafts == true || mailboxSelected?.isSpam == true; } diff --git a/lib/features/thread/presentation/widgets/bottom_bar_thread_selection_widget.dart b/lib/features/thread/presentation/widgets/bottom_bar_thread_selection_widget.dart index c1b8a1f06..dd532d92f 100644 --- a/lib/features/thread/presentation/widgets/bottom_bar_thread_selection_widget.dart +++ b/lib/features/thread/presentation/widgets/bottom_bar_thread_selection_widget.dart @@ -164,7 +164,7 @@ class BottomBarThreadSelectionWidget extends StatelessWidget{ } bool get canDeletePermanently { - return _currentMailbox?.isTrash == true || _currentMailbox?.isDrafts == true; + return _currentMailbox?.isTrash == true || _currentMailbox?.isDrafts == true || _currentMailbox?.isSpam == true; } bool _verticalDirection(BuildContext context) { diff --git a/lib/features/thread/presentation/widgets/email_tile_web_builder.dart b/lib/features/thread/presentation/widgets/email_tile_web_builder.dart index ea7c6ef4e..7d37f1d59 100644 --- a/lib/features/thread/presentation/widgets/email_tile_web_builder.dart +++ b/lib/features/thread/presentation/widgets/email_tile_web_builder.dart @@ -477,7 +477,7 @@ class EmailTileBuilder with BaseEmailItemTile { } bool get canDeletePermanently { - return mailboxContain?.isTrash == true || mailboxContain?.isDrafts == true; + return mailboxContain?.isTrash == true || mailboxContain?.isDrafts == true || mailboxContain?.isSpam == true; } Widget _buildDateTimeForDesktopScreen() { diff --git a/model/lib/extensions/list_presentation_email_extension.dart b/model/lib/extensions/list_presentation_email_extension.dart index b5351c7c7..2535b39a8 100644 --- a/model/lib/extensions/list_presentation_email_extension.dart +++ b/model/lib/extensions/list_presentation_email_extension.dart @@ -27,7 +27,8 @@ extension ListPresentationEmailExtension on List { .whereType() .toList(); final stateDelete = listMailboxContain.every((mailbox) => mailbox.isTrash) || - listMailboxContain.every((mailbox) => mailbox.isDrafts); + listMailboxContain.every((mailbox) => mailbox.isDrafts) || + listMailboxContain.every((mailbox) => mailbox.isSpam); return stateDelete; }