From 949fa1051ffd0d033db340e738142e9ccdd25b05 Mon Sep 17 00:00:00 2001 From: Peter Steinberger Date: Fri, 16 Jan 2026 09:19:20 +0000 Subject: [PATCH] fix: wire markdown variant renderer --- .../ClawdbotChatUI/ChatMarkdownRenderer.swift | 17 +++++++++++------ .../ClawdbotChatUI/ChatMessageViews.swift | 5 ++--- .../Sources/ClawdbotChatUI/ChatView.swift | 2 +- 3 files changed, 14 insertions(+), 10 deletions(-) diff --git a/apps/shared/ClawdbotKit/Sources/ClawdbotChatUI/ChatMarkdownRenderer.swift b/apps/shared/ClawdbotKit/Sources/ClawdbotChatUI/ChatMarkdownRenderer.swift index 3024c4082..53e8cb13e 100644 --- a/apps/shared/ClawdbotKit/Sources/ClawdbotChatUI/ChatMarkdownRenderer.swift +++ b/apps/shared/ClawdbotKit/Sources/ClawdbotChatUI/ChatMarkdownRenderer.swift @@ -43,12 +43,17 @@ private struct ChatMarkdownStyle: ViewModifier { let textColor: Color func body(content: Content) -> some View { - content - .font(self.font) - .foregroundStyle(self.textColor) - .textual.structuredTextStyle(self.variant == .compact ? .default : .gitHub) - .textual.inlineStyle(self.inlineStyle) - .textual.textSelection(.enabled) + Group { + if self.variant == .compact { + content.textual.structuredTextStyle(.default) + } else { + content.textual.structuredTextStyle(.gitHub) + } + } + .font(self.font) + .foregroundStyle(self.textColor) + .textual.inlineStyle(self.inlineStyle) + .textual.textSelection(.enabled) } private var inlineStyle: InlineStyle { diff --git a/apps/shared/ClawdbotKit/Sources/ClawdbotChatUI/ChatMessageViews.swift b/apps/shared/ClawdbotKit/Sources/ClawdbotChatUI/ChatMessageViews.swift index 2b1bacc08..2fa416704 100644 --- a/apps/shared/ClawdbotKit/Sources/ClawdbotChatUI/ChatMessageViews.swift +++ b/apps/shared/ClawdbotKit/Sources/ClawdbotChatUI/ChatMessageViews.swift @@ -487,10 +487,11 @@ extension ChatTypingIndicatorBubble: @MainActor Equatable { @MainActor struct ChatStreamingAssistantBubble: View { let text: String + let markdownVariant: ChatMarkdownVariant var body: some View { VStack(alignment: .leading, spacing: 10) { - ChatAssistantTextBody(text: self.text) + ChatAssistantTextBody(text: self.text, markdownVariant: self.markdownVariant) } .padding(12) .background( @@ -594,8 +595,6 @@ private struct TypingDots: View { } } -@MainActor -@MainActor private struct ChatAssistantTextBody: View { let text: String let markdownVariant: ChatMarkdownVariant diff --git a/apps/shared/ClawdbotKit/Sources/ClawdbotChatUI/ChatView.swift b/apps/shared/ClawdbotKit/Sources/ClawdbotChatUI/ChatView.swift index 925dd1736..d243f6a96 100644 --- a/apps/shared/ClawdbotKit/Sources/ClawdbotChatUI/ChatView.swift +++ b/apps/shared/ClawdbotKit/Sources/ClawdbotChatUI/ChatView.swift @@ -179,7 +179,7 @@ public struct ClawdbotChatView: View { } if let text = self.viewModel.streamingAssistantText, AssistantTextParser.hasVisibleContent(in: text) { - ChatStreamingAssistantBubble(text: text) + ChatStreamingAssistantBubble(text: text, markdownVariant: self.markdownVariant) .frame(maxWidth: .infinity, alignment: .leading) } }