Fix mobile touch events for settings panel close

This commit is contained in:
DiTus
2026-03-21 09:20:33 +01:00
parent 8fc6c4f047
commit 96edde8f81

View File

@ -509,11 +509,17 @@ constructor() {
settingsPopup.classList.toggle('hidden');
});
document.addEventListener('click', (e) => {
if (!settingsPopup.contains(e.target) && e.target !== btnSettings) {
document.addEventListener('click', closeSettingsPopup);
document.addEventListener('touchstart', closeSettingsPopup, { passive: true });
function closeSettingsPopup(e) {
const isInside = settingsPopup.contains(e.target) || e.target === btnSettings;
const isSettingsButton = e.target.closest('#btnSettings');
if (!isInside && !isSettingsButton) {
settingsPopup.classList.add('hidden');
}
});
}
}
// Initialize state from storage