From 2987d29e261a8aa0f8bf79a9394cc2050d6c68c7 Mon Sep 17 00:00:00 2001 From: dab246 Date: Mon, 10 Jul 2023 14:19:24 +0700 Subject: [PATCH] TF-1993 Fix has attachment checkbox is overflow once it be translated in russia --- ...vanced_search_filter_form_bottom_view.dart | 84 +++++++------------ .../advanced_search_filter_overlay.dart | 49 ++++++----- 2 files changed, 55 insertions(+), 78 deletions(-) diff --git a/lib/features/mailbox_dashboard/presentation/widgets/advanced_search/advanced_search_filter_form_bottom_view.dart b/lib/features/mailbox_dashboard/presentation/widgets/advanced_search/advanced_search_filter_form_bottom_view.dart index 9698d5ab1d..3626a3504f 100644 --- a/lib/features/mailbox_dashboard/presentation/widgets/advanced_search/advanced_search_filter_form_bottom_view.dart +++ b/lib/features/mailbox_dashboard/presentation/widgets/advanced_search/advanced_search_filter_form_bottom_view.dart @@ -1,4 +1,7 @@ -import 'package:core/core.dart'; +import 'package:core/presentation/extensions/color_extension.dart'; +import 'package:core/presentation/utils/responsive_utils.dart'; +import 'package:core/presentation/views/button/icon_button_web.dart'; +import 'package:core/presentation/views/checkbox/labeled_checkbox.dart'; import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; import 'package:get/get.dart'; @@ -21,44 +24,26 @@ class AdvancedSearchFilterFormBottomView extends GetWidget(); return Padding( - padding: EdgeInsets.only( - top: _isMobileAndLandscapeTablet(context, responsiveUtils) ? 8 : 20), + padding: EdgeInsets.only(top: !responsiveUtils.isWebDesktop(context) ? 8 : 20), child: Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ - if (_isMobileAndLandscapeTablet(context, responsiveUtils)) - ...[ - _buildCheckboxHasAttachment( - context, - currentFocusNode: focusManager?.attachmentCheckboxFocusNode, - nextFocusNode: focusManager?.searchButtonFocusNode), - const SizedBox(height: 24) - ], - Row( - mainAxisAlignment: _isMobileAndLandscapeTablet(context, responsiveUtils) - ? MainAxisAlignment.spaceEvenly - : MainAxisAlignment.center, - crossAxisAlignment: CrossAxisAlignment.center, - children: [ - if (!_isMobileAndLandscapeTablet(context, responsiveUtils)) - Expanded(child: _buildCheckboxHasAttachment( - context, - currentFocusNode: focusManager?.attachmentCheckboxFocusNode, - nextFocusNode: focusManager?.searchButtonFocusNode)), - ..._buildListButton(context, responsiveUtils), - ], + Transform( + transform: Matrix4.translationValues(-8.0, 0.0, 0.0), + child: _buildCheckboxHasAttachment( + context, + currentFocusNode: focusManager?.attachmentCheckboxFocusNode, + nextFocusNode: focusManager?.searchButtonFocusNode), ), + _buildListButton(context, responsiveUtils), ], ), ); } - List _buildListButton( - BuildContext context, - ResponsiveUtils responsiveUtils - ) { - if (_isMobileAndLandscapeTablet(context, responsiveUtils)) { - return [ + Widget _buildListButton(BuildContext context, ResponsiveUtils responsiveUtils) { + if (!responsiveUtils.isWebDesktop(context)) { + return Row(children: [ Expanded( child: _buildButton( onAction: () { @@ -88,15 +73,16 @@ class AdvancedSearchFilterFormBottomView extends GetWidget FocusManager.instance.primaryFocus?.unfocus(), - child: Padding( - padding: const EdgeInsets.only(top: 4, bottom: 16, right: 22), - child: Container( - constraints: BoxConstraints( - maxHeight: _getHeightOverlay(context, responsiveUtils), - ), - width: maxWidth ?? 660, - padding: const EdgeInsets.all(32), - decoration: BoxDecoration( - color: Colors.white, - borderRadius: BorderRadius.circular(16), - boxShadow: const [ - BoxShadow( - color: AppColor.colorShadowComposer, - blurRadius: 32, - offset: Offset.zero), - BoxShadow( - color: AppColor.colorDropShadow, - blurRadius: 4, - offset: Offset.zero), - ]), - child: SingleChildScrollView( - padding: const EdgeInsets.only(right: 16), - child: AdvancedSearchInputForm(), - ), + child: Container( + constraints: BoxConstraints( + maxHeight: _getHeightOverlay(context, responsiveUtils), + ), + width: maxWidth ?? 660, + margin: const EdgeInsetsDirectional.only(top: 4, bottom: 16, end: 22), + padding: const EdgeInsets.symmetric(horizontal: 8), + decoration: BoxDecoration( + color: Colors.white, + borderRadius: BorderRadius.circular(16), + boxShadow: const [ + BoxShadow( + color: AppColor.colorShadowComposer, + blurRadius: 32, + offset: Offset.zero), + BoxShadow( + color: AppColor.colorDropShadow, + blurRadius: 4, + offset: Offset.zero), + ] + ), + child: SingleChildScrollView( + padding: const EdgeInsets.symmetric(vertical: 16, horizontal: 24), + child: AdvancedSearchInputForm(), ), ), ),