TF-3479 Add OpenAndCloseComposerExtension to handle open & close composer

Signed-off-by: dab246 <tdvu@linagora.com>
This commit is contained in:
dab246
2025-02-12 12:07:07 +07:00
committed by Dat H. Pham
parent fc37b5f647
commit 78d40f7be5
14 changed files with 167 additions and 136 deletions
@@ -25,6 +25,7 @@ import 'package:tmail_ui_user/features/email/domain/model/move_to_mailbox_reques
import 'package:tmail_ui_user/features/email/presentation/model/composer_arguments.dart';
import 'package:tmail_ui_user/features/mailbox/presentation/model/mailbox_actions.dart';
import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/controller/mailbox_dashboard_controller.dart';
import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/extensions/open_and_close_composer_extension.dart';
import 'package:tmail_ui_user/features/thread/presentation/model/delete_action_type.dart';
import 'package:tmail_ui_user/main/localizations/app_localizations.dart';
import 'package:tmail_ui_user/main/routes/app_routes.dart';
@@ -39,11 +40,11 @@ mixin EmailActionController {
final imagePaths = Get.find<ImagePaths>();
void editDraftEmail(PresentationEmail presentationEmail) {
mailboxDashBoardController.goToComposer(ComposerArguments.editDraftEmail(presentationEmail));
mailboxDashBoardController.openComposer(ComposerArguments.editDraftEmail(presentationEmail));
}
void editAsNewEmail(PresentationEmail presentationEmail) {
mailboxDashBoardController.goToComposer(
mailboxDashBoardController.openComposer(
ComposerArguments.editAsNewEmail(presentationEmail),
);
}
@@ -12,6 +12,7 @@ import 'package:tmail_ui_user/features/base/widget/compose_floating_button.dart'
import 'package:tmail_ui_user/features/email/presentation/model/composer_arguments.dart';
import 'package:tmail_ui_user/features/email/presentation/widgets/email_action_cupertino_action_sheet_action_builder.dart';
import 'package:tmail_ui_user/features/mailbox/domain/state/mark_as_mailbox_read_state.dart';
import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/extensions/open_and_close_composer_extension.dart';
import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/mixin/filter_email_popup_menu_mixin.dart';
import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/widgets/recover_deleted_message_loading_banner_widget.dart';
import 'package:tmail_ui_user/features/manage_account/presentation/extensions/vacation_response_extension.dart';
@@ -295,7 +296,7 @@ class ThreadView extends GetWidget<ThreadController>
: EdgeInsets.zero,
child: ComposeFloatingButton(
scrollController: controller.listEmailController,
onTap: () => controller.mailboxDashBoardController.goToComposer(ComposerArguments())
onTap: () => controller.mailboxDashBoardController.openComposer(ComposerArguments())
),
);
} else {