diff --git a/apps/client/src/services/content_renderer.ts b/apps/client/src/services/content_renderer.ts index c8d8ffecac..ddf0996358 100644 --- a/apps/client/src/services/content_renderer.ts +++ b/apps/client/src/services/content_renderer.ts @@ -16,6 +16,8 @@ import protectedSessionHolder from "./protected_session_holder.js"; import renderService from "./render.js"; import { applySingleBlockSyntaxHighlight } from "./syntax_highlight.js"; import utils, { getErrorMessage } from "./utils.js"; +import PdfViewer from "../widgets/type_widgets/file/PdfViewer"; +import { h, render } from "preact"; let idCounter = 1; @@ -195,10 +197,13 @@ function renderFile(entity: FNote | FAttachment, type: string, $renderedContent: const $content = $('
'); if (type === "pdf") { - const $pdfPreview = $(''); - $pdfPreview.attr("src", openService.getUrlForDownload(`pdfjs/web/viewer.html?file=../../api/${entityType}/${entityId}/open`)); + const url = `../../api/${entityType}/${entityId}/open`; + const $viewer = $("
"); + render(h(PdfViewer, {pdfUrl: url, editable: false}), $viewer.get(0)!); + + $content.append($viewer); + - $content.append($pdfPreview); } else if (type === "audio") { const $audioPreview = $("") .attr("src", openService.getUrlForDownload(`api/${entityType}/${entityId}/open-partial`)) diff --git a/apps/client/src/widgets/type_widgets/file/PdfViewer.tsx b/apps/client/src/widgets/type_widgets/file/PdfViewer.tsx index 8561b2c468..6415b89dd6 100644 --- a/apps/client/src/widgets/type_widgets/file/PdfViewer.tsx +++ b/apps/client/src/widgets/type_widgets/file/PdfViewer.tsx @@ -36,6 +36,7 @@ export default function PdfViewer({ iframeRef: externalIframeRef, pdfUrl, onLoad