aboutsummaryrefslogtreecommitdiffstats
path: root/src/js/listeners.js
diff options
context:
space:
mode:
Diffstat (limited to 'src/js/listeners.js')
-rw-r--r--src/js/listeners.js11
1 files changed, 9 insertions, 2 deletions
diff --git a/src/js/listeners.js b/src/js/listeners.js
index 69b32814..46bce967 100644
--- a/src/js/listeners.js
+++ b/src/js/listeners.js
@@ -232,6 +232,13 @@ const listeners = {
// Display duration
utils.on(this.media, 'durationchange loadedmetadata', event => ui.durationUpdate.call(this, event));
+ // Check for audio tracks on load
+ // We can't use `loadedmetadata` as it doesn't seem to have audio tracks at that point
+ utils.on(this.media, 'loadeddata', () => {
+ utils.toggleHidden(this.elements.volume, !this.hasAudio);
+ utils.toggleHidden(this.elements.buttons.mute, !this.hasAudio);
+ });
+
// Handle the media finishing
utils.on(this.media, 'ended', () => {
// Show poster on end
@@ -251,10 +258,10 @@ const listeners = {
utils.on(this.media, 'volumechange', event => ui.updateVolume.call(this, event));
// Handle native play/pause
- utils.on(this.media, 'play pause ended', event => ui.checkPlaying.call(this, event));
+ utils.on(this.media, 'playing play pause ended', event => ui.checkPlaying.call(this, event));
// Loading
- utils.on(this.media, 'waiting canplay seeked', event => ui.checkLoading.call(this, event));
+ utils.on(this.media, 'stalled waiting canplay seeked playing', event => ui.checkLoading.call(this, event));
// Click video
if (this.supported.ui && this.config.clickToPlay && this.type !== 'audio') {