From 38e7992e1a2ee2383b0a71f6073cc089bbd8b949 Mon Sep 17 00:00:00 2001 From: Vanessa Date: Thu, 21 Aug 2025 21:12:16 +0800 Subject: [PATCH] :art: https://github.com/siyuan-note/siyuan/issues/15455 --- app/src/plugin/openTopBarMenu.ts | 23 +++++++++++++---------- 1 file changed, 13 insertions(+), 10 deletions(-) diff --git a/app/src/plugin/openTopBarMenu.ts b/app/src/plugin/openTopBarMenu.ts index c4e54a60b..2916095a7 100644 --- a/app/src/plugin/openTopBarMenu.ts +++ b/app/src/plugin/openTopBarMenu.ts @@ -9,16 +9,16 @@ import {Constants} from "../constants"; export const openTopBarMenu = (app: App, target?: Element) => { const menu = new Menu("topBarPlugin"); /// #if !MOBILE - menu.addItem({ - id: "manage", - icon: "iconSettings", - label: window.siyuan.languages.manage, - ignore: isHuawei() || window.siyuan.config.readonly, - click() { - openSetting(app).element.querySelector('.b3-tab-bar [data-name="bazaar"]').dispatchEvent(new CustomEvent("click")); - } - }); - menu.addSeparator({id: "separator_1"}, isHuawei() || window.siyuan.config.readonly); + menu.addItem({ + id: "manage", + icon: "iconSettings", + label: window.siyuan.languages.manage, + ignore: isHuawei() || window.siyuan.config.readonly, + click() { + openSetting(app).element.querySelector('.b3-tab-bar [data-name="bazaar"]').dispatchEvent(new CustomEvent("click")); + } + }); + menu.addSeparator({id: "separator_1"}, isHuawei() || window.siyuan.config.readonly); /// #endif let hasPlugin = false; app.plugins.forEach((plugin) => { @@ -26,6 +26,9 @@ export const openTopBarMenu = (app: App, target?: Element) => { const hasSetting = plugin.setting || plugin.__proto__.hasOwnProperty("openSetting"); let hasTopBar = false; plugin.topBarIcons.forEach(item => { + if (!document.contains(item)) { + return; + } const hasUnpin = window.siyuan.storage[Constants.LOCAL_PLUGINTOPUNPIN].includes(item.id); const submenu = [{ id: hasUnpin ? "pin" : "unpin",