TF-460 Add presentation layer for implement get all identities

This commit is contained in:
dab246
2022-04-26 09:31:38 +07:00
committed by Dat H. Pham
parent 4764f9eb90
commit f432dfb376
35 changed files with 591 additions and 204 deletions
@@ -35,6 +35,7 @@ import 'package:tmail_ui_user/features/mailbox_dashboard/domain/state/remove_ema
import 'package:tmail_ui_user/features/mailbox_dashboard/domain/usecases/get_user_profile_interactor.dart';
import 'package:tmail_ui_user/features/mailbox_dashboard/domain/usecases/remove_email_drafts_interactor.dart';
import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/action/dashboard_action.dart';
import 'package:tmail_ui_user/features/manage_account/presentation/model/manage_account_arguments.dart';
import 'package:tmail_ui_user/features/thread/domain/model/search_query.dart';
import 'package:tmail_ui_user/features/thread/domain/state/search_email_state.dart';
import 'package:tmail_ui_user/features/thread/presentation/model/search_state.dart';
@@ -422,6 +423,11 @@ class MailboxDashBoardController extends ReloadableController {
dashBoardAction.value = DashBoardAction.idle;
}
void goToSettings() {
push(AppRoutes.MANAGE_ACCOUNT,
arguments: ManageAccountArguments(accountId.value, userProfile.value));
}
@override
void onClose() {
_emailReceiveManager.closeEmailReceiveManagerStream();
@@ -15,11 +15,11 @@ mixin UserSettingPopupMenuMixin {
enabled: false,
padding: EdgeInsets.zero,
child: _userInformation(context, userProfile)),
PopupMenuDivider(height: 0.5),
const PopupMenuDivider(height: 0.5),
PopupMenuItem(
padding: EdgeInsets.zero,
child: _settingAction(context, onSettingAction)),
PopupMenuDivider(height: 0.5),
const PopupMenuDivider(height: 0.5),
PopupMenuItem(
padding: EdgeInsets.zero,
child: _logoutAction(context, onLogoutAction)),
@@ -31,14 +31,14 @@ mixin UserSettingPopupMenuMixin {
return SizedBox(
width: 300,
child: ListTile(
contentPadding: EdgeInsets.symmetric(horizontal: 20),
title: Text(userProfile.email, maxLines: 1, style: TextStyle(
contentPadding: const EdgeInsets.symmetric(horizontal: 20),
title: Text(userProfile.email, maxLines: 1, style: const TextStyle(
fontSize: 15,
color: AppColor.colorHintSearchBar,
fontWeight: FontWeight.normal))),
);
}
return SizedBox.shrink();
return const SizedBox.shrink();
}
Widget _settingAction(BuildContext context, Function? onCallBack) {