From c4556ab237515cea8ec6f482351c58da730ad495 Mon Sep 17 00:00:00 2001 From: Tai Nguyen <87302343+JoeJoeflyn@users.noreply.github.com> Date: Sat, 15 Aug 2026 19:06:22 +0700 Subject: [PATCH] fix(web): stop wrapping partial code block selections in markdown fences (#5069) --- apps/web/src/markdown-clipboard.ts | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/apps/web/src/markdown-clipboard.ts b/apps/web/src/markdown-clipboard.ts index 86965eebfa96e1b4738d365365b9feb03c1f12ca..f56b3a4920e4d48c5b52987f2b9f7f366848b33c 100644 --- a/apps/web/src/markdown-clipboard.ts +++ b/apps/web/src/markdown-clipboard.ts @@ -301,6 +301,17 @@ export function chatMarkdownClipboardPayload( if (range.collapsed) continue; const container = document.createElement("div"); container.appendChild(range.cloneContents()); + const ancestor = range.commonAncestorContainer; + const ancestorElement = + ancestor.nodeType === Node.ELEMENT_NODE ? (ancestor as Element) : ancestor.parentElement; + if (ancestorElement?.closest("pre")) { + const text = range.toString(); + if (text) { + texts.push(text); + htmls.push(sanitizedHtmlFrom(container)); + } + continue; + } const text = serializeRenderedMarkdownFragment(container); if (!text) continue; texts.push(text); -- 2.54.0