aboutsummaryrefslogtreecommitdiffstats
path: root/src/js
diff options
context:
space:
mode:
authorSam Potts <sam@potts.es>2018-03-22 01:02:38 +1100
committerSam Potts <sam@potts.es>2018-03-22 01:02:38 +1100
commitc251c94131adec3a3c30ecedfb0c8661a287dd11 (patch)
treeb39aedcf7be3de91523f12683e7479c04046e99a /src/js
parent17041efc717122cbfb873ced48784b722b1a16db (diff)
downloadplyr-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.js2
-rw-r--r--src/js/plugins/vimeo.js6
-rw-r--r--src/js/plugins/youtube.js12
-rw-r--r--src/js/plyr.js7
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();
+ }
}
/**