Skip to content

Commit f20078f

Browse files
committed
fix(print): some images not loading
1 parent b2f1b3c commit f20078f

File tree

1 file changed

+14
-1
lines changed

1 file changed

+14
-1
lines changed

apps/client/src/print.tsx

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,20 @@ function SingleNoteRenderer({ note, onReady }: RendererProps) {
5656
await import("@triliumnext/ckeditor5/src/theme/ck-content.css");
5757
}
5858
const { $renderedContent } = await content_renderer.getRenderedContent(note, { noChildrenList: true });
59-
containerRef.current?.replaceChildren(...$renderedContent);
59+
const container = containerRef.current!;
60+
container.replaceChildren(...$renderedContent);
61+
62+
// Wait for all images to load.
63+
const images = Array.from(container.querySelectorAll("img"));
64+
await Promise.all(
65+
images.map(img => {
66+
if (img.complete) return Promise.resolve();
67+
return new Promise<void>(resolve => {
68+
img.addEventListener("load", () => resolve(), { once: true });
69+
img.addEventListener("error", () => resolve(), { once: true });
70+
});
71+
})
72+
);
6073
}
6174

6275
load().then(() => requestAnimationFrame(onReady))

0 commit comments

Comments
 (0)