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,11 +324,7 @@ 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) { _refreshEmailChanges(currentEmailState: success.currentEmailState);
mailboxDashBoardController.quickSearchEmails();
} else {
_refreshEmailChanges(currentEmailState: success.currentEmailState);
}
} }
}); });
} }
@@ -436,19 +432,22 @@ class ThreadController extends BaseController {
dispatchState(Right(LoadingState())); dispatchState(Right(LoadingState()));
canLoadMore = true; canLoadMore = true;
cancelSelectEmail(); cancelSelectEmail();
_getAllEmail();
if (searchController.isSearchEmailRunning) {
final limit = emailList.isNotEmpty ? UnsignedInt(emailList.length) : ThreadConstants.defaultLimit;
searchController.searchEmailFilter.value = _searchEmailFilter.clearBeforeDate();
_searchEmail(limit: limit);
} else {
_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 searchController.searchEmailFilter.value = _searchEmailFilter.clearBeforeDate();
? UnsignedInt(emailList.length) _searchEmail(limit: limit);
: ThreadConstants.defaultLimit;
searchController.searchEmailFilter.value = _searchEmailFilter.clearBeforeDate();
_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;