TF-2311 Sync use variables in BaseController to avoid wasting memory

Signed-off-by: dab246 <tdvu@linagora.com>

Signed-off-by: dab246 <tdvu@linagora.com>
(cherry picked from commit 21ac80615f7bc9e832fd72cb8ae6875c967d3cea)
This commit is contained in:
dab246
2023-11-14 17:33:17 +07:00
committed by Dat Vu
parent 4ff601b4fc
commit fb47832225
57 changed files with 727 additions and 958 deletions
@@ -1,7 +1,5 @@
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:flutter/material.dart';
import 'package:flutter_svg/flutter_svg.dart';
import 'package:get/get.dart';
@@ -16,10 +14,7 @@ import 'package:tmail_ui_user/main/localizations/app_localizations.dart';
class ContactView extends GetWidget<ContactController> {
final _responsiveUtils = Get.find<ResponsiveUtils>();
final _imagePaths = Get.find<ImagePaths>();
ContactView({super.key});
const ContactView({super.key});
@override
Widget build(BuildContext context) {
@@ -31,38 +26,38 @@ class ContactView extends GetWidget<ContactController> {
bottom: false,
left: false,
right: false,
top: ContactUtils.supportAppBarTopBorder(context, _responsiveUtils),
top: ContactUtils.supportAppBarTopBorder(context, controller.responsiveUtils),
child: Container(
decoration: BoxDecoration(
borderRadius: BorderRadius.only(
topLeft: Radius.circular(ContactUtils.getRadiusBorderAppBarTop(
context,
_responsiveUtils)),
controller.responsiveUtils)),
topRight: Radius.circular(ContactUtils.getRadiusBorderAppBarTop(
context,
_responsiveUtils))),
controller.responsiveUtils))),
color: Colors.white),
child: ClipRRect(
borderRadius: BorderRadius.only(
topLeft: Radius.circular(ContactUtils.getRadiusBorderAppBarTop(
context,
_responsiveUtils)),
controller.responsiveUtils)),
topRight: Radius.circular(ContactUtils.getRadiusBorderAppBarTop(
context,
_responsiveUtils))),
controller.responsiveUtils))),
child: SafeArea(child: Container(
color: Colors.white,
child: Column(children: [
Container(
height: 52,
color: Colors.white,
padding: ContactUtils.getPaddingAppBar(context, _responsiveUtils),
padding: ContactUtils.getPaddingAppBar(context, controller.responsiveUtils),
child: AppBarContactWidget(
onCloseContactView: () => controller.closeContactView(context))
),
const Divider(color: AppColor.colorDividerComposer, height: 1),
SearchAppBarWidget(
imagePaths: _imagePaths,
imagePaths: controller.imagePaths,
searchQuery: controller.searchQuery.value,
searchFocusNode: controller.textInputSearchFocus,
searchInputController: controller.textInputSearchController,
@@ -70,12 +65,12 @@ class ContactView extends GetWidget<ContactController> {
hasSearchButton: true,
padding: EdgeInsets.zero,
heightSearchBar: 44,
margin: ContactUtils.getPaddingSearchInputForm(context, _responsiveUtils),
margin: ContactUtils.getPaddingSearchInputForm(context, controller.responsiveUtils),
decoration: const BoxDecoration(
borderRadius: BorderRadius.all(Radius.circular(10)),
color: AppColor.colorBgSearchBar),
iconClearText: SvgPicture.asset(
_imagePaths.icClearTextSearch,
controller.imagePaths.icClearTextSearch,
width: 18,
height: 18,
fit: BoxFit.fill),
@@ -92,7 +87,7 @@ class ContactView extends GetWidget<ContactController> {
itemCount: controller.listContactSearched.length,
separatorBuilder: (context, index) {
return Padding(
padding: ContactUtils.getPaddingDividerSearchResultList(context, _responsiveUtils),
padding: ContactUtils.getPaddingDividerSearchResultList(context, controller.responsiveUtils),
child: const Divider(
height: 1,
color: AppColor.colorDivider),
@@ -108,7 +103,7 @@ class ContactView extends GetWidget<ContactController> {
);
return ContactSuggestionBoxItem(
suggestionEmailAddress,
padding: ContactUtils.getPaddingSearchResultList(context, _responsiveUtils),
padding: ContactUtils.getPaddingSearchResultList(context, controller.responsiveUtils),
selectedContactCallbackAction: (contact) => controller.selectContact(context, contact),
);
}