From 25d9b7b43d1e6457d992086a127e9de1346a36d8 Mon Sep 17 00:00:00 2001 From: Vanessa Date: Fri, 6 Jan 2023 11:37:48 +0800 Subject: [PATCH] :art: fix https://github.com/siyuan-note/siyuan/issues/7000 --- app/src/asset/renderAssets.ts | 7 +++++-- app/src/layout/Wnd.ts | 7 +++++++ 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/app/src/asset/renderAssets.ts b/app/src/asset/renderAssets.ts index b1183045c..7b88edcba 100644 --- a/app/src/asset/renderAssets.ts +++ b/app/src/asset/renderAssets.ts @@ -35,8 +35,11 @@ export const pdfResize = () => { const pdfViewerElement = item.element.querySelector("#viewerContainer"); if (pdfViewerElement) { // https://github.com/siyuan-note/siyuan/issues/6890 - pdfViewerElement.scrollTo(0, parseInt(pdfViewerElement.getAttribute("data-scrolltop"))); - pdfViewerElement.removeAttribute("data-scrolltop"); + const scrollTop = pdfViewerElement.getAttribute("data-scrolltop"); + if (scrollTop) { + pdfViewerElement.scrollTo(0, parseInt(scrollTop)); + pdfViewerElement.removeAttribute("data-scrolltop"); + } } const currentScaleValue = pdfViewer.currentScaleValue; if ( diff --git a/app/src/layout/Wnd.ts b/app/src/layout/Wnd.ts index d4528f9db..55e6dde8d 100644 --- a/app/src/layout/Wnd.ts +++ b/app/src/layout/Wnd.ts @@ -222,6 +222,13 @@ export class Wnd { } cloneTabElement.before(oldTab.headElement); cloneTabElement.remove(); + if (oldTab.model instanceof Asset) { + // https://github.com/siyuan-note/siyuan/issues/6890 + const pdfViewerElement = oldTab.model.element.querySelector("#viewerContainer"); + if (pdfViewerElement) { + pdfViewerElement.setAttribute("data-scrolltop", pdfViewerElement.scrollTop.toString()); + } + } // 对象顺序 const newWnd = getInstanceById(it.parentElement.parentElement.getAttribute("data-id")) as Wnd; newWnd.moveTab(oldTab, nextTabHeaderElement ? nextTabHeaderElement.getAttribute("data-id") : undefined);