TF-3758 Fix hard to close mailbox view when email opened on web responsive tablet

Signed-off-by: dab246 <tdvu@linagora.com>
This commit is contained in:
dab246
2025-06-10 13:50:13 +07:00
committed by Dat H. Pham
parent 75afd26af2
commit 4529ede47d
4 changed files with 15 additions and 1 deletions
@@ -415,7 +415,8 @@ class EmailView extends GetWidget<SingleEmailController> {
),
if (controller.mailboxDashBoardController.isAttachmentDraggableAppActive ||
controller.mailboxDashBoardController.isLocalFileDraggableAppActive ||
controller.mailboxDashBoardController.isAppGridDialogDisplayed.isTrue)
controller.mailboxDashBoardController.isAppGridDialogDisplayed.isTrue ||
controller.mailboxDashBoardController.isDrawerOpened.isTrue)
PointerInterceptor(
child: SizedBox(
width: constraints.maxWidth,
@@ -259,6 +259,7 @@ class MailboxDashBoardController extends ReloadableController
final localFileDraggableAppState = Rxn<DraggableAppState>();
final isSenderImportantFlagEnabled = RxBool(true);
final isAppGridDialogDisplayed = RxBool(false);
final isDrawerOpened = RxBool(false);
Session? sessionCurrent;
Map<Role, MailboxId> mapDefaultMailboxIdByRole = {};
@@ -0,0 +1,10 @@
import 'package:core/utils/app_logger.dart';
import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/controller/mailbox_dashboard_controller.dart';
extension HandleDrawerChangedExtension on MailboxDashBoardController {
void handleDrawerChanged(bool isOpen) {
log('HandleDrawerChangedExtension::handleDrawerChanged: isOpen = $isOpen');
isDrawerOpened.value = isOpen;
}
}
@@ -16,6 +16,7 @@ import 'package:tmail_ui_user/features/home/domain/extensions/session_extensions
import 'package:tmail_ui_user/features/mailbox/presentation/mailbox_view_web.dart';
import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/action/dashboard_action.dart';
import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/base_mailbox_dashboard_view.dart';
import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/extensions/handle_drawer_changed_extension.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/model/dashboard_routes.dart';
import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/model/search/email_receive_time_type.dart';
@@ -271,6 +272,7 @@ class MailboxDashBoardView extends BaseMailboxDashBoardView {
tabletLarge: SizedBox(width: ResponsiveUtils.defaultSizeLeftMenuMobile, child: MailboxView()),
desktop: const SizedBox.shrink()
),
onDrawerChanged: controller.handleDrawerChanged,
body: body,
);
}