add advanced search filter by mailbox

This commit is contained in:
ManhNTX
2022-06-26 22:40:18 +07:00
committed by Dat H. Pham
parent 8ab7b3adaa
commit 1c26fd5ec1
15 changed files with 83 additions and 32 deletions
@@ -20,7 +20,6 @@ class AdvancedSearchInputForm extends GetWidget<AdvancedFilterController>
@override
Widget build(BuildContext context) {
controller.initSearchFilterField(context);
return Material(
color: Colors.white,
child: Column(
@@ -55,6 +54,9 @@ class AdvancedSearchInputForm extends GetWidget<AdvancedFilterController>
context: context,
advancedSearchFilterField: AdvancedSearchFilterField.mailBox,
isSelectFormList: true,
onTap: () async {
await controller.selectedMailBox();
}
),
_buildFilterField(
textEditingController: controller.dateFilterInputController,
@@ -31,6 +31,7 @@ class AdvancedSearchFilterFormBottomView
_buildButton(
onAction: () {
controller.cleanSearchFilter();
popBack();
},
colorButton: AppColor.primaryColor.withOpacity(0.14),
colorText: AppColor.primaryColor,
@@ -25,16 +25,6 @@ class DateDropDownButton extends GetWidget<AdvancedFilterController> {
}
}
class MailBoxDropDownButton extends StatelessWidget {
const MailBoxDropDownButton({Key? key}) : super(key: key);
@override
Widget build(BuildContext context) {
return Container();
}
}
Widget _buildDropDownButton<T>({
required List<T> items,
required T itemSelected,
@@ -4,6 +4,7 @@ import 'package:core/presentation/views/button/icon_button_web.dart';
import 'package:flutter/material.dart';
import 'package:flutter_svg/flutter_svg.dart';
import 'package:get/get.dart';
import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/controller/advanced_filter_controller.dart';
import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/controller/search_controller.dart';
class IconOpenAdvancedSearchWidget extends StatelessWidget {
@@ -13,7 +14,8 @@ class IconOpenAdvancedSearchWidget extends StatelessWidget {
}) : super(key: key);
final _imagePaths = Get.find<ImagePaths>();
final controller = Get.find<SearchController>();
final SearchController searchController = Get.find<SearchController>();
final AdvancedFilterController advancedFilterController = Get.find<AdvancedFilterController>();
final BuildContext _parentContext;
@override
@@ -23,13 +25,16 @@ class IconOpenAdvancedSearchWidget extends StatelessWidget {
minSize: 0,
iconPadding: const EdgeInsets.only(right: 8),
icon: SvgPicture.asset(_imagePaths.icFilterAdvanced,
color: controller.isAdvancedSearchViewOpen.isTrue
color: searchController.isAdvancedSearchViewOpen.isTrue || searchController.isAdvancedSearchHasApply.isTrue
? AppColor.colorFilterMessageEnabled
: AppColor.colorFilterMessageDisabled,
width: 16,
height: 16),
onTap: () {
controller.showAdvancedFilterView(_parentContext);
if(searchController.isAdvancedSearchViewOpen.isFalse && searchController.isAdvancedSearchHasApply.isFalse){
advancedFilterController.initSearchFilterField(context);
}
searchController.showAdvancedFilterView(_parentContext);
}),
);
}