aboutsummaryrefslogtreecommitdiffstats
path: root/src/js/plugins/preview-thumbnails.js
diff options
context:
space:
mode:
authorydylla <ydylla@gmail.com>2020-02-08 19:04:26 +0100
committerydylla <ydylla@gmail.com>2020-02-08 19:15:02 +0100
commit97f8093a8df1fd7462512d43716bcd7601fecb18 (patch)
tree2c6d0923e198b3356f1acc4ad7a6c093471405eb /src/js/plugins/preview-thumbnails.js
parent8b9521d5a5d34bf81c57e901286ac325da2c1fc0 (diff)
downloadplyr-97f8093a8df1fd7462512d43716bcd7601fecb18.tar.lz
plyr-97f8093a8df1fd7462512d43716bcd7601fecb18.tar.xz
plyr-97f8093a8df1fd7462512d43716bcd7601fecb18.zip
allows to set only width or height for thumb css size
Also fixes sprites when css thumb size is used
Diffstat (limited to 'src/js/plugins/preview-thumbnails.js')
-rw-r--r--src/js/plugins/preview-thumbnails.js13
1 files changed, 12 insertions, 1 deletions
diff --git a/src/js/plugins/preview-thumbnails.js b/src/js/plugins/preview-thumbnails.js
index 44e6ace7..8256c811 100644
--- a/src/js/plugins/preview-thumbnails.js
+++ b/src/js/plugins/preview-thumbnails.js
@@ -561,6 +561,11 @@ class PreviewThumbnails {
return height;
}
+ // If css is used this needs to return the css height for sprites to work (see setImageSizeAndOffset)
+ if (this.sizeSpecifiedInCSS) {
+ return this.elements.thumb.imageContainer.clientHeight;
+ }
+
return Math.floor(this.player.media.clientWidth / this.thumbAspectRatio / 4);
}
@@ -601,7 +606,7 @@ class PreviewThumbnails {
}
determineContainerAutoSizing() {
- if (this.elements.thumb.imageContainer.clientHeight > 20) {
+ if (this.elements.thumb.imageContainer.clientHeight > 20 || this.elements.thumb.imageContainer.clientWidth > 20) {
// This will prevent auto sizing in this.setThumbContainerSizeAndPos()
this.sizeSpecifiedInCSS = true;
}
@@ -613,6 +618,12 @@ class PreviewThumbnails {
const thumbWidth = Math.floor(this.thumbContainerHeight * this.thumbAspectRatio);
this.elements.thumb.imageContainer.style.height = `${this.thumbContainerHeight}px`;
this.elements.thumb.imageContainer.style.width = `${thumbWidth}px`;
+ } else if (this.elements.thumb.imageContainer.clientHeight > 20 && this.elements.thumb.imageContainer.clientWidth < 20) {
+ const thumbWidth = Math.floor(this.elements.thumb.imageContainer.clientHeight * this.thumbAspectRatio);
+ this.elements.thumb.imageContainer.style.width = `${thumbWidth}px`;
+ } else if (this.elements.thumb.imageContainer.clientHeight < 20 && this.elements.thumb.imageContainer.clientWidth > 20) {
+ const thumbHeight = Math.floor(this.elements.thumb.imageContainer.clientWidth / this.thumbAspectRatio);
+ this.elements.thumb.imageContainer.style.height = `${thumbHeight}px`;
}
this.setThumbContainerPos();