TF-1063 Refresh all when search activated

This commit is contained in:
dab246
2022-11-03 02:45:59 +07:00
committed by Dat H. Pham
parent 1007845651
commit b95cbeed26
@@ -324,12 +324,8 @@ class ThreadController extends BaseController {
} else if (success is MarkAsMailboxReadHasSomeEmailFailure) { } else if (success is MarkAsMailboxReadHasSomeEmailFailure) {
_refreshEmailChanges(currentEmailState: success.currentEmailState); _refreshEmailChanges(currentEmailState: success.currentEmailState);
} else if (success is MoveMultipleEmailToMailboxAllSuccess) { } else if (success is MoveMultipleEmailToMailboxAllSuccess) {
if(searchController.isSearchEmailRunning) {
mailboxDashBoardController.quickSearchEmails();
} else {
_refreshEmailChanges(currentEmailState: success.currentEmailState); _refreshEmailChanges(currentEmailState: success.currentEmailState);
} }
}
}); });
} }
}); });
@@ -436,19 +432,22 @@ class ThreadController extends BaseController {
dispatchState(Right(LoadingState())); dispatchState(Right(LoadingState()));
canLoadMore = true; canLoadMore = true;
cancelSelectEmail(); cancelSelectEmail();
if (searchController.isSearchEmailRunning) {
final limit = emailList.isNotEmpty ? UnsignedInt(emailList.length) : ThreadConstants.defaultLimit;
searchController.searchEmailFilter.value = _searchEmailFilter.clearBeforeDate();
_searchEmail(limit: limit);
} else {
_getAllEmail(); _getAllEmail();
} }
}
void _refreshEmailChanges({jmap.State? currentEmailState}) { void _refreshEmailChanges({jmap.State? currentEmailState}) {
log('ThreadController::_refreshEmailChanges(): currentEmailState: $currentEmailState'); log('ThreadController::_refreshEmailChanges(): currentEmailState: $currentEmailState');
if (isSearchActive()) { if (searchController.isSearchEmailRunning) {
if (_accountId != null && searchQuery != null) { final limit = emailList.isNotEmpty ? UnsignedInt(emailList.length) : ThreadConstants.defaultLimit;
final limit = emailList.isNotEmpty
? UnsignedInt(emailList.length)
: ThreadConstants.defaultLimit;
searchController.searchEmailFilter.value = _searchEmailFilter.clearBeforeDate(); searchController.searchEmailFilter.value = _searchEmailFilter.clearBeforeDate();
_searchEmail(limit: limit); _searchEmail(limit: limit);
}
} else { } else {
final newEmailState = currentEmailState ?? _currentEmailState; final newEmailState = currentEmailState ?? _currentEmailState;
log('ThreadController::_refreshEmailChanges(): newEmailState: $newEmailState'); log('ThreadController::_refreshEmailChanges(): newEmailState: $newEmailState');
@@ -634,7 +633,7 @@ class ThreadController extends BaseController {
message: newFilterOption.getMessageToast(context), message: newFilterOption.getMessageToast(context),
icon: newFilterOption.getIconToast(_imagePaths)); icon: newFilterOption.getIconToast(_imagePaths));
if (isSearchActive() || searchController.advancedSearchIsActivated.isTrue) { if (searchController.isSearchEmailRunning) {
_searchEmail(filterCondition: _getFilterCondition()); _searchEmail(filterCondition: _getFilterCondition());
} else { } else {
refreshAllEmail(); refreshAllEmail();
@@ -919,7 +918,7 @@ class ThreadController extends BaseController {
} }
} }
bool isSearchActive() => searchController.isSearchActive(); bool isSearchActive() => searchController.isSearchEmailRunning;
bool get isAllSearchInActive => !searchController.isSearchActive() && bool get isAllSearchInActive => !searchController.isSearchActive() &&
searchController.isAdvancedSearchViewOpen.isFalse; searchController.isAdvancedSearchViewOpen.isFalse;