TF-1709 Add select sort to advance search view
(cherry picked from commit 6b1b52909ef30d5618bb5bc9557fe2f17770a0b3)
This commit is contained in:
@@ -10,6 +10,7 @@ enum AdvancedSearchFilterField {
|
|||||||
notKeyword,
|
notKeyword,
|
||||||
mailBox,
|
mailBox,
|
||||||
date,
|
date,
|
||||||
|
sortBy,
|
||||||
hasAttachment;
|
hasAttachment;
|
||||||
|
|
||||||
String getTitle(BuildContext context) {
|
String getTitle(BuildContext context) {
|
||||||
@@ -28,6 +29,8 @@ enum AdvancedSearchFilterField {
|
|||||||
return AppLocalizations.of(context).folder;
|
return AppLocalizations.of(context).folder;
|
||||||
case AdvancedSearchFilterField.date:
|
case AdvancedSearchFilterField.date:
|
||||||
return AppLocalizations.of(context).date;
|
return AppLocalizations.of(context).date;
|
||||||
|
case AdvancedSearchFilterField.sortBy:
|
||||||
|
return AppLocalizations.of(context).sortBy;
|
||||||
case AdvancedSearchFilterField.hasAttachment:
|
case AdvancedSearchFilterField.hasAttachment:
|
||||||
return AppLocalizations.of(context).hasAttachment;
|
return AppLocalizations.of(context).hasAttachment;
|
||||||
}
|
}
|
||||||
@@ -47,6 +50,8 @@ enum AdvancedSearchFilterField {
|
|||||||
return AppLocalizations.of(context).allFolders;
|
return AppLocalizations.of(context).allFolders;
|
||||||
case AdvancedSearchFilterField.date:
|
case AdvancedSearchFilterField.date:
|
||||||
return AppLocalizations.of(context).allTime;
|
return AppLocalizations.of(context).allTime;
|
||||||
|
case AdvancedSearchFilterField.sortBy:
|
||||||
|
return AppLocalizations.of(context).mostRecent;
|
||||||
case AdvancedSearchFilterField.hasAttachment:
|
case AdvancedSearchFilterField.hasAttachment:
|
||||||
return AppLocalizations.of(context).hasAttachment;
|
return AppLocalizations.of(context).hasAttachment;
|
||||||
}
|
}
|
||||||
|
|||||||
+17
@@ -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/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/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/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/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/localizations/app_localizations.dart';
|
||||||
import 'package:tmail_ui_user/main/routes/route_navigation.dart';
|
import 'package:tmail_ui_user/main/routes/route_navigation.dart';
|
||||||
@@ -109,6 +110,10 @@ class AdvancedSearchInputForm extends GetWidget<AdvancedFilterController>
|
|||||||
iconPadding: EdgeInsets.zero,
|
iconPadding: EdgeInsets.zero,
|
||||||
onTap: () => controller.selectDateRange(context)),
|
onTap: () => controller.selectDateRange(context)),
|
||||||
]),
|
]),
|
||||||
|
_buildFilterField(
|
||||||
|
context: context,
|
||||||
|
advancedSearchFilterField: AdvancedSearchFilterField.sortBy
|
||||||
|
),
|
||||||
AdvancedSearchFilterFormBottomView(focusManager: controller.focusManager)
|
AdvancedSearchFilterFormBottomView(focusManager: controller.focusManager)
|
||||||
],
|
],
|
||||||
),
|
),
|
||||||
@@ -172,6 +177,12 @@ class AdvancedSearchInputForm extends GetWidget<AdvancedFilterController>
|
|||||||
receiveTimeSelected: controller.dateFilterSelectedFormAdvancedSearch.value,
|
receiveTimeSelected: controller.dateFilterSelectedFormAdvancedSearch.value,
|
||||||
onReceiveTimeSelected: (receiveTime) => controller.updateReceiveDateSearchFilter(context, receiveTime),
|
onReceiveTimeSelected: (receiveTime) => controller.updateReceiveDateSearchFilter(context, receiveTime),
|
||||||
))
|
))
|
||||||
|
else if (advancedSearchFilterField == AdvancedSearchFilterField.sortBy)
|
||||||
|
Obx(() => SortByDropDownButton(
|
||||||
|
imagePaths: _imagePaths,
|
||||||
|
sortOrderSelected: controller.searchController.sortOrderFiltered.value,
|
||||||
|
onSortOrderSelected: controller.updateSortOrder,
|
||||||
|
))
|
||||||
else
|
else
|
||||||
_buildTextField(
|
_buildTextField(
|
||||||
isSelectFormList: isSelectFormList,
|
isSelectFormList: isSelectFormList,
|
||||||
@@ -229,6 +240,12 @@ class AdvancedSearchInputForm extends GetWidget<AdvancedFilterController>
|
|||||||
receiveTimeSelected: controller.dateFilterSelectedFormAdvancedSearch.value,
|
receiveTimeSelected: controller.dateFilterSelectedFormAdvancedSearch.value,
|
||||||
onReceiveTimeSelected: (receiveTime) => controller.updateReceiveDateSearchFilter(context, receiveTime),
|
onReceiveTimeSelected: (receiveTime) => controller.updateReceiveDateSearchFilter(context, receiveTime),
|
||||||
));
|
));
|
||||||
|
case AdvancedSearchFilterField.sortBy:
|
||||||
|
return Obx(() => SortByDropDownButton(
|
||||||
|
imagePaths: _imagePaths,
|
||||||
|
sortOrderSelected: controller.searchController.sortOrderFiltered.value,
|
||||||
|
onSortOrderSelected: controller.updateSortOrder,
|
||||||
|
));
|
||||||
default:
|
default:
|
||||||
return _buildTextField(
|
return _buildTextField(
|
||||||
isSelectFormList: isSelectFormList,
|
isSelectFormList: isSelectFormList,
|
||||||
|
|||||||
Reference in New Issue
Block a user