TF-4066 Add unread filter in mobile search
This commit is contained in:
@@ -171,7 +171,6 @@ class SearchEmailController extends BaseController
|
||||
|
||||
@override
|
||||
void handleSuccessViewState(Success success) {
|
||||
super.handleSuccessViewState(success);
|
||||
if (success is SearchEmailSuccess) {
|
||||
_searchEmailsSuccess(success);
|
||||
} else if (success is SearchingMoreState) {
|
||||
@@ -180,16 +179,19 @@ class SearchEmailController extends BaseController
|
||||
_searchMoreEmailsSuccess(success);
|
||||
} else if (success is SearchingState) {
|
||||
resultSearchViewState.value = Right(success);
|
||||
} else {
|
||||
super.handleSuccessViewState(success);
|
||||
}
|
||||
}
|
||||
|
||||
@override
|
||||
void handleFailureViewState(Failure failure) {
|
||||
super.handleFailureViewState(failure);
|
||||
if (failure is SearchEmailFailure) {
|
||||
_searchEmailsFailure(failure);
|
||||
} else if (failure is SearchMoreEmailFailure) {
|
||||
_searchMoreEmailsFailure(failure);
|
||||
} else {
|
||||
super.handleFailureViewState(failure);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -627,6 +629,11 @@ class SearchEmailController extends BaseController
|
||||
_searchEmailAction(context);
|
||||
}
|
||||
|
||||
void selectUnreadSearchFilter(BuildContext context) {
|
||||
_updateSimpleSearchFilter(unreadOption: const Some(true));
|
||||
_searchEmailAction(context);
|
||||
}
|
||||
|
||||
bool checkQuickSearchFilterSelected(QuickSearchFilter filter) {
|
||||
switch (filter) {
|
||||
case QuickSearchFilter.hasAttachment:
|
||||
@@ -1014,6 +1021,9 @@ class SearchEmailController extends BaseController
|
||||
case QuickSearchFilter.starred:
|
||||
_deleteStarredSearchFilter(context);
|
||||
break;
|
||||
case QuickSearchFilter.unread:
|
||||
_deleteUnreadSearchFilter(context);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
@@ -1065,6 +1075,11 @@ class SearchEmailController extends BaseController
|
||||
_searchEmailAction(context);
|
||||
}
|
||||
|
||||
void _deleteUnreadSearchFilter(BuildContext context) {
|
||||
_updateSimpleSearchFilter(unreadOption: const None());
|
||||
_searchEmailAction(context);
|
||||
}
|
||||
|
||||
void clearAllSearchFilterApplied(BuildContext context) {
|
||||
textInputSearchController.clear();
|
||||
currentSearchText.value = '';
|
||||
|
||||
@@ -271,6 +271,8 @@ class SearchEmailView extends GetWidget<SearchEmailController>
|
||||
SearchEmailViewStyle.searchFilterSizeBoxMargin,
|
||||
_buildSearchFilterButton(context, QuickSearchFilter.starred),
|
||||
SearchEmailViewStyle.searchFilterSizeBoxMargin,
|
||||
_buildSearchFilterButton(context, QuickSearchFilter.unread),
|
||||
SearchEmailViewStyle.searchFilterSizeBoxMargin,
|
||||
_buildSearchFilterButton(context, QuickSearchFilter.sortBy),
|
||||
],
|
||||
),
|
||||
@@ -382,6 +384,9 @@ class SearchEmailView extends GetWidget<SearchEmailController>
|
||||
case QuickSearchFilter.starred:
|
||||
controller.selectStarredSearchFilter(context);
|
||||
break;
|
||||
case QuickSearchFilter.unread:
|
||||
controller.selectUnreadSearchFilter(context);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user