From 1cc848f20292826129276f5178548d20fa7e8951 Mon Sep 17 00:00:00 2001 From: dab246 Date: Fri, 31 May 2024 11:05:29 +0700 Subject: [PATCH] TF-2143 Automatically create tags for `To/Cc/Bcc` input when clicking open new tab --- .../presentation/composer_controller.dart | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/lib/features/composer/presentation/composer_controller.dart b/lib/features/composer/presentation/composer_controller.dart index 6b0b1a4e7b..8857c18a38 100644 --- a/lib/features/composer/presentation/composer_controller.dart +++ b/lib/features/composer/presentation/composer_controller.dart @@ -748,9 +748,7 @@ class ComposerController extends BaseController with DragDropFileMixin { clearFocus(context); - if (toEmailAddressController.text.isNotEmpty - || ccEmailAddressController.text.isNotEmpty - || bccEmailAddressController.text.isNotEmpty) { + if (_isExistRecipientInputText) { _collapseAllRecipient(); _autoCreateEmailTag(); } @@ -2200,6 +2198,12 @@ class ComposerController extends BaseController with DragDropFileMixin { bccRecipientState.value = isEnabled ? PrefixRecipientState.disabled : PrefixRecipientState.enabled; } + bool get _isExistRecipientInputText { + return toEmailAddressController.text.isNotEmpty + || ccEmailAddressController.text.isNotEmpty + || bccEmailAddressController.text.isNotEmpty; + } + Future onOpenNewTabAction() async { if (openNewTabButtonState == ButtonState.disabled) { log('ComposerController::onOpenNewTabAction: OPENING NEW TAB COMPOSER'); @@ -2207,6 +2211,13 @@ class ComposerController extends BaseController with DragDropFileMixin { } openNewTabButtonState = ButtonState.disabled; + FocusManager.instance.primaryFocus?.unfocus(); + + if (_isExistRecipientInputText) { + _collapseAllRecipient(); + _autoCreateEmailTag(); + } + final arguments = composerArguments.value; final session = mailboxDashBoardController.sessionCurrent; final accountId = mailboxDashBoardController.accountId.value;