Fix mobile touch events for settings panel close
This commit is contained in:
@ -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
|
||||
|
||||
Reference in New Issue
Block a user