From f7c67130f5a8de26c40adb689c395633c3fd9013 Mon Sep 17 00:00:00 2001 From: Henry Jameson Date: Sun, 15 Feb 2026 21:31:52 +0200 Subject: [PATCH 1/4] cleanup in conversation --- src/components/conversation/conversation.vue | 64 ++++++++------------ src/components/status/status.js | 16 ++--- 2 files changed, 34 insertions(+), 46 deletions(-) diff --git a/src/components/conversation/conversation.vue b/src/components/conversation/conversation.vue index 2f3de3a86..8d4734083 100644 --- a/src/components/conversation/conversation.vue +++ b/src/components/conversation/conversation.vue @@ -88,38 +88,34 @@ class="thread-ancestor" :class="{'thread-ancestor-has-other-replies': getReplies(status.id).length > 1, '-faded': shouldFadeAncestors}" > - Date: Sun, 15 Feb 2026 21:33:21 +0200 Subject: [PATCH 2/4] fix quick view settings --- .../quick_view_settings.js | 36 +++++++++---------- 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/src/components/quick_view_settings/quick_view_settings.js b/src/components/quick_view_settings/quick_view_settings.js index 438d1405b..d22e10495 100644 --- a/src/components/quick_view_settings/quick_view_settings.js +++ b/src/components/quick_view_settings/quick_view_settings.js @@ -1,10 +1,10 @@ import { mapState } from 'pinia' -import { mapGetters } from 'vuex' import Popover from 'src/components/popover/popover.vue' import QuickFilterSettings from 'src/components/quick_filter_settings/quick_filter_settings.vue' import { useInterfaceStore } from 'src/stores/interface.js' +import { useSyncConfigStore } from 'src/stores/sync_config.js' import { library } from '@fortawesome/fontawesome-svg-core' import { @@ -25,18 +25,12 @@ const QuickViewSettings = { QuickFilterSettings, }, methods: { - setConversationDisplay(visibility) { - this.$store.dispatch('setOption', { - name: 'conversationDisplay', - value: visibility, - }) - }, openTab(tab) { useInterfaceStore().openSettingsModalTab(tab) }, }, computed: { - ...mapGetters(['mergedConfig']), + ...mapState(useSyncConfigStore, ['mergedConfig']), ...mapState(useInterfaceStore, { mobileLayout: (state) => state.layoutType === 'mobile', }), @@ -47,8 +41,11 @@ const QuickViewSettings = { get() { return this.mergedConfig.conversationDisplay }, - set(newVal) { - this.setConversationDisplay(newVal) + set(value) { + useSyncConfigStore().setPreference({ + path: 'simple.conversationDisplay', + value, + }) }, }, autoUpdate: { @@ -57,7 +54,7 @@ const QuickViewSettings = { }, set() { const value = !this.autoUpdate - this.$store.dispatch('setOption', { name: 'streaming', value }) + useSyncConfigStore().setPreference({ path: 'simple.streaming', value }) }, }, collapseWithSubjects: { @@ -66,8 +63,8 @@ const QuickViewSettings = { }, set() { const value = !this.collapseWithSubjects - this.$store.dispatch('setOption', { - name: 'collapseMessageWithSubject', + useSyncConfigStore().setPreference({ + path: 'simple.collapseMessageWithSubject', value, }) }, @@ -78,8 +75,8 @@ const QuickViewSettings = { }, set() { const value = !this.showUserAvatars - this.$store.dispatch('setOption', { - name: 'mentionLinkShowAvatar', + useSyncConfigStore().setPreference({ + path: 'simple.mentionLinkShowAvatar', value, }) }, @@ -90,7 +87,10 @@ const QuickViewSettings = { }, set() { const value = !this.muteBotStatuses - this.$store.dispatch('setOption', { name: 'muteBotStatuses', value }) + useSyncConfigStore().setPreference({ + path: 'simple.muteBotStatuses', + value, + }) }, }, muteSensitiveStatuses: { @@ -99,8 +99,8 @@ const QuickViewSettings = { }, set() { const value = !this.muteSensitiveStatuses - this.$store.dispatch('setOption', { - name: 'muteSensitiveStatuses', + useSyncConfigStore().setPreference({ + path: 'simple.muteSensitiveStatuses', value, }) }, From 3fbf21a757963c52bbb7d23666c70402035e7e19 Mon Sep 17 00:00:00 2001 From: Henry Jameson Date: Sun, 15 Feb 2026 21:33:31 +0200 Subject: [PATCH 3/4] notification-related settings --- src/components/mobile_nav/mobile_nav.js | 5 ++++- src/components/notifications/notifications.js | 5 ++++- src/components/side_drawer/side_drawer.js | 6 +++++- .../notification_utils/notification_utils.js | 14 ++++++++------ 4 files changed, 21 insertions(+), 9 deletions(-) diff --git a/src/components/mobile_nav/mobile_nav.js b/src/components/mobile_nav/mobile_nav.js index 6242344ce..9230bb3c0 100644 --- a/src/components/mobile_nav/mobile_nav.js +++ b/src/components/mobile_nav/mobile_nav.js @@ -52,7 +52,10 @@ const MobileNav = { return this.$store.state.users.currentUser }, unseenNotifications() { - return unseenNotificationsFromStore(this.$store) + return unseenNotificationsFromStore( + this.$store, + useSyncConfigStore().mergedConfig.notificationVisibility, + ) }, unseenNotificationsCount() { return ( diff --git a/src/components/notifications/notifications.js b/src/components/notifications/notifications.js index 544901ebf..6d21ce0ea 100644 --- a/src/components/notifications/notifications.js +++ b/src/components/notifications/notifications.js @@ -76,7 +76,10 @@ const Notifications = { return this.$store.state.notifications.error }, unseenNotifications() { - return unseenNotificationsFromStore(this.$store) + return unseenNotificationsFromStore( + this.$store, + useSyncConfigStore().mergedConfig.notificationVisibility, + ) }, filteredNotifications() { if (this.unseenAtTop) { diff --git a/src/components/side_drawer/side_drawer.js b/src/components/side_drawer/side_drawer.js index 05d8e92f5..a906cd3ba 100644 --- a/src/components/side_drawer/side_drawer.js +++ b/src/components/side_drawer/side_drawer.js @@ -10,6 +10,7 @@ import { useAnnouncementsStore } from 'src/stores/announcements' import { useInstanceStore } from 'src/stores/instance.js' import { useInstanceCapabilitiesStore } from 'src/stores/instance_capabilities.js' import { useInterfaceStore } from 'src/stores/interface' +import { useSyncConfigStore } from 'src/stores/sync_config.js' import { useShoutStore } from 'src/stores/shout' import { library } from '@fortawesome/fontawesome-svg-core' @@ -72,7 +73,10 @@ const SideDrawer = { return useShoutStore().joined }, unseenNotifications() { - return unseenNotificationsFromStore(this.$store) + return unseenNotificationsFromStore( + this.$store, + useSyncConfigStore().mergedConfig.notificationVisibility, + ) }, unseenNotificationsCount() { return this.unseenNotifications.length diff --git a/src/services/notification_utils/notification_utils.js b/src/services/notification_utils/notification_utils.js index e5baa9a20..95902daef 100644 --- a/src/services/notification_utils/notification_utils.js +++ b/src/services/notification_utils/notification_utils.js @@ -105,15 +105,17 @@ export const filteredNotificationsFromStore = ( ) } -export const unseenNotificationsFromStore = (store) => { +export const unseenNotificationsFromStore = (store, notificationVisibility) => { const rootGetters = store.rootGetters || store.getters const ignoreInactionableSeen = rootGetters.mergedConfig.ignoreInactionableSeen - return filteredNotificationsFromStore(store).filter(({ seen, type }) => { - if (!ignoreInactionableSeen) return !seen - if (seen) return false - return ACTIONABLE_NOTIFICATION_TYPES.has(type) - }) + return filteredNotificationsFromStore(store, notificationVisibility).filter( + ({ seen, type }) => { + if (!ignoreInactionableSeen) return !seen + if (seen) return false + return ACTIONABLE_NOTIFICATION_TYPES.has(type) + }, + ) } export const prepareNotificationObject = (notification, i18n) => { From f62e0c5718c73bb7d9756f8fa1bdf35ff0f0e9e0 Mon Sep 17 00:00:00 2001 From: Henry Jameson Date: Sun, 15 Feb 2026 21:48:12 +0200 Subject: [PATCH 4/4] fix background image --- src/App.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/App.js b/src/App.js index c7862a8fb..273b3e3bc 100644 --- a/src/App.js +++ b/src/App.js @@ -136,7 +136,7 @@ export default { return this.currentUser.background_image }, instanceBackground() { - return this.mergedConfig.hideInstanceWallpaper ? null : this.background + return useSyncConfigStore().mergedConfig.hideInstanceWallpaper ? null : this.instanceBackgroundUrl }, background() { return this.userBackground || this.instanceBackground @@ -209,7 +209,7 @@ export default { 'editingAvailable', ]), ...mapState(useInstanceStore, { - background: (store) => store.instanceIdentity.background, + instanceBackgroundUrl: (store) => store.instanceIdentity.background, showFeaturesPanel: (store) => store.instanceIdentity.showFeaturesPanel, instanceSpecificPanelPresent: (store) => store.instanceIdentity.showInstanceSpecificPanel &&