aboutsummaryrefslogtreecommitdiffstats
path: root/src/js/listeners.js
diff options
context:
space:
mode:
authorSam Potts <sam@potts.es>2019-06-21 00:12:10 +1000
committerGitHub <noreply@github.com>2019-06-21 00:12:10 +1000
commit95092edc93d713b927c637cefc27945f8537d565 (patch)
tree27464f2f98a519f78ff3cc4a2c49ebdd5c6dab2c /src/js/listeners.js
parent1e761e237aceb49b29291946a39eef958d6da966 (diff)
parentc4b3e0672e86f2a2786f315bf8f54250cd1f7f78 (diff)
downloadplyr-95092edc93d713b927c637cefc27945f8537d565.tar.lz
plyr-95092edc93d713b927c637cefc27945f8537d565.tar.xz
plyr-95092edc93d713b927c637cefc27945f8537d565.zip
Merge pull request #1472 from sampotts/develop
v3.5.5
Diffstat (limited to 'src/js/listeners.js')
-rw-r--r--src/js/listeners.js33
1 files changed, 15 insertions, 18 deletions
diff --git a/src/js/listeners.js b/src/js/listeners.js
index ca527f1e..c5076ff3 100644
--- a/src/js/listeners.js
+++ b/src/js/listeners.js
@@ -147,7 +147,7 @@ class Listeners {
player.loop = !player.loop;
break;
- /* case 73:
+ /* case 73:
this.setLoop('start');
break;
@@ -275,12 +275,12 @@ class Listeners {
elements.container,
'mousemove mouseleave touchstart touchmove enterfullscreen exitfullscreen',
event => {
- const { controls } = elements;
+ const { controls: controlsElement } = elements;
// Remove button states for fullscreen
- if (controls && event.type === 'enterfullscreen') {
- controls.pressed = false;
- controls.hover = false;
+ if (controlsElement && event.type === 'enterfullscreen') {
+ controlsElement.pressed = false;
+ controlsElement.hover = false;
}
// Show, then hide after a timeout unless another control event occurs
@@ -301,14 +301,6 @@ class Listeners {
},
);
- // Force edge to repaint on exit fullscreen
- // TODO: Fix weird bug where Edge doesn't re-draw when exiting fullscreen
- /* if (browser.isEdge) {
- on.call(player, elements.container, 'exitfullscreen', () => {
- setTimeout(() => repaint(elements.container), 100);
- });
- } */
-
// Set a gutter for Vimeo
const setGutter = (ratio, padding, toggle) => {
if (!player.isVimeo) {
@@ -337,15 +329,20 @@ class Listeners {
};
const resized = () => {
- window.clearTimeout(timers.resized);
- timers.resized = window.setTimeout(setPlayerSize, 50);
+ clearTimeout(timers.resized);
+ timers.resized = setTimeout(setPlayerSize, 50);
};
on.call(player, elements.container, 'enterfullscreen exitfullscreen', event => {
const { target, usingNative } = player.fullscreen;
- // Ignore for iOS native
- if (!player.isEmbed || target !== elements.container) {
+ // Ignore events not from target
+ if (target !== elements.container) {
+ return;
+ }
+
+ // If it's not an embed and no ratio specified
+ if (!player.isEmbed && is.empty(player.config.ratio)) {
return;
}
@@ -801,7 +798,7 @@ class Listeners {
// Show controls when they receive focus (e.g., when using keyboard tab key)
this.bind(elements.controls, 'focusin', () => {
- const { config, elements, timers } = player;
+ const { config, timers } = player;
// Skip transition to prevent focus from scrolling the parent element
toggleClass(elements.controls, config.classNames.noTransition, true);