Merge branch '18661-refresh-flicker-fix'. Closes #18661
[arvados-workbench2.git] / src / store / project-panel / project-panel-middleware-service.ts
index d9bf0d28f4f1fa3a651c09d07715c2f5c8ca3ac8..be569b49ff0276aa031f1467aec896d08c32989b 100644 (file)
@@ -50,7 +50,6 @@ export class ProjectPanelMiddlewareService extends DataExplorerMiddlewareService
             try {
                 api.dispatch(progressIndicatorActions.START_WORKING(this.getId()));
                 const response = await this.services.groupsService.contents(projectUuid, getParams(dataExplorer, !!isProjectTrashed));
-                api.dispatch(progressIndicatorActions.PERSIST_STOP_WORKING(this.getId()));
                 const resourceUuids = response.items.map(item => item.uuid);
                 api.dispatch<any>(updateFavorites(resourceUuids));
                 api.dispatch<any>(updatePublicFavorites(resourceUuids));
@@ -58,7 +57,6 @@ export class ProjectPanelMiddlewareService extends DataExplorerMiddlewareService
                 await api.dispatch<any>(loadMissingProcessesInformation(response.items));
                 api.dispatch(setItems(response));
             } catch (e) {
-                api.dispatch(progressIndicatorActions.PERSIST_STOP_WORKING(this.getId()));
                 api.dispatch(projectPanelActions.SET_ITEMS({
                     items: [],
                     itemsAvailable: 0,
@@ -66,6 +64,8 @@ export class ProjectPanelMiddlewareService extends DataExplorerMiddlewareService
                     rowsPerPage: dataExplorer.rowsPerPage
                 }));
                 api.dispatch(couldNotFetchProjectContents());
+            } finally {
+                api.dispatch(progressIndicatorActions.PERSIST_STOP_WORKING(this.getId()));
             }
         }
     }
@@ -129,7 +129,6 @@ export const getFilters = (dataExplorer: DataExplorer) => {
             break;
         }
         case ProcessStatusFilter.CANCELLED:
-        case ProcessStatusFilter.FAILED:
         case ProcessStatusFilter.LOCKED:
         case ProcessStatusFilter.QUEUED:
         case ProcessStatusFilter.RUNNING: {