From a8f6099be22a1eff4267c859f3954c1a22e3e793 Mon Sep 17 00:00:00 2001 From: shpuld Date: Tue, 8 Jan 2019 23:09:03 +0200 Subject: [PATCH 1/6] Retain userId on clearing user timeline, don't flush when empty timeline --- src/modules/statuses.js | 2 ++ src/services/timeline_fetcher/timeline_fetcher.service.js | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/src/modules/statuses.js b/src/modules/statuses.js index dccccf7248..b7560f1ce0 100644 --- a/src/modules/statuses.js +++ b/src/modules/statuses.js @@ -346,7 +346,9 @@ export const mutations = { each(oldTimeline.visibleStatuses, (status) => { oldTimeline.visibleStatusesObject[status.id] = status }) }, clearTimeline (state, { timeline }) { + const userId = state.timelines[timeline].userId state.timelines[timeline] = emptyTl() + state.timelines[timeline].userId = userId }, setFavorited (state, { status, value }) { const newStatus = state.allStatusesObject[status.id] diff --git a/src/services/timeline_fetcher/timeline_fetcher.service.js b/src/services/timeline_fetcher/timeline_fetcher.service.js index c2a7de5605..727f6c6043 100644 --- a/src/services/timeline_fetcher/timeline_fetcher.service.js +++ b/src/services/timeline_fetcher/timeline_fetcher.service.js @@ -31,7 +31,7 @@ const fetchAndUpdate = ({store, credentials, timeline = 'friends', older = false return apiService.fetchTimeline(args) .then((statuses) => { - if (!older && statuses.length >= 20 && !timelineData.loading) { + if (!older && statuses.length >= 20 && !timelineData.loading && timelineData.statuses.length) { store.dispatch('queueFlush', { timeline: timeline, id: timelineData.maxId }) } update({store, statuses, timeline, showImmediately, userId}) From 0b8f616af10f4fcb4697b5540f0ad5188056728c Mon Sep 17 00:00:00 2001 From: Henry Jameson Date: Wed, 9 Jan 2019 14:18:36 +0300 Subject: [PATCH 2/6] fix #262 part of user profiles not being able to load previous posts --- src/components/user_profile/user_profile.js | 6 +++--- src/components/user_profile/user_profile.vue | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/components/user_profile/user_profile.js b/src/components/user_profile/user_profile.js index 2ca098171d..bde207079a 100644 --- a/src/components/user_profile/user_profile.js +++ b/src/components/user_profile/user_profile.js @@ -21,7 +21,7 @@ const UserProfile = { return this.$route.params.id || this.user.id }, userName () { - return this.$route.params.name + return this.$route.params.name || this.user.screen_name }, friends () { return this.user.friends @@ -68,7 +68,7 @@ const UserProfile = { } this.$store.dispatch('stopFetching', 'user') this.$store.commit('clearTimeline', { timeline: 'user' }) - this.$store.dispatch('startFetching', ['user', this.userName]) + this.$store.dispatch('startFetching', ['user', this.fetchBy]) }, userId () { if (!this.isExternal) { @@ -76,7 +76,7 @@ const UserProfile = { } this.$store.dispatch('stopFetching', 'user') this.$store.commit('clearTimeline', { timeline: 'user' }) - this.$store.dispatch('startFetching', ['user', this.userId]) + this.$store.dispatch('startFetching', ['user', this.fetchBy]) }, user () { if (this.user.id && !this.user.followers) { diff --git a/src/components/user_profile/user_profile.vue b/src/components/user_profile/user_profile.vue index a46befa53d..506190260d 100644 --- a/src/components/user_profile/user_profile.vue +++ b/src/components/user_profile/user_profile.vue @@ -3,7 +3,7 @@