diff --git a/lib/features/thread/presentation/thread_view.dart b/lib/features/thread/presentation/thread_view.dart index ab64b9d0e..88a1418d8 100644 --- a/lib/features/thread/presentation/thread_view.dart +++ b/lib/features/thread/presentation/thread_view.dart @@ -577,7 +577,8 @@ class ThreadView extends GetWidget with AppLoaderMixin, controller.currentMailbox?.role, controller.mailboxDashBoardController.currentSelectMode.value, controller.searchController.searchState.value.searchStatus, - controller.searchQuery) + controller.searchQuery, + advancedSearchActivated: controller.searchController.isAdvancedSearchHasApply.isTrue) ..addOnPressEmailActionClick((action, email) => controller.pressEmailAction(context, action, email)) ..addOnMoreActionClick((email, position) => _responsiveUtils.isMobile(context) ? controller.openContextMenuAction(context, _contextMenuActionTile(context, email)) diff --git a/lib/features/thread/presentation/widgets/email_tile_builder.dart b/lib/features/thread/presentation/widgets/email_tile_builder.dart index 95b3035db..e12779680 100644 --- a/lib/features/thread/presentation/widgets/email_tile_builder.dart +++ b/lib/features/thread/presentation/widgets/email_tile_builder.dart @@ -20,6 +20,7 @@ class EmailTileBuilder { final Role? _mailboxRole; final SearchStatus _searchStatus; final SearchQuery? _searchQuery; + final bool advancedSearchActivated; OnPressEmailActionClick? _emailActionClick; @@ -30,6 +31,9 @@ class EmailTileBuilder { this._selectModeAll, this._searchStatus, this._searchQuery, + { + this.advancedSearchActivated = false + } ); void addOnPressEmailActionClick(OnPressEmailActionClick actionClick) { @@ -159,8 +163,7 @@ class EmailTileBuilder { color: _buildTextColorForReadEmail(), fontWeight: _buildFontForReadEmail())) ), - if (_searchStatus == SearchStatus.ACTIVE && - _presentationEmail.mailboxName.isNotEmpty) + if (_hasMailboxLabel) Container( margin: const EdgeInsets.only(left: 8), padding: const EdgeInsets.symmetric( @@ -284,4 +287,10 @@ class EmailTileBuilder { } return _presentationEmail.getSenderName(); } + + bool get _hasMailboxLabel { + return (_searchStatus == SearchStatus.ACTIVE || + advancedSearchActivated) && + _presentationEmail.mailboxName.isNotEmpty; + } } \ No newline at end of file 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 554a6a34e..ac03a3f88 100644 --- a/lib/features/thread/presentation/widgets/email_tile_web_builder.dart +++ b/lib/features/thread/presentation/widgets/email_tile_web_builder.dart @@ -23,6 +23,7 @@ class EmailTileBuilder { final Role? _mailboxRole; final SearchStatus _searchStatus; final SearchQuery? _searchQuery; + final bool advancedSearchActivated; OnPressEmailActionClick? _emailActionClick; OnMoreActionClick? _onMoreActionClick; @@ -37,6 +38,9 @@ class EmailTileBuilder { this._selectModeAll, this._searchStatus, this._searchQuery, + { + this.advancedSearchActivated = false + } ); void addOnPressEmailActionClick(OnPressEmailActionClick actionClick) { @@ -206,8 +210,7 @@ class EmailTileBuilder { fontSize: 13, color: _buildTextColorForReadEmail())) ), - if (_searchStatus == SearchStatus.ACTIVE && - _presentationEmail.mailboxName.isNotEmpty) + if (_hasMailboxLabel) Container( margin: const EdgeInsets.only(left: 8), padding: const EdgeInsets.symmetric( @@ -368,8 +371,7 @@ class EmailTileBuilder { fontSize: 13, color: _buildTextColorForReadEmail())) ), - if (_searchStatus == SearchStatus.ACTIVE && - _presentationEmail.mailboxName.isNotEmpty) + if (_hasMailboxLabel) Container( margin: const EdgeInsets.only(left: 8), padding: const EdgeInsets.symmetric( @@ -640,8 +642,7 @@ class EmailTileBuilder { Widget _buildDateTimeForDesktopScreen() { return Row(children: [ - if (_searchStatus == SearchStatus.ACTIVE && - _presentationEmail.mailboxName.isNotEmpty) + if (_hasMailboxLabel) Container( margin: const EdgeInsets.only(left: 8), padding: const EdgeInsets.symmetric(horizontal: 8, vertical: 3), @@ -839,4 +840,10 @@ class EmailTileBuilder { bool get _isSearchEnabled => _searchStatus == SearchStatus.ACTIVE && _searchQuery != null && _searchQuery!.value.isNotEmpty; + + bool get _hasMailboxLabel { + return (_searchStatus == SearchStatus.ACTIVE || + advancedSearchActivated) && + _presentationEmail.mailboxName.isNotEmpty; + } } \ No newline at end of file