diff options
author | Sam Potts <sam@potts.es> | 2018-03-22 01:02:38 +1100 |
---|---|---|
committer | Sam Potts <sam@potts.es> | 2018-03-22 01:02:38 +1100 |
commit | c251c94131adec3a3c30ecedfb0c8661a287dd11 (patch) | |
tree | b39aedcf7be3de91523f12683e7479c04046e99a /src/js | |
parent | 17041efc717122cbfb873ced48784b722b1a16db (diff) | |
download | plyr-c251c94131adec3a3c30ecedfb0c8661a287dd11.tar.lz plyr-c251c94131adec3a3c30ecedfb0c8661a287dd11.tar.xz plyr-c251c94131adec3a3c30ecedfb0c8661a287dd11.zip |
Fix for .stop() method (fixes #819)
Diffstat (limited to 'src/js')
-rw-r--r-- | src/js/listeners.js | 2 | ||||
-rw-r--r-- | src/js/plugins/vimeo.js | 6 | ||||
-rw-r--r-- | src/js/plugins/youtube.js | 12 | ||||
-rw-r--r-- | src/js/plyr.js | 7 |
4 files changed, 20 insertions, 7 deletions
diff --git a/src/js/listeners.js b/src/js/listeners.js index 10011d14..a543bfcd 100644 --- a/src/js/listeners.js +++ b/src/js/listeners.js @@ -267,7 +267,7 @@ class Listeners { utils.on(this.player.media, 'volumechange', event => ui.updateVolume.call(this.player, event)); // Handle native play/pause - utils.on(this.player.media, 'playing play pause ended', event => ui.checkPlaying.call(this.player, event)); + utils.on(this.player.media, 'playing play pause ended emptied', event => ui.checkPlaying.call(this.player, event)); // Loading utils.on(this.player.media, 'waiting canplay seeked playing', event => ui.checkLoading.call(this.player, event)); diff --git a/src/js/plugins/vimeo.js b/src/js/plugins/vimeo.js index fcc4247c..95cd818f 100644 --- a/src/js/plugins/vimeo.js +++ b/src/js/plugins/vimeo.js @@ -101,10 +101,8 @@ const vimeo = { }; player.media.stop = () => { - player.embed.stop().then(() => { - player.media.paused = true; - player.currentTime = 0; - }); + player.pause(); + player.currentTime = 0; }; // Seeking diff --git a/src/js/plugins/youtube.js b/src/js/plugins/youtube.js index 0ded378a..6359051e 100644 --- a/src/js/plugins/youtube.js +++ b/src/js/plugins/youtube.js @@ -339,6 +339,8 @@ const youtube = { // Reset timer clearInterval(player.timers.playing); + console.warn(event.data); + // Handle events // -1 Unstarted // 0 Ended @@ -347,6 +349,16 @@ const youtube = { // 3 Buffering // 5 Video cued switch (event.data) { + case -1: + // Update scrubber + utils.dispatchEvent.call(player, player.media, 'timeupdate'); + + // Get loaded % from YouTube + player.media.buffered = instance.getVideoLoadedFraction(); + utils.dispatchEvent.call(player, player.media, 'progress'); + + break; + case 0: player.media.paused = true; diff --git a/src/js/plyr.js b/src/js/plyr.js index 3de42f9c..03396c68 100644 --- a/src/js/plyr.js +++ b/src/js/plyr.js @@ -379,8 +379,11 @@ class Plyr { * Stop playback */ stop() { - this.restart(); - this.pause(); + if (this.isHTML5) { + this.media.load(); + } else { + this.media.stop(); + } } /** |