TF-1709 Add select sort to advance search view

(cherry picked from commit 6b1b52909ef30d5618bb5bc9557fe2f17770a0b3)
This commit is contained in:
hieubt
2023-11-11 00:37:13 +07:00
committed by Dat Vu
parent 5f9b69f693
commit 8923bb42ad
2 changed files with 22 additions and 0 deletions
@@ -10,6 +10,7 @@ enum AdvancedSearchFilterField {
notKeyword,
mailBox,
date,
sortBy,
hasAttachment;
String getTitle(BuildContext context) {
@@ -28,6 +29,8 @@ enum AdvancedSearchFilterField {
return AppLocalizations.of(context).folder;
case AdvancedSearchFilterField.date:
return AppLocalizations.of(context).date;
case AdvancedSearchFilterField.sortBy:
return AppLocalizations.of(context).sortBy;
case AdvancedSearchFilterField.hasAttachment:
return AppLocalizations.of(context).hasAttachment;
}
@@ -47,6 +50,8 @@ enum AdvancedSearchFilterField {
return AppLocalizations.of(context).allFolders;
case AdvancedSearchFilterField.date:
return AppLocalizations.of(context).allTime;
case AdvancedSearchFilterField.sortBy:
return AppLocalizations.of(context).mostRecent;
case AdvancedSearchFilterField.hasAttachment:
return AppLocalizations.of(context).hasAttachment;
}
@@ -11,6 +11,7 @@ import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/model/sear
import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/styles/advanced_search_input_form_style.dart';
import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/widgets/advanced_search/advanced_search_filter_form_bottom_view.dart';
import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/widgets/advanced_search/date_drop_down_button.dart';
import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/widgets/advanced_search/sort_by_drop_down_button.dart';
import 'package:tmail_ui_user/features/mailbox_dashboard/presentation/widgets/advanced_search/text_field_autocomplete_email_address_web.dart';
import 'package:tmail_ui_user/main/localizations/app_localizations.dart';
import 'package:tmail_ui_user/main/routes/route_navigation.dart';
@@ -109,6 +110,10 @@ class AdvancedSearchInputForm extends GetWidget<AdvancedFilterController>
iconPadding: EdgeInsets.zero,
onTap: () => controller.selectDateRange(context)),
]),
_buildFilterField(
context: context,
advancedSearchFilterField: AdvancedSearchFilterField.sortBy
),
AdvancedSearchFilterFormBottomView(focusManager: controller.focusManager)
],
),
@@ -172,6 +177,12 @@ class AdvancedSearchInputForm extends GetWidget<AdvancedFilterController>
receiveTimeSelected: controller.dateFilterSelectedFormAdvancedSearch.value,
onReceiveTimeSelected: (receiveTime) => controller.updateReceiveDateSearchFilter(context, receiveTime),
))
else if (advancedSearchFilterField == AdvancedSearchFilterField.sortBy)
Obx(() => SortByDropDownButton(
imagePaths: _imagePaths,
sortOrderSelected: controller.searchController.sortOrderFiltered.value,
onSortOrderSelected: controller.updateSortOrder,
))
else
_buildTextField(
isSelectFormList: isSelectFormList,
@@ -229,6 +240,12 @@ class AdvancedSearchInputForm extends GetWidget<AdvancedFilterController>
receiveTimeSelected: controller.dateFilterSelectedFormAdvancedSearch.value,
onReceiveTimeSelected: (receiveTime) => controller.updateReceiveDateSearchFilter(context, receiveTime),
));
case AdvancedSearchFilterField.sortBy:
return Obx(() => SortByDropDownButton(
imagePaths: _imagePaths,
sortOrderSelected: controller.searchController.sortOrderFiltered.value,
onSortOrderSelected: controller.updateSortOrder,
));
default:
return _buildTextField(
isSelectFormList: isSelectFormList,