TF-1831 Handle system back button in mobile composer

Signed-off-by: dab246 <tdvu@linagora.com>
(cherry picked from commit 6df628bceba7fa8e8b04259b50ff30782a511cab)
This commit is contained in:
dab246
2023-12-09 17:32:49 +07:00
committed by Dat H. Pham
parent 4bfc551a2a
commit 326dded301
4 changed files with 7 additions and 7 deletions
@@ -42,11 +42,11 @@ import 'package:tmail_ui_user/features/composer/domain/state/get_device_contact_
import 'package:tmail_ui_user/features/composer/domain/state/save_email_as_drafts_state.dart'; import 'package:tmail_ui_user/features/composer/domain/state/save_email_as_drafts_state.dart';
import 'package:tmail_ui_user/features/composer/domain/state/update_email_drafts_state.dart'; import 'package:tmail_ui_user/features/composer/domain/state/update_email_drafts_state.dart';
import 'package:tmail_ui_user/features/composer/domain/usecases/download_image_as_base64_interactor.dart'; import 'package:tmail_ui_user/features/composer/domain/usecases/download_image_as_base64_interactor.dart';
import 'package:tmail_ui_user/features/composer/domain/usecases/get_autocomplete_interactor.dart';
import 'package:tmail_ui_user/features/composer/domain/usecases/get_all_autocomplete_interactor.dart'; import 'package:tmail_ui_user/features/composer/domain/usecases/get_all_autocomplete_interactor.dart';
import 'package:tmail_ui_user/features/composer/domain/usecases/get_autocomplete_interactor.dart';
import 'package:tmail_ui_user/features/composer/domain/usecases/get_device_contact_suggestions_interactor.dart'; import 'package:tmail_ui_user/features/composer/domain/usecases/get_device_contact_suggestions_interactor.dart';
import 'package:tmail_ui_user/features/composer/presentation/controller/rich_text_web_controller.dart';
import 'package:tmail_ui_user/features/composer/presentation/controller/rich_text_mobile_tablet_controller.dart'; import 'package:tmail_ui_user/features/composer/presentation/controller/rich_text_mobile_tablet_controller.dart';
import 'package:tmail_ui_user/features/composer/presentation/controller/rich_text_web_controller.dart';
import 'package:tmail_ui_user/features/composer/presentation/extensions/email_action_type_extension.dart'; import 'package:tmail_ui_user/features/composer/presentation/extensions/email_action_type_extension.dart';
import 'package:tmail_ui_user/features/composer/presentation/extensions/file_upload_extension.dart'; import 'package:tmail_ui_user/features/composer/presentation/extensions/file_upload_extension.dart';
import 'package:tmail_ui_user/features/composer/presentation/extensions/list_identities_extension.dart'; import 'package:tmail_ui_user/features/composer/presentation/extensions/list_identities_extension.dart';
@@ -1222,7 +1222,7 @@ class ComposerController extends BaseController {
return false; return false;
} }
void saveToDraftAndClose(BuildContext context, {bool canPop = true}) async { void saveToDraftAndClose(BuildContext context) async {
log('ComposerController::saveToDraftAndClose:'); log('ComposerController::saveToDraftAndClose:');
clearFocusEditor(context); clearFocusEditor(context);
@@ -37,7 +37,7 @@ class ComposerView extends GetWidget<ComposerController> {
responsiveUtils: controller.responsiveUtils, responsiveUtils: controller.responsiveUtils,
mobile: MobileContainerView( mobile: MobileContainerView(
keyboardRichTextController: controller.keyboardRichTextController, keyboardRichTextController: controller.keyboardRichTextController,
onCloseViewAction: () => controller.saveToDraftAndClose(context, canPop: false), onCloseViewAction: () => controller.saveToDraftAndClose(context),
onClearFocusAction: () => controller.clearFocusEditor(context), onClearFocusAction: () => controller.clearFocusEditor(context),
onAttachFileAction: () => controller.isNetworkConnectionAvailable onAttachFileAction: () => controller.isNetworkConnectionAvailable
? controller.openPickAttachmentMenu( ? controller.openPickAttachmentMenu(
@@ -222,7 +222,7 @@ class ComposerView extends GetWidget<ComposerController> {
), ),
tablet: TabletContainerView( tablet: TabletContainerView(
keyboardRichTextController: controller.keyboardRichTextController, keyboardRichTextController: controller.keyboardRichTextController,
onCloseViewAction: () => controller.saveToDraftAndClose(context, canPop: false), onCloseViewAction: () => controller.saveToDraftAndClose(context),
onClearFocusAction: () => controller.clearFocusEditor(context), onClearFocusAction: () => controller.clearFocusEditor(context),
onAttachFileAction: () => controller.isNetworkConnectionAvailable onAttachFileAction: () => controller.isNetworkConnectionAvailable
? controller.openPickAttachmentMenu( ? controller.openPickAttachmentMenu(
@@ -37,7 +37,7 @@ class MobileContainerView extends StatelessWidget {
return WillPopScope( return WillPopScope(
onWillPop: () async { onWillPop: () async {
onCloseViewAction.call(); onCloseViewAction.call();
return true; return false;
}, },
child: GestureDetector( child: GestureDetector(
onTap: onClearFocusAction, onTap: onClearFocusAction,
@@ -34,7 +34,7 @@ class TabletContainerView extends StatelessWidget {
return WillPopScope( return WillPopScope(
onWillPop: () async { onWillPop: () async {
onCloseViewAction.call(); onCloseViewAction.call();
return true; return false;
}, },
child: GestureDetector( child: GestureDetector(
onTap: onClearFocusAction, onTap: onClearFocusAction,