Fix menu setting background color

Signed-off-by: dab246 <tdvu@linagora.com>
(cherry picked from commit c1471d8fd32b504d5da042744e9fe68694fd68d0)
This commit is contained in:
dab246
2023-12-06 09:35:39 +07:00
committed by Dat H. Pham
parent 5bb4249329
commit ceedcb1ced
@@ -14,144 +14,141 @@ class ManageAccountMenuView extends GetWidget<ManageAccountMenuController> {
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
return Drawer( return Scaffold(
elevation: controller.responsiveUtils.isDesktop(context) ? 0 : 16.0, backgroundColor: Colors.white,
child: Scaffold( body: SafeArea(right: false, bottom: false,
backgroundColor: Colors.white, child: Column(
body: SafeArea(right: false, bottom: false, children: [
child: Column( if (!controller.responsiveUtils.isWebDesktop(context))
children: [ Container(
if (!controller.responsiveUtils.isWebDesktop(context)) color: Colors.white,
Container( padding: const EdgeInsets.only(top: 16, bottom: 16, left: 16),
color: Colors.white, child: Row(children: [
padding: const EdgeInsets.only(top: 16, bottom: 16, left: 16), SloganBuilder(
child: Row(children: [ sizeLogo: 24,
SloganBuilder( text: AppLocalizations.of(context).app_name,
sizeLogo: 24, textAlign: TextAlign.center,
text: AppLocalizations.of(context).app_name, textStyle: const TextStyle(color: Colors.black, fontSize: 20, fontWeight: FontWeight.bold),
textAlign: TextAlign.center, logoSVG: controller.imagePaths.icTMailLogo
textStyle: const TextStyle(color: Colors.black, fontSize: 20, fontWeight: FontWeight.bold), ),
logoSVG: controller.imagePaths.icTMailLogo Obx(() {
), if (controller.dashBoardController.appInformation.value != null) {
Obx(() { return Padding(
if (controller.dashBoardController.appInformation.value != null) { padding: const EdgeInsets.only(top: 4),
return Padding( child: Text(
padding: const EdgeInsets.only(top: 4), 'v.${controller.dashBoardController.appInformation.value!.version}',
child: Text( textAlign: TextAlign.center,
'v.${controller.dashBoardController.appInformation.value!.version}', style: const TextStyle(fontSize: 13, color: AppColor.colorContentEmail, fontWeight: FontWeight.w500),
textAlign: TextAlign.center, ),
style: const TextStyle(fontSize: 13, color: AppColor.colorContentEmail, fontWeight: FontWeight.w500), );
), } else {
); return const SizedBox.shrink();
} else { }
return const SizedBox.shrink(); }),
} ])
}), ),
]) if (!controller.responsiveUtils.isWebDesktop(context))
), const Divider(color: AppColor.colorDividerMailbox, height: 1),
if (!controller.responsiveUtils.isWebDesktop(context)) Expanded(child: Container(
const Divider(color: AppColor.colorDividerMailbox, height: 1), color: controller.responsiveUtils.isWebDesktop(context) ? AppColor.colorBgDesktop : Colors.white,
Expanded(child: Container( child: Column(
color: controller.responsiveUtils.isWebDesktop(context) ? AppColor.colorBgDesktop : Colors.white, crossAxisAlignment: CrossAxisAlignment.start,
child: Column( children: [
crossAxisAlignment: CrossAxisAlignment.start, Padding(
children: [ padding: const EdgeInsetsDirectional.only(start: 20, top: 24),
Padding( child: TMailButtonWidget(
padding: const EdgeInsetsDirectional.only(start: 20, top: 24), key: const Key('back_to_dashboard_button'),
child: TMailButtonWidget( text: AppLocalizations.of(context).back,
key: const Key('back_to_dashboard_button'), icon: DirectionUtils.isDirectionRTLByLanguage(context)
text: AppLocalizations.of(context).back, ? controller.imagePaths.icArrowRight
icon: DirectionUtils.isDirectionRTLByLanguage(context) : controller.imagePaths.icBack,
? controller.imagePaths.icArrowRight borderRadius: 10,
: controller.imagePaths.icBack, backgroundColor: AppColor.colorBgMailboxSelected,
borderRadius: 10, iconColor: AppColor.colorTextButton,
backgroundColor: AppColor.colorBgMailboxSelected, maxWidth: 100,
iconColor: AppColor.colorTextButton, padding: DirectionUtils.isDirectionRTLByLanguage(context)
maxWidth: 100, ? const EdgeInsets.symmetric(vertical: 5)
padding: DirectionUtils.isDirectionRTLByLanguage(context) : const EdgeInsets.symmetric(vertical: 10),
? const EdgeInsets.symmetric(vertical: 5) iconSize: DirectionUtils.isDirectionRTLByLanguage(context) ? null : 16,
: const EdgeInsets.symmetric(vertical: 10), textStyle: const TextStyle(
iconSize: DirectionUtils.isDirectionRTLByLanguage(context) ? null : 16, fontSize: 15,
textStyle: const TextStyle( color: AppColor.colorTextButton,
fontSize: 15, fontWeight: FontWeight.normal
color: AppColor.colorTextButton, ),
fontWeight: FontWeight.normal onTapActionCallback: () => controller.backToMailboxDashBoard(context),
), ),
onTapActionCallback: () => controller.backToMailboxDashBoard(context), ),
), Padding(
), padding: const EdgeInsetsDirectional.only(start: 32, top: 20),
Padding( child: Text(
padding: const EdgeInsetsDirectional.only(start: 32, top: 20), AppLocalizations.of(context).manage_account,
child: Text( style: const TextStyle(
AppLocalizations.of(context).manage_account, color: Colors.black,
style: const TextStyle( fontWeight: FontWeight.bold,
color: Colors.black, fontSize: 17
fontWeight: FontWeight.bold, )
fontSize: 17 )
) ),
) const SizedBox(height: 12),
), Obx(() {
const SizedBox(height: 12), if (controller.listAccountMenuItem.isNotEmpty) {
Obx(() { return ListView.builder(
if (controller.listAccountMenuItem.isNotEmpty) { key: const Key('list_manage_account_menu_item'),
return ListView.builder( padding: const EdgeInsetsDirectional.only(start: 16, end: 8),
key: const Key('list_manage_account_menu_item'), shrinkWrap: true,
padding: const EdgeInsetsDirectional.only(start: 16, end: 8), itemCount: controller.listAccountMenuItem.length,
shrinkWrap: true, itemBuilder: (context, index) => Obx(() {
itemCount: controller.listAccountMenuItem.length, final menuItem = controller.listAccountMenuItem[index];
itemBuilder: (context, index) => Obx(() { return AccountMenuItemTileBuilder(
final menuItem = controller.listAccountMenuItem[index]; menuItem,
return AccountMenuItemTileBuilder( controller.dashBoardController.accountMenuItemSelected.value,
menuItem, onSelectAccountMenuItemAction: controller.selectAccountMenuItem
controller.dashBoardController.accountMenuItemSelected.value, );
onSelectAccountMenuItemAction: controller.selectAccountMenuItem })
); );
}) } else {
); return const SizedBox.shrink();
} else { }
return const SizedBox.shrink(); }),
} const Padding(
}), padding: EdgeInsets.symmetric(vertical: 16),
const Padding( child: Divider(color: AppColor.lineItemListColor, height: 1)),
padding: EdgeInsets.symmetric(vertical: 16), Padding(
child: Divider(color: AppColor.lineItemListColor, height: 1)), padding: const EdgeInsetsDirectional.only(start: 20, end: 10),
Padding( child: Material(
padding: const EdgeInsetsDirectional.only(start: 20, end: 10), color: Colors.transparent,
child: Material( child: InkWell(
color: Colors.transparent, onTap: () {
child: InkWell( controller.dashBoardController.logout(
onTap: () { controller.dashBoardController.sessionCurrent,
controller.dashBoardController.logout( controller.dashBoardController.accountId.value
controller.dashBoardController.sessionCurrent, );
controller.dashBoardController.accountId.value },
); borderRadius: BorderRadius.circular(10),
}, child: Padding(
borderRadius: BorderRadius.circular(10), padding: const EdgeInsets.symmetric(horizontal: 12, vertical: 6),
child: Padding( child: Row(children: [
padding: const EdgeInsets.symmetric(horizontal: 12, vertical: 6), SvgPicture.asset(controller.imagePaths.icSignOut, fit: BoxFit.fill),
child: Row(children: [ const SizedBox(width: 12),
SvgPicture.asset(controller.imagePaths.icSignOut, fit: BoxFit.fill), Expanded(child: Text(
const SizedBox(width: 12), AppLocalizations.of(context).sign_out,
Expanded(child: Text( style: const TextStyle(
AppLocalizations.of(context).sign_out, fontWeight: FontWeight.normal,
style: const TextStyle( fontSize: 15,
fontWeight: FontWeight.normal, color: Colors.black
fontSize: 15, )
color: Colors.black ))
) ]),
)) )
]), ),
) )
), ),
) ]
), ),
] )),
), ]
)), )
] ),
)
),
)
); );
} }
} }