Update renderer.js

This commit is contained in:
Anirudh Sevugan 2025-06-03 19:17:48 -05:00 committed by GitHub
parent e516ca2606
commit 8aeaef9724
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -1,4 +1,8 @@
let mediaElement = document.getElementById("mediaPlayer");
let midiPlayerElement = document.getElementById("midiPlayer");
let midiVisualizerElement = document.getElementById("myVisualizer");
mediaElement.style.display = 'flex';
function loadMedia(fileURL) {
@ -34,6 +38,14 @@ function isSafeURL(fileURL) {
}
}
function isMidi(fileURL) {
try {
const url = new URL(fileURL);
return (url.toLowerCase().endsWith('.mid') || url.toLowerCase().endsWith('.midi'))
} catch (error) {
return false;
}
}
// ✅ Listen for "play-media" event from main process securely
window.electron.receive("play-media", (fileURL) => {
@ -43,4 +55,19 @@ window.electron.receive("play-media", (fileURL) => {
} else {
console.warn("Blocked unsafe media URL:", fileURL);
}
if (isMidi(fileURL)) {
midiPlayerElement.src = fileURL;
midiPlayerElement.style.display = 'flex';
midiPlayerVisualizer.style.display = 'flex';
mediaElement.style.display = 'none';
mediaElement.pause();
if (autoplayCheckbox && autoplayCheckbox.checked) {
midiPlayerElement.play().catch(error => console.warn("Playback issue:", error));
}
} else {
midiPlayerElement.style.display = 'none';
midiPlayerVisualizer.style.display = 'none';
mediaElement.style.display = 'flex';
}
});