From add3c4075fe87b8fbb49639c3bb5b41dcbd4b129 Mon Sep 17 00:00:00 2001 From: lucaronin Date: Thu, 23 Apr 2026 16:35:27 +0200 Subject: [PATCH] fix: thread vault image path through tab swaps --- src/hooks/useEditorTabSwap.ts | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/hooks/useEditorTabSwap.ts b/src/hooks/useEditorTabSwap.ts index c16f3cca..a99cb0e7 100644 --- a/src/hooks/useEditorTabSwap.ts +++ b/src/hooks/useEditorTabSwap.ts @@ -237,12 +237,14 @@ function applyHtmlStateToEditor( async function resolveEmptyHeadingHtml( editor: ReturnType, content: string, + vaultPath?: string, ): Promise { const remainder = extractBodyRemainderAfterEmptyH1({ content }) if (remainder === null) return null if (!remainder.trim()) return '

' - const parsed = await parseMarkdownBlocks(editor, preProcessWikilinks(remainder)) + const withImages = vaultPath ? resolveImageUrls(remainder, vaultPath) : remainder + const parsed = await parseMarkdownBlocks(editor, preProcessWikilinks(withImages)) const withWikilinks = injectWikilinks(parsed) return `

${editor.blocksToHTMLLossy(withWikilinks as typeof parsed)}` } @@ -752,11 +754,12 @@ function scheduleEmptyHeadingSwap(options: { content, prevActivePathRef, suppressChangeRef, + vaultPath, } = options if (extractBodyRemainderAfterEmptyH1({ content }) === null) return false - void resolveEmptyHeadingHtml(editor, content) + void resolveEmptyHeadingHtml(editor, content, vaultPath) .then((html) => { if (prevActivePathRef.current !== targetPath || !html) return applyHtmlStateToEditor(editor, html, suppressChangeRef) @@ -778,6 +781,7 @@ function scheduleParsedBlockSwap(options: { content: string prevActivePathRef: MutableRefObject suppressChangeRef: MutableRefObject + vaultPath?: string }) { const { editor, @@ -848,6 +852,7 @@ function scheduleTabSwap(options: { content: activeTab.content, prevActivePathRef, suppressChangeRef, + vaultPath, })) { return }