TF-1715 Load emails in favorite folder with filters

This commit is contained in:
dab246
2025-10-30 15:50:19 +07:00
committed by Dat H. Pham
parent fc6cc5719b
commit 00324d4c56
17 changed files with 72 additions and 31 deletions
@@ -4,6 +4,7 @@ import 'package:core/presentation/views/list/tree_view.dart';
import 'package:core/utils/platform_info.dart';
import 'package:flutter/material.dart';
import 'package:get/get.dart';
import 'package:model/extensions/presentation_mailbox_extension.dart';
import 'package:model/extensions/session_extension.dart';
import 'package:model/mailbox/expand_mode.dart';
import 'package:tmail_ui_user/features/base/mixin/app_loader_mixin.dart';
@@ -196,6 +197,7 @@ abstract class BaseMailboxView extends GetWidget<MailboxController>
.mailboxDashBoardController
.selectedMailbox
.value,
isHighlighted: isFolderHighlighted(mailboxNode),
onOpenMailboxFolderClick: (mailboxNode) =>
mailboxNode != null
? controller.openMailbox(context, mailboxNode.item)
@@ -240,6 +242,17 @@ abstract class BaseMailboxView extends GetWidget<MailboxController>
}).toList();
}
bool get isSearchByStarredOnly {
final searchController =
controller.mailboxDashBoardController.searchController;
return searchController.isSearchEmailRunning &&
searchController.searchEmailFilter.value.isOnlyStarredApplied;
}
bool isFolderHighlighted(MailboxNode mailboxNode) =>
mailboxNode.item.isFavorite && isSearchByStarredOnly;
Widget buildListMailbox(BuildContext context) {
final isDesktop = controller.responsiveUtils.isDesktop(context);