aboutsummaryrefslogtreecommitdiffstats
path: root/src/js
diff options
context:
space:
mode:
Diffstat (limited to 'src/js')
-rw-r--r--src/js/controls.js1
-rw-r--r--src/js/html5.js4
-rw-r--r--src/js/listeners.js2
-rw-r--r--src/js/plugins/preview-thumbnails.js4
4 files changed, 8 insertions, 3 deletions
diff --git a/src/js/controls.js b/src/js/controls.js
index 15c82716..bfe1b61f 100644
--- a/src/js/controls.js
+++ b/src/js/controls.js
@@ -1580,6 +1580,7 @@ const controls = {
element: 'a',
href: this.download,
target: '_blank',
+ download: '',
});
const { download } = this.config.urls;
diff --git a/src/js/html5.js b/src/js/html5.js
index 1173bcbe..0f76f453 100644
--- a/src/js/html5.js
+++ b/src/js/html5.js
@@ -65,6 +65,10 @@ const html5 = {
return source && Number(source.getAttribute('size'));
},
set(input) {
+ if (player.quality === input) {
+ return;
+ }
+
// If we're using an an external handler...
if (player.config.quality.forced && is.function(player.config.quality.onChange)) {
player.config.quality.onChange(input);
diff --git a/src/js/listeners.js b/src/js/listeners.js
index f68245e4..5b888a90 100644
--- a/src/js/listeners.js
+++ b/src/js/listeners.js
@@ -725,7 +725,7 @@ class Listeners {
});
// Hide thumbnail preview - on mouse click, mouse leave, and video play/seek. All four are required, e.g., for buffering
- this.bind(elements.progress, 'mouseleave click', () => {
+ this.bind(elements.progress, 'mouseleave touchend click', () => {
const { previewThumbnails } = player;
if (previewThumbnails && previewThumbnails.loaded) {
diff --git a/src/js/plugins/preview-thumbnails.js b/src/js/plugins/preview-thumbnails.js
index 44e6ace7..6cd09ef2 100644
--- a/src/js/plugins/preview-thumbnails.js
+++ b/src/js/plugins/preview-thumbnails.js
@@ -239,8 +239,8 @@ class PreviewThumbnails {
}
startScrubbing(event) {
- // Only act on left mouse button (0), or touch device (event.button is false)
- if (event.button === false || event.button === 0) {
+ // Only act on left mouse button (0), or touch device (event.button does not exist or is false)
+ if (is.nullOrUndefined(event.button) || event.button === false || event.button === 0) {
this.mouseDown = true;
// Wait until media has a duration