forked from mirrors/akkoma-fe
fix timeline showimmediately being set wrongly
This commit is contained in:
parent
4d080a1654
commit
5b403ba7d1
4 changed files with 9 additions and 6 deletions
|
@ -1,9 +1,9 @@
|
|||
|
||||
// makeFetcher - replacement for setInterval for fetching, starts counting
|
||||
// the interval only after a request is done instead of immediately.
|
||||
// promiseCall is a function that returns a promise, it's called when created
|
||||
// and after every interval.
|
||||
// interval is the interval delay in ms.
|
||||
// - promiseCall is a function that returns a promise, it's called the first
|
||||
// time after the first interval.
|
||||
// - interval is the interval delay in ms.
|
||||
|
||||
export const makeFetcher = (promiseCall, interval) => {
|
||||
let stopped = false
|
||||
|
@ -22,7 +22,7 @@ export const makeFetcher = (promiseCall, interval) => {
|
|||
window.clearTimeout(timeout)
|
||||
}
|
||||
|
||||
func()
|
||||
timeout = window.setTimeout(func, interval)
|
||||
|
||||
return stopFetcher
|
||||
}
|
||||
|
|
|
@ -12,6 +12,7 @@ const fetchAndUpdate = ({ store, credentials }) => {
|
|||
|
||||
const startFetching = ({ credentials, store }) => {
|
||||
const boundFetchAndUpdate = () => fetchAndUpdate({ credentials, store })
|
||||
boundFetchAndUpdate()
|
||||
return makeFetcher(boundFetchAndUpdate, 10000)
|
||||
}
|
||||
|
||||
|
|
|
@ -59,7 +59,8 @@ const startFetching = ({ credentials, store }) => {
|
|||
// that there won't spam of them when user just opened up the FE we
|
||||
// reset that flag after a while to show new notifications once again.
|
||||
setTimeout(() => store.dispatch('setNotificationsSilence', false), 10000)
|
||||
const boundFetchAndUpdate = () => fetchAndUpdate({ credentials, store, refetch: true })
|
||||
const boundFetchAndUpdate = () => fetchAndUpdate({ credentials, store })
|
||||
boundFetchAndUpdate()
|
||||
return makeFetcher(boundFetchAndUpdate, 10000)
|
||||
}
|
||||
|
||||
|
|
|
@ -71,8 +71,9 @@ const startFetching = ({ timeline = 'friends', credentials, store, userId = fals
|
|||
const timelineData = rootState.statuses.timelines[camelCase(timeline)]
|
||||
const showImmediately = timelineData.visibleStatuses.length === 0
|
||||
timelineData.userId = userId
|
||||
fetchAndUpdate({ timeline, credentials, store, showImmediately, userId, tag })
|
||||
const boundFetchAndUpdate = () =>
|
||||
fetchAndUpdate({ timeline, credentials, store, showImmediately, userId, tag })
|
||||
fetchAndUpdate({ timeline, credentials, store, userId, tag })
|
||||
return makeFetcher(boundFetchAndUpdate, 10000)
|
||||
}
|
||||
const timelineFetcher = {
|
||||
|
|
Loading…
Reference in a new issue