From 70a6029786da5b0dd9b3f7246137e078b5d2ac0d Mon Sep 17 00:00:00 2001 From: Stefan Ceriu Date: Thu, 19 Jun 2025 13:42:08 +0300 Subject: [PATCH] Fix thread summaries being shown when the thread feature flag was disabled. --- .../View/Style/TimelineItemBubbledStylerView.swift | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/ElementX/Sources/Screens/Timeline/View/Style/TimelineItemBubbledStylerView.swift b/ElementX/Sources/Screens/Timeline/View/Style/TimelineItemBubbledStylerView.swift index 5375152b6..cbe950c84 100644 --- a/ElementX/Sources/Screens/Timeline/View/Style/TimelineItemBubbledStylerView.swift +++ b/ElementX/Sources/Screens/Timeline/View/Style/TimelineItemBubbledStylerView.swift @@ -120,7 +120,9 @@ struct TimelineItemBubbledStylerView: View { .onTapGesture { } } - if !context.viewState.timelineKind.isThread, let threadSummary = timelineItem.properties.threadSummary { + if context.viewState.areThreadsEnabled, + !context.viewState.timelineKind.isThread, + let threadSummary = timelineItem.properties.threadSummary { TimelineThreadSummaryView(threadSummary: threadSummary) { context.send(viewAction: .displayThread(itemID: timelineItem.id)) } @@ -319,8 +321,14 @@ private extension View { // MARK: - Previews struct TimelineItemBubbledStylerView_Previews: PreviewProvider, TestablePreview { - static let viewModel = TimelineViewModel.mock + static let viewModel: TimelineViewModel = { + ServiceLocator.shared.settings.threadsEnabled = true + return TimelineViewModel.mock + }() + static let viewModelWithPins: TimelineViewModel = { + ServiceLocator.shared.settings.threadsEnabled = true + let roomProxy = JoinedRoomProxyMock(.init(name: "Preview Room", pinnedEventIDs: ["pinned"])) return TimelineViewModel(roomProxy: roomProxy, focussedEventID: nil,