From e828496584ec30e9b792d3378826100209d1f66d Mon Sep 17 00:00:00 2001 From: Jeffrey Chen <78434827+TCOTC@users.noreply.github.com> Date: Fri, 1 Aug 2025 14:53:52 +0800 Subject: [PATCH] :lipstick: The menu no longer extends beyond the window fix https://github.com/siyuan-note/siyuan/issues/15400 --- app/src/assets/scss/component/_menu.scss | 2 +- app/src/menus/Menu.ts | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/app/src/assets/scss/component/_menu.scss b/app/src/assets/scss/component/_menu.scss index 60de8f4a0..bec14a135 100644 --- a/app/src/assets/scss/component/_menu.scss +++ b/app/src/assets/scss/component/_menu.scss @@ -169,7 +169,7 @@ } &__items { - max-height: 80vh; + max-height: min(80vh, calc(100vh - 20px - var(--b3-menu-position-top, 0px))); // 20px 是 .b3-menu 的上下 padding overflow: auto; padding: 0 8px; } diff --git a/app/src/menus/Menu.ts b/app/src/menus/Menu.ts index 209c91cc7..556644ad1 100644 --- a/app/src/menus/Menu.ts +++ b/app/src/menus/Menu.ts @@ -146,6 +146,7 @@ export class Menu { this.element.style.zIndex = (++window.siyuan.zIndex).toString(); this.element.classList.remove("fn__none"); setPosition(this.element, options.x - (options.isLeft ? this.element.clientWidth : 0), options.y, options.h, options.w); + this.element.style.setProperty("--b3-menu-position-top", this.element.style.top); } public fullscreen(position: "bottom" | "all" = "all") {