diff --git a/lib/features/mailbox/presentation/mailbox_view.dart b/lib/features/mailbox/presentation/mailbox_view.dart index f3ba96a21..b4cc4486a 100644 --- a/lib/features/mailbox/presentation/mailbox_view.dart +++ b/lib/features/mailbox/presentation/mailbox_view.dart @@ -171,9 +171,13 @@ class MailboxView extends GetWidget { padding: EdgeInsets.only( left: _responsiveUtils.isLandscapeMobile(context) ? 0 : 16, right: 16), - child: (UserInformationWidgetBuilder(_imagePaths, context, controller.mailboxDashBoardController.userProfile.value) - ..addOnLogoutAction(() => controller.mailboxDashBoardController.goToSettings())) - .build()), + child: (UserInformationWidgetBuilder( + _imagePaths, + context, + controller.mailboxDashBoardController.userProfile.value, + subtitle: AppLocalizations.of(context).manage_account) + ..addOnSubtitleClick(() => controller.mailboxDashBoardController.goToSettings())) + .build()), const Divider(color: AppColor.colorDividerMailbox, height: 0.5, thickness: 0.2) ]); } diff --git a/lib/features/mailbox/presentation/mailbox_view_web.dart b/lib/features/mailbox/presentation/mailbox_view_web.dart index de76a010d..463deaa05 100644 --- a/lib/features/mailbox/presentation/mailbox_view_web.dart +++ b/lib/features/mailbox/presentation/mailbox_view_web.dart @@ -198,8 +198,12 @@ class MailboxView extends GetWidget with AppLoaderMixin, Popu child: Column(children: [ Padding( padding: const EdgeInsets.only(left: 16, bottom: 10), - child: (UserInformationWidgetBuilder(_imagePaths, context, controller.mailboxDashBoardController.userProfile.value) - ..addOnLogoutAction(() => controller.mailboxDashBoardController.goToSettings())) + child: (UserInformationWidgetBuilder( + _imagePaths, + context, + controller.mailboxDashBoardController.userProfile.value, + subtitle: AppLocalizations.of(context).manage_account) + ..addOnSubtitleClick(() => controller.mailboxDashBoardController.goToSettings())) .build()), const Divider(color: AppColor.colorDividerMailbox, height: 0.5, thickness: 0.2) ]), diff --git a/lib/features/mailbox/presentation/widgets/user_information_widget_builder.dart b/lib/features/mailbox/presentation/widgets/user_information_widget_builder.dart index 675d079ab..6ea65c40e 100644 --- a/lib/features/mailbox/presentation/widgets/user_information_widget_builder.dart +++ b/lib/features/mailbox/presentation/widgets/user_information_widget_builder.dart @@ -7,23 +7,27 @@ import 'package:get/get_utils/src/platform/platform.dart'; import 'package:model/model.dart'; import 'package:tmail_ui_user/main/localizations/app_localizations.dart'; -typedef OnLogoutActionClick = void Function(); +typedef OnSubtitleClick = void Function(); class UserInformationWidgetBuilder { final ImagePaths _imagePaths; final UserProfile? _userProfile; final BuildContext _context; + final String? subtitle; - OnLogoutActionClick? _onLogoutActionClick; + OnSubtitleClick? _onSubtitleClick; UserInformationWidgetBuilder( this._imagePaths, this._context, this._userProfile, + { + this.subtitle + } ); - void addOnLogoutAction(OnLogoutActionClick onLogoutActionClick) { - _onLogoutActionClick = onLogoutActionClick; + void addOnSubtitleClick(OnSubtitleClick onLogoutActionClick) { + _onSubtitleClick = onLogoutActionClick; } Widget build() { @@ -55,23 +59,25 @@ class UserInformationWidgetBuilder { style: const TextStyle(fontSize: 17, color: AppColor.colorNameEmail, fontWeight: FontWeight.w600) ) ), - Padding( - padding: const EdgeInsets.only(left: 10), - child: Material( - borderRadius: BorderRadius.circular(20), - color: Colors.transparent, - child: Align( + subtitle != null + ? Padding( + padding: const EdgeInsets.only(left: 10), + child: Material( + borderRadius: BorderRadius.circular(20), + color: Colors.transparent, + child: Align( alignment: Alignment.centerLeft, child: TextButton( - onPressed: () => _onLogoutActionClick?.call(), + onPressed: () => _onSubtitleClick?.call(), child: Text( AppLocalizations.of(_context).manage_account, style: const TextStyle(fontSize: 14, color: AppColor.colorTextButton), ), ) + ) ) - ) - ) + ) + : const SizedBox.shrink() ])), if (!kIsWeb) Transform(