diff --git a/app/src/protyle/render/av/action.ts b/app/src/protyle/render/av/action.ts index 7aa2c536a..9fdbb45b8 100644 --- a/app/src/protyle/render/av/action.ts +++ b/app/src/protyle/render/av/action.ts @@ -229,6 +229,7 @@ export const avClick = (protyle: IProtyle, event: MouseEvent & { target: HTMLEle event.stopPropagation(); return true; } else if (type === "av-group-fold") { + target.setAttribute("data-processed", "true"); const isOpen = target.firstElementChild.classList.contains("av__group-arrow--open"); if (isOpen) { target.firstElementChild.classList.remove("av__group-arrow--open"); diff --git a/app/src/protyle/render/av/render.ts b/app/src/protyle/render/av/render.ts index 5702fdd4f..2f1d522f4 100644 --- a/app/src/protyle/render/av/render.ts +++ b/app/src/protyle/render/av/render.ts @@ -784,6 +784,10 @@ export const refreshAV = (protyle: IProtyle, operation: IOperation) => { getAVElements(protyle, operation.avID).forEach((item) => { const foldElement = item.querySelector(`[data-type="av-group-fold"][data-id="${operation.id}"]`); if (foldElement) { + if (foldElement.getAttribute("data-processed") === "true") { + foldElement.removeAttribute("data-processed"); + return; + } if (operation.data) { foldElement.firstElementChild.classList.remove("av__group-arrow--open"); foldElement.parentElement.nextElementSibling.classList.add("fn__none");