Skip to content

Commit b1a52ee

Browse files
committed
fix: missing ripple effect in language menu in certain condition
1 parent 3b355ac commit b1a52ee

1 file changed

Lines changed: 16 additions & 10 deletions

File tree

module/webui/scripts/language.js

Lines changed: 16 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
import { applyRippleEffect } from './main.js';
2+
13
const languageButton = document.querySelector('.language-button');
24
const languageMenu = document.querySelector('.language-menu');
35
const languageOptions = document.querySelectorAll('.language-option');
@@ -49,6 +51,7 @@ export async function loadTranslations() {
4951
const response = await fetch(`locales/${lang}.json`);
5052
translations = await response.json();
5153
applyTranslations();
54+
applyRippleEffect();
5255
}
5356

5457
/**
@@ -100,17 +103,20 @@ export function setupLanguageMenu() {
100103
}
101104
});
102105
const closeLanguageMenu = () => {
103-
languageMenu.classList.remove("show");
104-
languageOverlay.style.display = 'none';
105-
}
106-
languageMenu.addEventListener("click", (e) => {
107-
if (e.target.classList.contains("language-option")) {
108-
const lang = e.target.getAttribute("data-lang");
109-
localStorage.setItem('trickyAddonLanguage', lang);
110-
loadTranslations(lang);
111-
closeLanguageMenu();
106+
setTimeout(() => {
107+
languageMenu.classList.remove("show");
108+
languageOverlay.style.display = 'none';
109+
}, 80)
112110
}
113-
});
111+
languageMenu.addEventListener("click", async (e) => {
112+
if (e.target.classList.contains("language-option")) {
113+
const lang = e.target.getAttribute("data-lang");
114+
localStorage.setItem('trickyAddonLanguage', lang);
115+
closeLanguageMenu();
116+
await new Promise(resolve => setTimeout(resolve, 200));
117+
loadTranslations(lang);
118+
}
119+
});
114120
}
115121

116122
/**

0 commit comments

Comments
 (0)