webmusic.js: check for playable content

This commit is contained in:
Leah 2021-03-08 14:05:17 +01:00
parent bb01d955af
commit 7d750777ec
Signed by untrusted user: ctucx
GPG key ID: 725B65F21DB1C2C4

View file

@ -7,12 +7,14 @@ let playerState = 'idle';
let continuous = true; let continuous = true;
let repeat = false; let repeat = false;
let total = 0; let total = 0;
let onlyDirs = true;
const handleKeyEvent = (event) => { const handleKeyEvent = (event) => {
if (event.ctrlKey === true || event.altKey === true) return; if (event.ctrlKey === true || event.altKey === true) return;
switch (event.key) { switch (event.key) {
case ' ': case ' ':
case 'p': case 'p':
if (onlyDirs !== false) return;
if (playerState == 'idle' && total !== 0) { if (playerState == 'idle' && total !== 0) {
if (document.getElementById(playingItem).classList.contains('dir')) { if (document.getElementById(playingItem).classList.contains('dir')) {
return nextTrack(); return nextTrack();
@ -72,7 +74,6 @@ const handleKeyEvent = (event) => {
case '9': case '9':
audioPlayer.currentTime = audioPlayer.duration / 100 * (event.key * 10); audioPlayer.currentTime = audioPlayer.duration / 100 * (event.key * 10);
break; break;
} }
}; };
@ -116,6 +117,7 @@ const initState = () => {
fileElements.forEach((element) => { fileElements.forEach((element) => {
element.id = id++; element.id = id++;
onlyDirs = false;
element.addEventListener('click', (event) => { element.addEventListener('click', (event) => {
event.preventDefault(); event.preventDefault();