TF-1708 Sync use mailbox display name to show all mailbox name by in toast, dialog, label, path..

(cherry picked from commit 62137b655383199005c31d21fce46906fab451dc)
This commit is contained in:
dab246
2023-07-06 23:32:30 +07:00
committed by Dat Vu
parent 58f90e6819
commit 24d7eee69a
28 changed files with 122 additions and 105 deletions
@@ -9,6 +9,7 @@ import 'package:jmap_dart_client/jmap/mail/email/email_filter_condition.dart';
import 'package:model/email/prefix_email_address.dart';
import 'package:model/extensions/email_filter_condition_extension.dart';
import 'package:model/mailbox/presentation_mailbox.dart';
import 'package:tmail_ui_user/features/mailbox/presentation/extensions/presentation_mailbox_extension.dart';
import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/model/search/email_receive_time_type.dart';
import 'package:tmail_ui_user/features/thread/domain/model/search_query.dart';
import 'package:tmail_ui_user/main/localizations/app_localizations.dart';
@@ -165,5 +166,5 @@ extension SearchEmailFilterExtension on SimpleSearchFilter {
}
}
String get mailboxName => mailbox?.name?.name ?? '';
String getMailboxName(BuildContext context) => mailbox?.getDisplayName(context) ?? '';
}
@@ -537,8 +537,8 @@ class SearchEmailView extends GetWidget<SearchEmailController>
const SizedBox(width: 4),
Text(
filterSelected
? controller.simpleSearchFilter.value.mailboxName
: AppLocalizations.of(context).mailbox,
? controller.simpleSearchFilter.value.getMailboxName(context)
: AppLocalizations.of(context).mailbox,
maxLines: 1,
overflow: CommonTextStyle.defaultTextOverFlow,
softWrap: CommonTextStyle.defaultSoftWrap,
@@ -46,6 +46,7 @@ import 'package:tmail_ui_user/features/mailbox/domain/usecases/search_mailbox_in
import 'package:tmail_ui_user/features/mailbox/domain/usecases/subscribe_mailbox_interactor.dart';
import 'package:tmail_ui_user/features/mailbox/domain/usecases/subscribe_multiple_mailbox_interactor.dart';
import 'package:tmail_ui_user/features/mailbox/presentation/action/mailbox_ui_action.dart';
import 'package:tmail_ui_user/features/mailbox/presentation/extensions/presentation_mailbox_extension.dart';
import 'package:tmail_ui_user/features/mailbox/presentation/model/mailbox_actions.dart';
import 'package:tmail_ui_user/features/mailbox/presentation/model/mailbox_tree_builder.dart';
import 'package:tmail_ui_user/features/mailbox/presentation/utils/mailbox_utils.dart';
@@ -264,7 +265,7 @@ class SearchMailboxController extends BaseMailboxController with MailboxActionHa
context,
mailbox,
dashboardController,
onMovingMailboxAction: _invokeMovingMailboxAction
onMovingMailboxAction: (mailboxSelected, destinationMailbox) => _invokeMovingMailboxAction(context, mailboxSelected, destinationMailbox)
);
break;
case MailboxActions.delete:
@@ -310,11 +311,16 @@ class SearchMailboxController extends BaseMailboxController with MailboxActionHa
}
}
void _invokeMovingMailboxAction(PresentationMailbox mailboxSelected, PresentationMailbox? destinationMailbox) {
void _invokeMovingMailboxAction(
BuildContext context,
PresentationMailbox mailboxSelected,
PresentationMailbox? destinationMailbox
) {
final accountId = dashboardController.accountId.value;
final session = dashboardController.sessionCurrent;
if (session != null && accountId != null) {
_handleMovingMailbox(
context,
session,
accountId,
MoveAction.moving,
@@ -325,6 +331,7 @@ class SearchMailboxController extends BaseMailboxController with MailboxActionHa
}
void _handleMovingMailbox(
BuildContext context,
Session session,
AccountId accountId,
MoveAction moveAction,
@@ -338,7 +345,7 @@ class SearchMailboxController extends BaseMailboxController with MailboxActionHa
mailboxSelected.id,
moveAction,
destinationMailboxId: destinationMailbox?.id,
destinationMailboxName: destinationMailbox?.name,
destinationMailboxDisplayName: destinationMailbox?.getDisplayName(context),
parentId: mailboxSelected.parentId
)
));
@@ -348,7 +355,7 @@ class SearchMailboxController extends BaseMailboxController with MailboxActionHa
if (success.moveAction == MoveAction.moving && currentOverlayContext != null && currentContext != null) {
_appToast.showToastMessage(
currentOverlayContext!,
AppLocalizations.of(currentContext!).moved_to_mailbox(success.destinationMailboxName?.name ?? AppLocalizations.of(currentContext!).allMailboxes),
AppLocalizations.of(currentContext!).moved_to_mailbox(success.destinationMailboxDisplayName ?? AppLocalizations.of(currentContext!).allMailboxes),
actionName: AppLocalizations.of(currentContext!).undo,
onActionClick: () {
_undoMovingMailbox(MoveMailboxRequest(