fix: toggle calc sample menus on repeated clicks

This commit is contained in:
2026-05-15 21:50:36 +02:00
parent 9cbddfa0c2
commit 432523c23f
+12 -5
View File
@@ -343,13 +343,16 @@ function closeModeMenu() {
}
}
function openModeMenu() {
function toggleModeMenu() {
if (modeMenuEl) {
closeModeMenu();
return;
}
closeConstMenu();
const rect = modeButton.getBoundingClientRect();
modeMenuEl = document.createElement('div');
modeMenuEl.className = 'mode-menu';
modeMenuEl.style.top = `${rect.bottom + 6 + window.scrollY}px`;
modeMenuEl.style.left = `${rect.left + window.scrollX}px`;
modeOptions.forEach((mode) => {
const button = document.createElement('button');
button.type = 'button';
@@ -370,7 +373,7 @@ function openModeMenu() {
modeButton.addEventListener('click', (event) => {
event.stopPropagation();
openModeMenu();
toggleModeMenu();
});
window.addEventListener('resize', () => {
@@ -432,8 +435,12 @@ function closeConstMenu() {
}
}
function openConstMenu() {
function toggleConstMenu() {
if (constMenuEl) {
closeConstMenu();
return;
}
closeModeMenu();
const rect = constButton.getBoundingClientRect();
constMenuEl = document.createElement('div');
constMenuEl.className = 'mode-menu';
@@ -461,7 +468,7 @@ function openConstMenu() {
constButton.addEventListener('click', (event) => {
event.stopPropagation();
openConstMenu();
toggleConstMenu();
});
leftButton.addEventListener('click', () => {});