Don't show loading bar when checking account timeline for newer stuff

This commit is contained in:
Eugen Rochko 2017-01-19 11:01:01 +01:00
parent 46be4631ae
commit 9b0941182f
1 changed files with 16 additions and 11 deletions

View File

@ -80,21 +80,23 @@ export function fetchAccount(id) {
export function fetchAccountTimeline(id, replace = false) { export function fetchAccountTimeline(id, replace = false) {
return (dispatch, getState) => { return (dispatch, getState) => {
dispatch(fetchAccountTimelineRequest(id));
const ids = getState().getIn(['timelines', 'accounts_timelines', id], Immutable.List()); const ids = getState().getIn(['timelines', 'accounts_timelines', id], Immutable.List());
const newestId = ids.size > 0 ? ids.first() : null; const newestId = ids.size > 0 ? ids.first() : null;
let params = ''; let params = '';
let skipLoading = false;
if (newestId !== null && !replace) { if (newestId !== null && !replace) {
params = `?since_id=${newestId}`; params = `?since_id=${newestId}`;
skipLoading = true;
} }
dispatch(fetchAccountTimelineRequest(id, skipLoading));
api(getState).get(`/api/v1/accounts/${id}/statuses${params}`).then(response => { api(getState).get(`/api/v1/accounts/${id}/statuses${params}`).then(response => {
dispatch(fetchAccountTimelineSuccess(id, response.data, replace)); dispatch(fetchAccountTimelineSuccess(id, response.data, replace, skipLoading));
}).catch(error => { }).catch(error => {
dispatch(fetchAccountTimelineFail(id, error)); dispatch(fetchAccountTimelineFail(id, error, skipLoading));
}); });
}; };
}; };
@ -201,27 +203,30 @@ export function unfollowAccountFail(error) {
}; };
}; };
export function fetchAccountTimelineRequest(id) { export function fetchAccountTimelineRequest(id, skipLoading) {
return { return {
type: ACCOUNT_TIMELINE_FETCH_REQUEST, type: ACCOUNT_TIMELINE_FETCH_REQUEST,
id id,
skipLoading
}; };
}; };
export function fetchAccountTimelineSuccess(id, statuses, replace) { export function fetchAccountTimelineSuccess(id, statuses, replace, skipLoading) {
return { return {
type: ACCOUNT_TIMELINE_FETCH_SUCCESS, type: ACCOUNT_TIMELINE_FETCH_SUCCESS,
id, id,
statuses, statuses,
replace replace,
skipLoading
}; };
}; };
export function fetchAccountTimelineFail(id, error) { export function fetchAccountTimelineFail(id, error, skipLoading) {
return { return {
type: ACCOUNT_TIMELINE_FETCH_FAIL, type: ACCOUNT_TIMELINE_FETCH_FAIL,
id, id,
error error,
skipLoading
}; };
}; };