How start the ProgressIndicator only once but not with every Redux Action?

In Our project, every time we create a new document, we have to call some Redux Actions after another in different sagas. This leads to a flickering ProgressIndicator, because every time a new Redux Action is called, a new Progress Indicator is popping up and if the roundtrip auf the Redux Action has finished, the ProgressIndicator disappears until the next Redux Action is called.

So my question is: is there a way to start the ProgressIndicator only once at the beginning, call all my Redux Actions and after I am done making the ProgressIndicator disappear, again?

Hi,
are you customizing the ProgressIndicator?
By default, client will show the ProgressIndicator spinning whenever an activity (its default dataholder, to be specific) is “busy”. Therefore, making sure that busy is set to true once at the start of your actions and once to false at the end should produce a continuous (non-flickering) spinner.

In case of customizing, you would need to provide your own predicate function to decide whether to show the spinner or not.

Information about the default Progress Indicator is also described in the docs.

Hi @chris-long-packet,

thank you for your help. I have implemented it now in a sage like this:

export function* setBusyOnStartProcessSaga(): SagaIterator {
    yield takeEvery(WorkflowsActions.startProcess.started.match, processSetBusy);
}

function* processSetBusy(action: Action<Success<WorkflowsActions.StartProcessPayload, any>>): SagaIterator {

    yield put(ApplicationActions.setBusy( true));
}

And set busy to false in an other saga like this:

yield put(ApplicationActions.setBusy( false));

Now there is a completely white screen during the loading phase instead of the ProgressIndicator. But after all work is done, I come back to the right view I wanted to load.