diff --git a/src/components/file_mode/ThumbnailView.vue b/src/components/file_mode/ThumbnailView.vue index 16dc2d9..ed07b7f 100644 --- a/src/components/file_mode/ThumbnailView.vue +++ b/src/components/file_mode/ThumbnailView.vue @@ -153,11 +153,14 @@ const { doc } = useVuePdfEmbed({ source: pdfSource, }); +const initVuePdfEmbed = computed(()=> props.showInlinePDF && isPDF.value) + const pageNums = computed(() => doc.value ? [...Array(doc.value.numPages + 1).keys()].slice(1) : [] ); const resetPageIntersectionObserver = () => { + if(!initVuePdfEmbed.value) return pageIntersectionObserver?.disconnect() pageIntersectionObserver = new IntersectionObserver((entries) => { entries.forEach((entry) => { @@ -177,17 +180,16 @@ const resetPageIntersectionObserver = () => { }; watch(pageNums, (newPageNums) => { + if(!initVuePdfEmbed.value) return pageVisibility.value = { [newPageNums[0]]: true } pageRefs.value = [] nextTick(resetPageIntersectionObserver) }); watch(source, (newSource) => { - if (isPDF.value) { - pdfSource.value = newSource; - } - } -); + if(!initVuePdfEmbed.value) return + pdfSource.value = isPDF.value ? newSource : null; +}); const loadingProgress = computed(() => { if (isEventAttachment(item)) {