diff --git a/src/ui.js b/src/ui.js index 0c719c2..9210c97 100644 --- a/src/ui.js +++ b/src/ui.js @@ -153,13 +153,21 @@ export function showCtxMenu(e, song, list, idx) { } export function hideCtxMenu() { const m = document.getElementById('ctx-menu'); + if (!m) return; m.style.display='none'; m.innerHTML=''; } document.addEventListener('click', e => { - if(!document.getElementById('ctx-menu').contains(e.target)) hideCtxMenu(); + const m = document.getElementById('ctx-menu'); + if (m && !m.contains(e.target)) hideCtxMenu(); }); -document.addEventListener('scroll', () => hideCtxMenu(), { passive: true, capture: true }); -document.addEventListener('touchmove', () => hideCtxMenu(), { passive: true, capture: true }); +document.addEventListener('scroll', () => { + const m = document.getElementById('ctx-menu'); + if (m && m.style.display !== 'none') hideCtxMenu(); +}, { passive: true, capture: true }); +document.addEventListener('touchmove', () => { + const m = document.getElementById('ctx-menu'); + if (m && m.style.display !== 'none') hideCtxMenu(); +}, { passive: true, capture: true }); document.addEventListener('keydown', e => { if(e.key==='Escape') hideCtxMenu(); }); // ─── PLAYLIST MODAL (Add to / Create) ───