diff --git a/src/components/ChatViewer.tsx b/src/components/ChatViewer.tsx index f4cfe4c..29f6cf5 100644 --- a/src/components/ChatViewer.tsx +++ b/src/components/ChatViewer.tsx @@ -306,10 +306,15 @@ const MessageItem = memo(function MessageItem({ // Only show reply preview if: // 1. The event exists in our store // 2. The event is a chat kind (includes messages, nutzaps, live chat, and zap receipts) + // 3. NOT replying to root in NIP-10 thread (root is already visible at top) + const isReplyingToThreadRoot = + conversation.protocol === "nip-10" && + zapReplyTo === conversation.metadata?.rootEventId; const shouldShowReplyPreview = zapReplyTo && replyEvent && - (CHAT_KINDS as readonly number[]).includes(replyEvent.kind); + (CHAT_KINDS as readonly number[]).includes(replyEvent.kind) && + !isReplyingToThreadRoot; return (