From 765b7e295b201e70e303013874901453d6c5b58e Mon Sep 17 00:00:00 2001 From: dab246 Date: Fri, 8 Aug 2025 00:07:19 +0700 Subject: [PATCH] TF-3952 Change `Forward warning banner` style Signed-off-by: dab246 --- .../presentation/forward/forward_view.dart | 21 ++++++- .../widgets/forward_warning_banner.dart | 57 ++++++++++++------- .../presentation/menu/settings_utils.dart | 15 ----- 3 files changed, 56 insertions(+), 37 deletions(-) diff --git a/lib/features/manage_account/presentation/forward/forward_view.dart b/lib/features/manage_account/presentation/forward/forward_view.dart index d3e95295d..ec01b2207 100644 --- a/lib/features/manage_account/presentation/forward/forward_view.dart +++ b/lib/features/manage_account/presentation/forward/forward_view.dart @@ -1,4 +1,5 @@ import 'package:core/presentation/state/success.dart'; +import 'package:core/presentation/utils/responsive_utils.dart'; import 'package:core/presentation/utils/theme_utils.dart'; import 'package:flutter/material.dart'; import 'package:get/get.dart'; @@ -83,9 +84,10 @@ class ForwardView extends GetWidget with AppLoaderMixin { child: SingleChildScrollView( physics: const ClampingScrollPhysics(), child: Padding( - padding: isWebDesktop - ? EdgeInsets.zero - : const EdgeInsetsDirectional.symmetric(horizontal: 16), + padding: _getScrollViewPadding( + context, + controller.responsiveUtils, + ), child: Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ @@ -128,6 +130,19 @@ class ForwardView extends GetWidget with AppLoaderMixin { ); } + EdgeInsetsGeometry _getScrollViewPadding( + BuildContext context, + ResponsiveUtils responsiveUtils + ) { + if (responsiveUtils.isWebDesktop(context)) { + return EdgeInsets.zero; + } else if (responsiveUtils.isMobile(context)) { + return const EdgeInsetsDirectional.symmetric(horizontal: 16); + } else { + return const EdgeInsetsDirectional.symmetric(horizontal: 32); + } + } + Widget _buildLoadingView() { return Obx(() => controller.viewState.value.fold( (failure) => const SizedBox.shrink(), diff --git a/lib/features/manage_account/presentation/forward/widgets/forward_warning_banner.dart b/lib/features/manage_account/presentation/forward/widgets/forward_warning_banner.dart index f88dd73ba..72129afd4 100644 --- a/lib/features/manage_account/presentation/forward/widgets/forward_warning_banner.dart +++ b/lib/features/manage_account/presentation/forward/widgets/forward_warning_banner.dart @@ -1,9 +1,9 @@ import 'package:core/presentation/extensions/color_extension.dart'; import 'package:core/presentation/resources/image_paths.dart'; import 'package:core/presentation/utils/responsive_utils.dart'; +import 'package:core/presentation/utils/theme_utils.dart'; import 'package:flutter/material.dart'; import 'package:flutter_svg/flutter_svg.dart'; -import 'package:tmail_ui_user/features/manage_account/presentation/menu/settings_utils.dart'; import 'package:tmail_ui_user/main/utils/app_config.dart'; class ForwardWarningBanner extends StatelessWidget { @@ -21,28 +21,47 @@ class ForwardWarningBanner extends StatelessWidget { Widget build(BuildContext context) { return Container( width: double.infinity, - margin: SettingsUtils.getForwardBannerPadding(context, responsiveUtils), - padding: const EdgeInsets.all(12), + margin: _getMargin(context, responsiveUtils), + padding: const EdgeInsets.symmetric(vertical: 8, horizontal: 17), decoration: const BoxDecoration( borderRadius: BorderRadius.all(Radius.circular(8)), - color: AppColor.colorBackgroundNotificationVacationSetting, + color: AppColor.lightGrayEAEDF2, ), - child: Row(children: [ - SvgPicture.asset( - imagePaths.icInfoCircleOutline, - colorFilter: AppColor.colorQuotaError.asFilter(), - ), - const SizedBox(width: 12), - Expanded( - child: Text( - AppConfig.getForwardWarningMessage(context), - style: Theme.of(context).textTheme.labelSmall?.copyWith( - fontSize: 15, - color: Colors.black + child: Row( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + SvgPicture.asset( + imagePaths.icInfoCircleOutline, + width: 20, + height: 20, + fit: BoxFit.fill, + colorFilter: AppColor.steelGray200.asFilter(), + ), + const SizedBox(width: 8), + Expanded( + child: Text( + AppConfig.getForwardWarningMessage(context), + style: ThemeUtils.textStyleInter400.copyWith( + letterSpacing: 0.0, + color: AppColor.steelGray400, + ) ) - ) - ), - ]), + ), + ], + ), ); } + + EdgeInsetsGeometry _getMargin( + BuildContext context, + ResponsiveUtils responsiveUtils, + ) { + if (responsiveUtils.isWebDesktop(context)) { + return const EdgeInsetsDirectional.only(end: 16, top: 16); + } else if (responsiveUtils.isMobile(context)) { + return const EdgeInsetsDirectional.only(start: 16, end: 16, bottom: 12); + } else { + return const EdgeInsetsDirectional.only(start: 32, end: 32, bottom: 12); + } + } } \ No newline at end of file diff --git a/lib/features/manage_account/presentation/menu/settings_utils.dart b/lib/features/manage_account/presentation/menu/settings_utils.dart index 30b9d9bf9..237ca2e7a 100644 --- a/lib/features/manage_account/presentation/menu/settings_utils.dart +++ b/lib/features/manage_account/presentation/menu/settings_utils.dart @@ -149,19 +149,4 @@ class SettingsUtils { return const EdgeInsetsDirectional.symmetric(vertical: 8); } } - - static EdgeInsetsGeometry getForwardBannerPadding( - BuildContext context, - ResponsiveUtils responsiveUtils, - ) { - if (responsiveUtils.isWebDesktop(context)) { - return const EdgeInsetsDirectional.only(start: 16, end: 16, top: 16); - } else if (responsiveUtils.isPortraitMobile(context)) { - return const EdgeInsets.symmetric(horizontal: 16, vertical: 12); - } else if (responsiveUtils.isLandscapeMobile(context)) { - return const EdgeInsets.all(12); - } else { - return const EdgeInsets.symmetric(horizontal: 32, vertical: 12); - } - } } \ No newline at end of file