Skip to content

Commit

Permalink
fix #115
Browse files Browse the repository at this point in the history
  • Loading branch information
pmp-p committed Sep 25, 2023
1 parent 5862345 commit 9929091
Showing 1 changed file with 26 additions and 3 deletions.
29 changes: 26 additions & 3 deletions static/pythons.js
Original file line number Diff line number Diff line change
Expand Up @@ -1022,6 +1022,11 @@ function focus_handler(ev) {
if (ev.type == "mouseenter") {
canvas.focus()
console.log("canvas focus set")
if (MM.focus_lost && MM.current_trackid) {
console.warn("resuming music queue")
MM[MM.current_trackid].media.play()
}

canvas.removeEventListener("mouseenter", MM.focus_handler)
return
}
Expand Down Expand Up @@ -1054,9 +1059,20 @@ function feat_lifecycle() {

if (!vm.config.can_close) {
window.onbeforeunload = function() {
var message = "Are you sure you want to navigate away from this page ?";
if (confirm(message)) return message;
else return false;
console.warn("window.onbeforeunload")
if (MM.current_trackid) {
console.warn("pausing music queue")
MM.focus_lost = 1
MM[MM.current_trackid].media.pause()
} else {
console.warn("not track playing")
}
const message = "Are you sure you want to navigate away from this page ?"
if (confirm(message)) {
return message
} else {
return false
}
}
}
}
Expand Down Expand Up @@ -1123,8 +1139,10 @@ function download(diskfile, filename) {

window.MM = {
tracks : 0,
trackid_current : 0,
UME : true,
download : download,
focus_lost : 0,
focus_handler : focus_handler,
camera : {}
}
Expand Down Expand Up @@ -1409,6 +1427,7 @@ MM.load = function load(trackid, loops) {


if (track.type === "audio") {
MM.current_trackid = trackid
MM_autoevents( track )
return trackid
}
Expand All @@ -1427,6 +1446,7 @@ MM.load = function load(trackid, loops) {
MM.play = function play(trackid, loops, start, fade_ms) {
console.log("MM.play",trackid, loops, MM[trackid] )
const track = MM[trackid]
MM.current_trackid = trackid
track.loops = loops
if (track.ready)
track.media.play()
Expand All @@ -1447,16 +1467,19 @@ MM.stop = function stop(trackid) {
console.log("MM.stop", trackid, MM[trackid] )
MM[trackid].media.currentTime = 0
MM[trackid].media.pause()
MM.current_trackid = 0
}


MM.pause = function pause(trackid) {
console.log("MM.pause", trackid, MM[trackid] )
MM[trackid].media.pause()
MM.current_trackid = 0
}

MM.unpause = function unpause(trackid) {
console.log("MM.unpause", trackid, MM[trackid] )
MM.current_trackid = trackid
MM[trackid].media.play()
}

Expand Down

0 comments on commit 9929091

Please sign in to comment.