From d15b1be3b9468e4dbaedcd10dc30888970749929 Mon Sep 17 00:00:00 2001 From: 3252a8 <3252a8@proton.me> Date: Thu, 30 Apr 2026 14:05:01 +0300 Subject: [PATCH] fix: click on another button when switching lang --- bot/app/web/frontend/src/App.svelte | 37 ++++++++++++++++++++++++++++- bot/app/web/frontend/src/styles.css | 15 +++++++++++- 2 files changed, 50 insertions(+), 2 deletions(-) diff --git a/bot/app/web/frontend/src/App.svelte b/bot/app/web/frontend/src/App.svelte index 8f786a0..67b2cf9 100644 --- a/bot/app/web/frontend/src/App.svelte +++ b/bot/app/web/frontend/src/App.svelte @@ -244,6 +244,9 @@ let authResendCooldown = 0; let authResendTimer = null; let languageBusy = false; + let languageMenuOpen = false; + let languageClickGuard = false; + let languageClickGuardTimer = null; let email = ""; let pendingEmail = ""; let emailCode = ""; @@ -381,6 +384,7 @@ window.removeEventListener("pointerdown", onAnyPointerDown); clearCooldownTimer("auth"); clearCooldownTimer("link_email"); + clearLanguageClickGuard(); syncBodyScrollLock(false); }; }); @@ -436,6 +440,26 @@ } } + function clearLanguageClickGuard() { + if (languageClickGuardTimer) { + window.clearTimeout(languageClickGuardTimer); + languageClickGuardTimer = null; + } + } + + function setLanguageMenuOpen(open) { + languageMenuOpen = Boolean(open); + clearLanguageClickGuard(); + if (languageMenuOpen) { + languageClickGuard = true; + return; + } + languageClickGuardTimer = window.setTimeout(() => { + languageClickGuard = false; + languageClickGuardTimer = null; + }, 260); + } + function escapeHtml(value) { return String(value) .replaceAll("&", "&") @@ -2108,14 +2132,25 @@ {/if}
-