TF-3758 Update app grid in left menu on mobile

Signed-off-by: dab246 <tdvu@linagora.com>
This commit is contained in:
dab246
2025-05-29 20:25:14 +07:00
committed by Dat H. Pham
parent d7c4418674
commit 6b09fb9faf
12 changed files with 230 additions and 120 deletions
@@ -1,8 +1,10 @@
import 'package:flutter/material.dart';
import 'package:get/get.dart';
import 'package:tmail_ui_user/features/base/mixin/app_loader_mixin.dart';
import 'package:tmail_ui_user/features/mailbox/presentation/extensions/open_app_grid_extension.dart';
import 'package:tmail_ui_user/features/mailbox/presentation/mailbox_controller.dart';
import 'package:tmail_ui_user/features/mailbox/presentation/mixin/mailbox_widget_mixin.dart';
import 'package:tmail_ui_user/features/mailbox/presentation/widgets/mailbox_app_bar.dart';
abstract class BaseMailboxView extends GetWidget<MailboxController>
with
@@ -10,4 +12,27 @@ abstract class BaseMailboxView extends GetWidget<MailboxController>
MailboxWidgetMixin {
BaseMailboxView({Key? key}) : super(key: key);
Widget buildMailboxAppBar() {
return Obx(() {
final dashboardController = controller.mailboxDashBoardController;
final accountId = dashboardController.accountId.value;
final username = accountId != null
? dashboardController.getOwnEmailAddress()
: '';
final linagoraApps = dashboardController
.appGridDashboardController
.listLinagoraApp;
return MailboxAppBar(
imagePaths: controller.imagePaths,
username: username,
openSettingsAction: controller.mailboxDashBoardController.goToSettings,
onOpenAppGridAction: linagoraApps.isNotEmpty
? () => controller.openAppGrid(linagoraApps)
: null,
);
});
}
}