From 761a32c8df828326d52b41396b3ea893d0ce02b6 Mon Sep 17 00:00:00 2001 From: Vanessa Date: Mon, 26 May 2025 21:34:22 +0800 Subject: [PATCH] :art: https://github.com/siyuan-note/siyuan/issues/14878 --- app/src/layout/dock/index.ts | 7 +++++-- app/src/protyle/util/resize.ts | 11 +++++++++++ 2 files changed, 16 insertions(+), 2 deletions(-) diff --git a/app/src/layout/dock/index.ts b/app/src/layout/dock/index.ts index 3ea5f2043..64bc6b6be 100644 --- a/app/src/layout/dock/index.ts +++ b/app/src/layout/dock/index.ts @@ -19,7 +19,7 @@ import {hasClosestByClassName} from "../../protyle/util/hasClosest"; import {App} from "../../index"; import {Plugin} from "../../plugin"; import {Custom} from "./Custom"; -import {recordBeforeResizeTop} from "../../protyle/util/resize"; +import {clearBeforeResizeTop, recordBeforeResizeTop} from "../../protyle/util/resize"; import {Constants} from "../../constants"; const TYPES = ["file", "outline", "inbox", "bookmark", "tag", "graph", "globalGraph", "backlink"]; @@ -497,7 +497,9 @@ export class Dock { if (!type) { return; } - recordBeforeResizeTop(); + if (this.pin) { + recordBeforeResizeTop(); + } const target = this.element.querySelector(`[data-type="${type}"]`) as HTMLElement; if (show && target.classList.contains("dock__item--active")) { target.classList.remove("dock__item--active", "dock__item--activefocus"); @@ -520,6 +522,7 @@ export class Dock { if (document.activeElement) { (document.activeElement as HTMLElement).blur(); } + clearBeforeResizeTop(); this.showDock(); return; } diff --git a/app/src/protyle/util/resize.ts b/app/src/protyle/util/resize.ts index 3ef367ba1..a8f795ff6 100644 --- a/app/src/protyle/util/resize.ts +++ b/app/src/protyle/util/resize.ts @@ -8,6 +8,17 @@ import {getAllModels} from "../../layout/getAll"; /// #endif import {stickyRow} from "../render/av/row"; +export const clearBeforeResizeTop = () => { + /// #if !MOBILE + getAllModels().editor.forEach((item) => { + if (item.editor && item.editor.protyle && + item.element.parentElement && !item.element.classList.contains("fn__none")) { + item.editor.protyle.wysiwyg.element.querySelector("[data-resize-top]")?.removeAttribute("data-resize-top"); + } + }); + /// #endif +} + export const recordBeforeResizeTop = () => { /// #if !MOBILE getAllModels().editor.forEach((item) => {