From 02ed26221e6a87ac1fe534f91e4acbd45ae1e7ad Mon Sep 17 00:00:00 2001 From: David <33458145+davidmcpowell@users.noreply.github.com> Date: Mon, 13 Jan 2025 13:32:10 +0000 Subject: [PATCH] Merge pull request #22756 from overleaf/dp-preload-pdf-presentation Load full pdf document in background when entering presentation mode GitOrigin-RevId: 514ef838b155a7f13f3bc12690aef45fd3f2c3fc --- .../js/features/pdf-preview/hooks/use-presentation-mode.ts | 2 ++ .../frontend/js/features/pdf-preview/util/pdf-js-wrapper.ts | 4 ++++ 2 files changed, 6 insertions(+) diff --git a/services/web/frontend/js/features/pdf-preview/hooks/use-presentation-mode.ts b/services/web/frontend/js/features/pdf-preview/hooks/use-presentation-mode.ts index 3b4a9be364..7c76c6b17d 100644 --- a/services/web/frontend/js/features/pdf-preview/hooks/use-presentation-mode.ts +++ b/services/web/frontend/js/features/pdf-preview/hooks/use-presentation-mode.ts @@ -133,6 +133,8 @@ export default function usePresentationMode( pdfJsWrapper.viewer.scrollMode = 3 // page pdfJsWrapper.viewer.spreadMode = 0 // none + pdfJsWrapper.fetchAllData() + setPresentationMode(true) } }, [pdfJsWrapper, setScale, scale]) diff --git a/services/web/frontend/js/features/pdf-preview/util/pdf-js-wrapper.ts b/services/web/frontend/js/features/pdf-preview/util/pdf-js-wrapper.ts index ca1ff2ea0e..7053342e73 100644 --- a/services/web/frontend/js/features/pdf-preview/util/pdf-js-wrapper.ts +++ b/services/web/frontend/js/features/pdf-preview/util/pdf-js-wrapper.ts @@ -99,6 +99,10 @@ export default class PDFJSWrapper { } } + async fetchAllData() { + await this.viewer.pdfDocument?.getData() + } + // update the current scale value if the container size changes updateOnResize() { if (!this.isVisible()) {