aboutsummaryrefslogtreecommitdiffstats
path: root/src/js/listeners.js
diff options
context:
space:
mode:
authorSam Potts <sam@potts.es>2020-04-24 00:22:17 +1000
committerSam Potts <sam@potts.es>2020-04-24 00:22:17 +1000
commit2458eaa11b5c2805bcf1e5349ab900485bac325f (patch)
tree8c38683d043fdfbe8b1dcb385a446de4df7396a1 /src/js/listeners.js
parenta97008aeebb19678e5183e7c934e60729857e11b (diff)
parentdbe618c644a525b196466b7254274cc9bde76275 (diff)
downloadplyr-2458eaa11b5c2805bcf1e5349ab900485bac325f.tar.lz
plyr-2458eaa11b5c2805bcf1e5349ab900485bac325f.tar.xz
plyr-2458eaa11b5c2805bcf1e5349ab900485bac325f.zip
Merge branch 'develop' into css-variables
# Conflicts: # src/js/captions.js # src/js/config/defaults.js # src/js/fullscreen.js # src/js/listeners.js # src/js/plyr.js
Diffstat (limited to 'src/js/listeners.js')
-rw-r--r--src/js/listeners.js14
1 files changed, 12 insertions, 2 deletions
diff --git a/src/js/listeners.js b/src/js/listeners.js
index dd2c4834..2cc71537 100644
--- a/src/js/listeners.js
+++ b/src/js/listeners.js
@@ -333,7 +333,6 @@ class Listeners {
const resized = () => {
clearTimeout(timers.resized);
-
timers.resized = setTimeout(setPlayerSize, 50);
};
@@ -357,7 +356,7 @@ class Listeners {
// Set Vimeo gutter
setGutter(ratio, padding, isEnter);
- // If not using the native browser fullscreen API, we need to check for resizes of viewport
+ // If not using native browser fullscreen API, we need to check for resizes of viewport
if (!usingNative) {
if (isEnter) {
on.call(player, window, 'resize', resized);
@@ -817,6 +816,17 @@ class Listeners {
elements.controls.hover = !player.touch && event.type === 'mouseenter';
});
+ // Also update controls.hover state for any non-player children of fullscreen element (as above)
+ if (elements.fullscreen) {
+ Array.from(elements.fullscreen.children)
+ .filter(c => !c.contains(elements.container))
+ .forEach(child => {
+ this.bind(child, 'mouseenter mouseleave', event => {
+ elements.controls.hover = !player.touch && event.type === 'mouseenter';
+ });
+ });
+ }
+
// Update controls.pressed state (used for ui.toggleControls to avoid hiding when interacting)
this.bind(elements.controls, 'mousedown mouseup touchstart touchend touchcancel', event => {
elements.controls.pressed = ['mousedown', 'touchstart'].includes(event.type);