From 7da7a6881739e504c671f23443535d258b63f226 Mon Sep 17 00:00:00 2001 From: Rene Pfeuffer Date: Tue, 17 Dec 2019 12:36:58 +0100 Subject: [PATCH] Prevent "flicker" of tree while loading update --- .../ui-webapp/src/repos/sources/modules/sources.ts | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/scm-ui/ui-webapp/src/repos/sources/modules/sources.ts b/scm-ui/ui-webapp/src/repos/sources/modules/sources.ts index e6ab2836b4..f976928e9f 100644 --- a/scm-ui/ui-webapp/src/repos/sources/modules/sources.ts +++ b/scm-ui/ui-webapp/src/repos/sources/modules/sources.ts @@ -25,7 +25,7 @@ export function fetchSources( if (initialLoad) { dispatch(fetchSourcesPending(repository, revision, path)); } else { - dispatch(updateSourcesPending(repository, revision, path)) + dispatch(updateSourcesPending(repository, revision, path, getSources(state, repository, revision, path))); } return apiClient .get(createUrl(repository, revision, path)) @@ -57,9 +57,10 @@ export function fetchSourcesPending(repository: Repository, revision: string, pa }; } -export function updateSourcesPending(repository: Repository, revision: string, path: string): Action { +export function updateSourcesPending(repository: Repository, revision: string, path: string, currentSources: any): Action { return { type: "UPDATE_PENDING", + payload: { updatePending: true, sources: currentSources}, itemId: createItemId(repository, revision, path) }; } @@ -94,16 +95,11 @@ export default function reducer( type: "UNKNOWN" } ): any { - if (action.itemId && action.type === FETCH_SOURCES_SUCCESS) { + if (action.itemId && (action.type === FETCH_SOURCES_SUCCESS || action.type === "UPDATE_PENDING")) { return { ...state, [action.itemId]: action.payload }; - } else if (action.itemId && action.type === "UPDATE_PENDING") { - return { - ...state, - [action.itemId]: { updatePending: true }} - ; } return state; }