From 6b79e543a4dc351e95d62a2d12b2238e68096034 Mon Sep 17 00:00:00 2001 From: Vanessa Date: Wed, 6 Aug 2025 10:09:29 +0800 Subject: [PATCH] :art: https://github.com/siyuan-note/siyuan/issues/15429 --- app/src/protyle/render/av/openMenuPanel.ts | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/app/src/protyle/render/av/openMenuPanel.ts b/app/src/protyle/render/av/openMenuPanel.ts index 58b657c7f..bb4579f69 100644 --- a/app/src/protyle/render/av/openMenuPanel.ts +++ b/app/src/protyle/render/av/openMenuPanel.ts @@ -1555,13 +1555,19 @@ export const openMenuPanel = (options: { const isHide = useElement.getAttribute("xlink:href") !== "#iconEye"; useElement.setAttribute("xlink:href", isHide ? "#iconEye" : "#iconEyeoff"); let oldGroupHidden; - data.view.groups.find((item) => { + let showCount = 0; + data.view.groups.forEach((item) => { if (item.id === target.dataset.id) { oldGroupHidden = item.groupHidden; item.groupHidden = isHide ? 2 : 0; - return true; + } + if (item.groupHidden === 0) { + showCount++; } }); + menuElement.querySelector('[data-type="hideGroups"]').innerHTML = `${window.siyuan.languages[showCount <= data.view.groups.length ? "hideAll" : "showAll"]} + +`; transaction(options.protyle, [{ action: "hideAttrViewGroup", avID: data.id, @@ -1580,11 +1586,10 @@ export const openMenuPanel = (options: { break; } else if (type === "hideGroups") { window.siyuan.menus.menu.remove(); - const useElement = target.querySelector("use"); - const isShow = useElement.getAttribute("xlink:href") === "#iconEyeoff"; + const isShow = target.querySelector("use").getAttribute("xlink:href") === "#iconEyeoff"; target.innerHTML = `${window.siyuan.languages[isShow ? "showAll" : "hideAll"]} - - `; + +`; data.view.groups.forEach((item) => { item.groupHidden = isShow ? 2 : 0; target.parentElement.parentElement.querySelector(`.b3-menu__item[data-id="${item.id}"] .b3-menu__action use`)?.setAttribute("xlink:href", `#iconEye${isShow ? "off" : ""}`);