Merge branch 'develop' of https://github.com/Selz/plyr into develop
This commit is contained in:
commit
7959297a98
@ -1512,6 +1512,10 @@
|
|||||||
attributes = {};
|
attributes = {};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (!('type' in attributes)) {
|
||||||
|
attributes.type = 'button';
|
||||||
|
}
|
||||||
|
|
||||||
if ('class' in attributes) {
|
if ('class' in attributes) {
|
||||||
if (attributes.class.indexOf(player.config.classNames.control) === -1) {
|
if (attributes.class.indexOf(player.config.classNames.control) === -1) {
|
||||||
attributes.class += ' ' + player.config.classNames.control;
|
attributes.class += ' ' + player.config.classNames.control;
|
||||||
@ -1949,7 +1953,9 @@
|
|||||||
player.elements.controls = controls;
|
player.elements.controls = controls;
|
||||||
|
|
||||||
//setLoopMenu();
|
//setLoopMenu();
|
||||||
setSpeedMenu();
|
if (utils.inArray(player.config.controls, 'settings') && utils.inArray(player.config.settings, 'speed')) {
|
||||||
|
setSpeedMenu();
|
||||||
|
}
|
||||||
|
|
||||||
return controls;
|
return controls;
|
||||||
}
|
}
|
||||||
@ -2102,6 +2108,7 @@
|
|||||||
|
|
||||||
// Update the selected setting
|
// Update the selected setting
|
||||||
function updateSetting(setting, list) {
|
function updateSetting(setting, list) {
|
||||||
|
var pane = player.elements.settings.panes[setting];
|
||||||
var value = null;
|
var value = null;
|
||||||
|
|
||||||
switch (setting) {
|
switch (setting) {
|
||||||
@ -2132,11 +2139,11 @@
|
|||||||
|
|
||||||
// Get the list if we need to
|
// Get the list if we need to
|
||||||
if (!utils.is.htmlElement(list)) {
|
if (!utils.is.htmlElement(list)) {
|
||||||
list = player.elements.settings.panes[setting].querySelector('ul');
|
list = pane && pane.querySelector('ul');
|
||||||
}
|
}
|
||||||
|
|
||||||
// Find the radio option
|
// Find the radio option
|
||||||
var target = list.querySelector('input[value="' + value + '"]');
|
var target = list && list.querySelector('input[value="' + value + '"]');
|
||||||
|
|
||||||
if (!utils.is.htmlElement(target)) {
|
if (!utils.is.htmlElement(target)) {
|
||||||
return;
|
return;
|
||||||
@ -2368,7 +2375,9 @@
|
|||||||
player.captions.tracks = null;
|
player.captions.tracks = null;
|
||||||
|
|
||||||
// Clear menu and hide
|
// Clear menu and hide
|
||||||
setCaptionsMenu();
|
if (utils.inArray(player.config.controls, 'settings') && utils.inArray(player.config.settings, 'captions')) {
|
||||||
|
setCaptionsMenu();
|
||||||
|
}
|
||||||
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@ -2449,7 +2458,7 @@
|
|||||||
});
|
});
|
||||||
|
|
||||||
// Check if suported kind
|
// Check if suported kind
|
||||||
var supported = utils.inArray(['captions', 'subtitles'], player.captions.currentTrack.kind);
|
var supported = utils.inArray(['captions', 'subtitles'], player.captions.currentTrack && player.captions.currentTrack.kind);
|
||||||
|
|
||||||
if (utils.is.track(player.captions.currentTrack) && supported) {
|
if (utils.is.track(player.captions.currentTrack) && supported) {
|
||||||
utils.on(player.captions.currentTrack, 'cuechange', setActiveCue);
|
utils.on(player.captions.currentTrack, 'cuechange', setActiveCue);
|
||||||
@ -2464,7 +2473,9 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Set available languages in list
|
// Set available languages in list
|
||||||
setCaptionsMenu();
|
if (utils.inArray(player.config.controls, 'settings') && utils.inArray(player.config.settings, 'captions')) {
|
||||||
|
setCaptionsMenu();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Get current selected caption language
|
// Get current selected caption language
|
||||||
@ -3051,7 +3062,9 @@
|
|||||||
player.media.muted = instance.isMuted();
|
player.media.muted = instance.isMuted();
|
||||||
|
|
||||||
// Get available speeds
|
// Get available speeds
|
||||||
setSpeedMenu(instance.getAvailablePlaybackRates(), instance.getPlaybackRate());
|
if (utils.inArray(player.config.controls, 'settings') && utils.inArray(player.config.settings, 'speed')) {
|
||||||
|
setSpeedMenu(instance.getAvailablePlaybackRates(), instance.getPlaybackRate());
|
||||||
|
}
|
||||||
|
|
||||||
// Set title
|
// Set title
|
||||||
player.config.title = instance.getVideoData().title;
|
player.config.title = instance.getVideoData().title;
|
||||||
@ -3377,10 +3390,10 @@
|
|||||||
function toggleMenu(event) {
|
function toggleMenu(event) {
|
||||||
var form = player.elements.settings.form;
|
var form = player.elements.settings.form;
|
||||||
var button = player.elements.buttons.settings;
|
var button = player.elements.buttons.settings;
|
||||||
var show = utils.is.boolean(event) ? event : form.getAttribute('aria-hidden') === 'true';
|
var show = utils.is.boolean(event) ? event : (form && form.getAttribute('aria-hidden') === 'true');
|
||||||
|
|
||||||
if (utils.is.event(event)) {
|
if (utils.is.event(event)) {
|
||||||
var isMenuItem = form.contains(event.target);
|
var isMenuItem = form && form.contains(event.target);
|
||||||
var isButton = event.target === player.elements.buttons.settings;
|
var isButton = event.target === player.elements.buttons.settings;
|
||||||
|
|
||||||
// If the click was inside the form or if the click
|
// If the click was inside the form or if the click
|
||||||
@ -3397,13 +3410,16 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Set form and button attributes
|
// Set form and button attributes
|
||||||
form.setAttribute('aria-hidden', !show);
|
if (button) {
|
||||||
button.setAttribute('aria-expanded', show);
|
button.setAttribute('aria-expanded', show);
|
||||||
|
}
|
||||||
if (show) {
|
if (form) {
|
||||||
form.removeAttribute('tabindex');
|
form.setAttribute('aria-hidden', !show);
|
||||||
} else {
|
if (show) {
|
||||||
form.setAttribute('tabindex', -1);
|
form.removeAttribute('tabindex');
|
||||||
|
} else {
|
||||||
|
form.setAttribute('tabindex', -1);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -5585,7 +5601,9 @@
|
|||||||
// Trigger event and close menu
|
// Trigger event and close menu
|
||||||
if (toggled) {
|
if (toggled) {
|
||||||
player.core.trigger(player.media, 'controlshidden');
|
player.core.trigger(player.media, 'controlshidden');
|
||||||
player.core.toggleMenu(false);
|
if (utils.inArray(player.config.controls, 'settings') && !utils.is.empty(player.config.settings)) {
|
||||||
|
player.core.toggleMenu(false);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}, delay);
|
}, delay);
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user