TF-1803 Fix can not clear 'Have the world' in advanced search

(cherry picked from commit 9399bc613d1ad54a6b5d30b408f613269625fcde)
This commit is contained in:
dab246
2023-05-04 16:19:32 +07:00
committed by Dat Vu
parent 8b8655b3e3
commit 76cf422102
3 changed files with 11 additions and 10 deletions
@@ -86,7 +86,7 @@ class AdvancedFilterController extends BaseController {
searchController.searchInputController.clear();
searchController.deactivateAdvancedSearch();
searchController.isAdvancedSearchViewOpen.toggle();
_mailboxDashBoardController.searchEmail(context, StringConvert.writeNullToEmpty(searchEmailFilter.text?.value));
_mailboxDashBoardController.searchEmail(context);
}
void _updateFilterEmailFromAdvancedSearchView() {
@@ -94,7 +94,7 @@ class AdvancedFilterController extends BaseController {
searchController.updateFilterEmail(text: SearchQuery(hasKeyWordFilterInputController.text));
searchController.searchInputController.text = hasKeyWordFilterInputController.text;
} else {
searchController.updateFilterEmail(text: SearchQuery(searchController.searchInputController.text));
searchController.updateFilterEmail(text: SearchQuery.initial());
}
if (notKeyWordFilterInputController.text.isNotEmpty) {
@@ -103,12 +103,12 @@ class AdvancedFilterController extends BaseController {
searchController.updateFilterEmail(notKeyword: {});
}
if(lastTextForm.isNotEmpty && !searchController.searchEmailFilter.value.from.contains(lastTextForm.value)){
if (lastTextForm.isNotEmpty && !searchController.searchEmailFilter.value.from.contains(lastTextForm.value)){
searchController.updateFilterEmail(fromOption: Some(searchController.searchEmailFilter.value.from..add(lastTextForm.value)));
lastTextForm.value = '';
}
if(lastTextTo.isNotEmpty && !searchController.searchEmailFilter.value.to.contains(lastTextTo.value)){
if (lastTextTo.isNotEmpty && !searchController.searchEmailFilter.value.to.contains(lastTextTo.value)){
searchController.updateFilterEmail(
to: searchController.searchEmailFilter.value.to..add(lastTextTo.value),
);
@@ -170,8 +170,7 @@ class AdvancedFilterController extends BaseController {
searchController.updateFilterEmail(beforeOption: const None());
}
searchController.isAdvancedSearchViewOpen.toggle();
_mailboxDashBoardController.searchEmail(
context, StringConvert.writeNullToEmpty(searchEmailFilter.text?.value));
_mailboxDashBoardController.searchEmail(context);
}
void _checkContactPermission() async {
@@ -528,13 +528,15 @@ class MailboxDashBoardController extends ReloadableController {
bool isSelectionEnabled() => currentSelectMode.value == SelectMode.ACTIVE;
void searchEmail(BuildContext context, String value) {
void searchEmail(BuildContext context, {String? queryString}) {
log('MailboxDashBoardController::searchEmail():');
clearFilterMessageOption();
if (searchController.listFilterOnSuggestionForm.isNotEmpty) {
searchController.applyFilterSuggestionToSearchFilter(userProfile.value);
}
searchController.updateFilterEmail(text: SearchQuery(value));
if (queryString?.isNotEmpty == true) {
searchController.updateFilterEmail(text: SearchQuery(queryString!));
}
dispatchAction(StartSearchEmailAction());
KeyboardUtils.hideKeyboard(context);
if (_searchInsideEmailDetailedViewIsActive(context)) {
@@ -125,7 +125,7 @@ class SearchInputFormWidget extends StatelessWidget with AppLoaderMixin {
}
if (query.isNotEmpty || dashBoardController.searchController.listFilterOnSuggestionForm.isNotEmpty) {
dashBoardController.searchEmail(context, query);
dashBoardController.searchEmail(context, queryString: query);
} else {
dashBoardController.clearSearchEmail();
}
@@ -143,7 +143,7 @@ class SearchInputFormWidget extends StatelessWidget with AppLoaderMixin {
void _invokeSelectRecentItem(BuildContext context, RecentSearch recent) {
dashBoardController.searchController.enableSearch();
dashBoardController.searchController.searchInputController.text = recent.value;
dashBoardController.searchEmail(context, recent.value);
dashBoardController.searchEmail(context, queryString: recent.value);
}
Widget _buildShowAllResultButton(BuildContext context, String keyword) {