♻️ mobile menu

This commit is contained in:
Vanessa 2022-06-05 15:23:25 +08:00
parent e49f03e5a9
commit 872a6f43f0

View file

@ -149,21 +149,25 @@ ${accountHTML}
<svg class="b3-list-item__graphic"><use xlink:href="#iconQuit"></use></svg><span class="b3-list-item__text">${window.siyuan.languages.safeQuit}</span>
</div>`;
document.getElementById("menuSearch").addEventListener(getEventName(), () => {
menuElement.addEventListener(getEventName(), (event) => {
let target = event.target as HTMLElement;
while (target && !target.isEqualNode(menuElement)) {
if (target.id === "menuSearch") {
popSearch(modelElement, modelMainElement);
});
document.getElementById("menuAppearance").addEventListener(getEventName(), () => {
initAppearance(modelElement, modelMainElement);
});
document.getElementById("menuSafeQuit").addEventListener(getEventName(), () => {
exitSiYuan();
});
document.getElementById("menuAbout").addEventListener(getEventName(), (event) => {
event.stopPropagation();
event.preventDefault();
event.stopPropagation();
break;
} else if (target.id === "menuAppearance") {
initAppearance(modelElement, modelMainElement);
event.preventDefault();
event.stopPropagation();
break;
} else if (target.id === "menuSafeQuit") {
exitSiYuan();
event.preventDefault();
event.stopPropagation();
break;
} else if (target.id === "menuAbout") {
closePanel();
if (!window.siyuan.config.localIPs || window.siyuan.config.localIPs.length === 0 ||
(window.siyuan.config.localIPs.length === 1 && window.siyuan.config.localIPs[0] === "")) {
@ -276,24 +280,32 @@ ${accountHTML}
exitSiYuan();
});
});
});
document.getElementById("menuNewDaily").addEventListener(getEventName(), () => {
event.preventDefault();
event.stopPropagation();
break;
} else if (target.id === "menuNewDaily") {
newDailyNote();
});
document.getElementById("menuNewNotebook").addEventListener(getEventName(), () => {
event.preventDefault();
event.stopPropagation();
break;
} else if (target.id === "menuNewNotebook") {
newNotebook();
});
document.getElementById("menuHelp").addEventListener(getEventName(), () => {
event.preventDefault();
event.stopPropagation();
break;
} else if (target.id === "menuHelp") {
mountHelp();
});
document.getElementById("menuLock").addEventListener(getEventName(), () => {
event.preventDefault();
event.stopPropagation();
break;
} else if (target.id === "menuLock") {
fetchPost("/api/system/logoutAuth", {}, () => {
window.location.href = "/";
});
});
document.getElementById("menuSync").addEventListener(getEventName(), (event) => {
event.stopPropagation();
event.preventDefault();
event.stopPropagation();
break;
} else if (target.id === "menuSync") {
if (!needSubscribe()) {
closePanel();
modelElement.style.top = "0";
@ -303,10 +315,10 @@ ${accountHTML}
repos.element = modelMainElement;
repos.bindEvent();
}
});
document.getElementById("menuSyncNow").addEventListener(getEventName(), (event) => {
event.stopPropagation();
event.preventDefault();
event.stopPropagation();
break;
} else if (target.id === "menuSyncNow") {
if (needSubscribe()) {
return;
}
@ -315,17 +327,17 @@ ${accountHTML}
return;
}
fetchPost("/api/sync/performSync", {});
});
if (!window.siyuan.config.readonly) {
document.getElementById("menuHistory").addEventListener(getEventName(), (event) => {
event.stopPropagation();
event.preventDefault();
event.stopPropagation();
break;
} else if (target.id === "menuHistory" && !window.siyuan.config.readonly) {
openHistory();
});
}
document.getElementById("menuAccount").addEventListener(getEventName(), (event) => {
event.stopPropagation();
event.preventDefault();
event.stopPropagation();
break;
} else if (target.id === "menuAccount") {
event.preventDefault();
event.stopPropagation();
closePanel();
if (document.querySelector("#menuAccount img")) {
showAccountInfo(modelElement, modelMainElement);
@ -447,8 +459,11 @@ ${accountHTML}
});
});
});
break;
}
target = target.parentElement;
}
});
menuElement.style.right = "0";
scrimElement.classList.remove("fn__none");
});