summaryrefslogtreecommitdiff
path: root/ext/fg
diff options
context:
space:
mode:
Diffstat (limited to 'ext/fg')
-rw-r--r--ext/fg/js/frame.js23
-rw-r--r--ext/fg/mp3/button.mp3bin0 -> 17735 bytes
2 files changed, 19 insertions, 4 deletions
diff --git a/ext/fg/js/frame.js b/ext/fg/js/frame.js
index 83d6d7ef..ca0636f9 100644
--- a/ext/fg/js/frame.js
+++ b/ext/fg/js/frame.js
@@ -170,12 +170,27 @@ class Frame {
}
for (const key in this.audioCache) {
- this.audioCache[key].pause();
+ const audio = this.audioCache[key];
+ if (audio !== null) {
+ audio.pause();
+ }
}
- const audio = this.audioCache[url] || new Audio(url);
- audio.currentTime = 0;
- audio.play();
+ let audio = this.audioCache[url];
+ if (audio) {
+ audio.currentTime = 0;
+ audio.play();
+ } else {
+ audio = new Audio(url);
+ audio.onloadeddata = () => {
+ if (audio.duration === 5.694694) {
+ audio = new Audio('mp3/button.mp3');
+ }
+
+ this.audioCache[url] = audio;
+ audio.play();
+ };
+ }
}
handleError(error) {
diff --git a/ext/fg/mp3/button.mp3 b/ext/fg/mp3/button.mp3
new file mode 100644
index 00000000..7a9728d1
--- /dev/null
+++ b/ext/fg/mp3/button.mp3
Binary files differ