aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/js/config/defaults.js3
-rw-r--r--src/js/controls.js5
-rw-r--r--src/js/fullscreen.js2
-rw-r--r--src/js/listeners.js2
-rw-r--r--src/js/plugins/vimeo.js8
-rw-r--r--src/js/plugins/youtube.js6
-rw-r--r--src/js/plyr.js6
-rw-r--r--src/js/plyr.polyfilled.js2
-rw-r--r--src/js/ui.js1
-rw-r--r--src/js/utils/events.js4
-rw-r--r--src/sass/components/controls.scss2
11 files changed, 26 insertions, 15 deletions
diff --git a/src/js/config/defaults.js b/src/js/config/defaults.js
index cdac3136..197554a2 100644
--- a/src/js/config/defaults.js
+++ b/src/js/config/defaults.js
@@ -61,7 +61,7 @@ const defaults = {
// Sprite (for icons)
loadSprite: true,
iconPrefix: 'plyr',
- iconUrl: 'https://cdn.plyr.io/3.5.5/plyr.svg',
+ iconUrl: 'https://cdn.plyr.io/3.5.6/plyr.svg',
// Blank video (used to prevent errors on source change)
blankVideo: 'https://cdn.plyr.io/static/blank.mp4',
@@ -164,6 +164,7 @@ const defaults = {
frameTitle: 'Player for {title}',
captions: 'Captions',
settings: 'Settings',
+ pip: 'PIP',
menuBack: 'Go back to previous menu',
speed: 'Speed',
normal: 'Normal',
diff --git a/src/js/controls.js b/src/js/controls.js
index 7afcd2c0..aa5d7fba 100644
--- a/src/js/controls.js
+++ b/src/js/controls.js
@@ -139,10 +139,7 @@ const controls = {
// Create hidden text label
createLabel(key, attr = {}) {
const text = i18n.get(key, this.config);
-
- const attributes = Object.assign({}, attr, {
- class: [attr.class, this.config.classNames.hidden].filter(Boolean).join(' '),
- });
+ const attributes = { ...attr, class: [attr.class, this.config.classNames.hidden].filter(Boolean).join(' '),};
return createElement('span', attributes, text);
},
diff --git a/src/js/fullscreen.js b/src/js/fullscreen.js
index 4de8da88..7ae3ff17 100644
--- a/src/js/fullscreen.js
+++ b/src/js/fullscreen.js
@@ -228,7 +228,7 @@ class Fullscreen {
} else if (!Fullscreen.native || this.forceFallback) {
toggleFallback.call(this, true);
} else if (!this.prefix) {
- this.target.requestFullscreen();
+ this.target.requestFullscreen({ navigationUI: "hide" });
} else if (!is.empty(this.prefix)) {
this.target[`${this.prefix}Request${this.property}`]();
}
diff --git a/src/js/listeners.js b/src/js/listeners.js
index 38d21741..545b78fc 100644
--- a/src/js/listeners.js
+++ b/src/js/listeners.js
@@ -515,7 +515,7 @@ class Listeners {
}
// Only call default handler if not prevented in custom handler
- if (returned && is.function(defaultHandler)) {
+ if (returned !== false && is.function(defaultHandler)) {
defaultHandler.call(player, event);
}
}
diff --git a/src/js/plugins/vimeo.js b/src/js/plugins/vimeo.js
index 91019abf..8df5ad15 100644
--- a/src/js/plugins/vimeo.js
+++ b/src/js/plugins/vimeo.js
@@ -335,6 +335,14 @@ const vimeo = {
}
});
+ player.embed.on('bufferstart', () => {
+ triggerEvent.call(player, player.media, 'waiting');
+ });
+
+ player.embed.on('bufferend', () => {
+ triggerEvent.call(player, player.media, 'playing');
+ });
+
player.embed.on('play', () => {
assurePlaybackState.call(player, true);
triggerEvent.call(player, player.media, 'playing');
diff --git a/src/js/plugins/youtube.js b/src/js/plugins/youtube.js
index 31d22bb4..ba5d8de9 100644
--- a/src/js/plugins/youtube.js
+++ b/src/js/plugins/youtube.js
@@ -416,6 +416,12 @@ const youtube = {
break;
+ case 3:
+ // Trigger waiting event to add loading classes to container as the video buffers.
+ triggerEvent.call(player, player.media, 'waiting');
+
+ break;
+
default:
break;
}
diff --git a/src/js/plyr.js b/src/js/plyr.js
index 980f26bc..ca81004a 100644
--- a/src/js/plyr.js
+++ b/src/js/plyr.js
@@ -1,6 +1,6 @@
// ==========================================================================
// Plyr
-// plyr.js v3.5.5
+// plyr.js v3.5.6
// https://github.com/sampotts/plyr
// License: The MIT License (MIT)
// ==========================================================================
@@ -441,7 +441,7 @@ class Plyr {
* @param {Number} seekTime - how far to rewind in seconds. Defaults to the config.seekTime
*/
rewind(seekTime) {
- this.currentTime = this.currentTime - (is.number(seekTime) ? seekTime : this.config.seekTime);
+ this.currentTime -= is.number(seekTime) ? seekTime : this.config.seekTime;
}
/**
@@ -449,7 +449,7 @@ class Plyr {
* @param {Number} seekTime - how far to fast forward in seconds. Defaults to the config.seekTime
*/
forward(seekTime) {
- this.currentTime = this.currentTime + (is.number(seekTime) ? seekTime : this.config.seekTime);
+ this.currentTime += is.number(seekTime) ? seekTime : this.config.seekTime;
}
/**
diff --git a/src/js/plyr.polyfilled.js b/src/js/plyr.polyfilled.js
index ed0495ff..8a1cb7a1 100644
--- a/src/js/plyr.polyfilled.js
+++ b/src/js/plyr.polyfilled.js
@@ -1,6 +1,6 @@
// ==========================================================================
// Plyr Polyfilled Build
-// plyr.js v3.5.5
+// plyr.js v3.5.6
// https://github.com/sampotts/plyr
// License: The MIT License (MIT)
// ==========================================================================
diff --git a/src/js/ui.js b/src/js/ui.js
index 953ecba2..9febab8b 100644
--- a/src/js/ui.js
+++ b/src/js/ui.js
@@ -214,6 +214,7 @@ const ui = {
// Set state
Array.from(this.elements.buttons.play || []).forEach(target => {
Object.assign(target, { pressed: this.playing });
+ target.setAttribute('aria-label', i18n.get(this.playing ? 'pause' : 'play', this.config));
});
// Only update controls on non timeupdate events
diff --git a/src/js/utils/events.js b/src/js/utils/events.js
index 87c35d26..31571b2d 100644
--- a/src/js/utils/events.js
+++ b/src/js/utils/events.js
@@ -90,9 +90,7 @@ export function triggerEvent(element, type = '', bubbles = false, detail = {}) {
// Create and dispatch the event
const event = new CustomEvent(type, {
bubbles,
- detail: Object.assign({}, detail, {
- plyr: this,
- }),
+ detail: { ...detail, plyr: this,},
});
// Dispatch the event
diff --git a/src/sass/components/controls.scss b/src/sass/components/controls.scss
index f4559bba..8abee204 100644
--- a/src/sass/components/controls.scss
+++ b/src/sass/components/controls.scss
@@ -12,11 +12,11 @@
align-items: center;
display: flex;
justify-content: flex-end;
- min-width: 0; // Fix for Edge issue where content would overflow
text-align: center;
.plyr__progress__container {
flex: 1;
+ min-width: 0; // Fix for Edge issue where content would overflow
}
// Spacing