Revert infinite scroll in timelines back to looking at ID of oldest
loaded status; do not preload submitted statuses into community/public timelines, unless those timelines have already been loaded; do not close streaming API connections for community/public timelines, once they have been established (most users navigate back to them eventually)
This commit is contained in:
@ -85,8 +85,13 @@ export function submitCompose() {
|
||||
dispatch(updateTimeline('home', { ...response.data }));
|
||||
|
||||
if (response.data.in_reply_to_id === null && response.data.visibility === 'public') {
|
||||
dispatch(updateTimeline('community', { ...response.data }));
|
||||
dispatch(updateTimeline('public', { ...response.data }));
|
||||
if (getState.getIn(['timelines', 'community', 'loaded'])) {
|
||||
dispatch(updateTimeline('community', { ...response.data }));
|
||||
}
|
||||
|
||||
if (getState.getIn(['timelines', 'public', 'loaded'])) {
|
||||
dispatch(updateTimeline('public', { ...response.data }));
|
||||
}
|
||||
}
|
||||
}).catch(function (error) {
|
||||
dispatch(submitComposeFail(error));
|
||||
|
@ -106,18 +106,20 @@ export function expandTimeline(timeline) {
|
||||
return;
|
||||
}
|
||||
|
||||
const next = getState().getIn(['timelines', timeline, 'next']);
|
||||
const params = getState().getIn(['timelines', timeline, 'params'], {});
|
||||
|
||||
if (next === null) {
|
||||
if (getState().getIn(['timelines', timeline, 'items']).size === 0) {
|
||||
return;
|
||||
}
|
||||
|
||||
const path = getState().getIn(['timelines', timeline, 'path'])(getState().getIn(['timelines', timeline, 'id']));
|
||||
const params = getState().getIn(['timelines', timeline, 'params'], {});
|
||||
const lastId = getState().getIn(['timelines', timeline, 'items']).last();
|
||||
|
||||
dispatch(expandTimelineRequest(timeline));
|
||||
|
||||
api(getState).get(next, {
|
||||
api(getState).get(path, {
|
||||
params: {
|
||||
...params,
|
||||
max_id: lastId,
|
||||
limit: 10
|
||||
}
|
||||
}).then(response => {
|
||||
|
Reference in New Issue
Block a user