diff options
author | John Molakvoæ <skjnldsv@protonmail.com> | 2022-04-06 18:53:21 +0200 |
---|---|---|
committer | John Molakvoæ <skjnldsv@protonmail.com> | 2022-04-06 18:55:48 +0200 |
commit | 3d1f22f6d8720ff0ed574bc21d32ea2a45a42c29 (patch) | |
tree | 9a517fd7304634083165e6d1a9c6391aa2e61e53 /lib | |
parent | b88dc5ff2e32952e03d88d421627ed0d60486aa6 (diff) | |
download | nextcloud-server-3d1f22f6d8720ff0ed574bc21d32ea2a45a42c29.tar.gz nextcloud-server-3d1f22f6d8720ff0ed574bc21d32ea2a45a42c29.zip |
Generate small preview straight away if Imaginary is enabled
Signed-off-by: John Molakvoæ <skjnldsv@protonmail.com>
Diffstat (limited to 'lib')
-rw-r--r-- | lib/private/Preview/Generator.php | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/lib/private/Preview/Generator.php b/lib/private/Preview/Generator.php index a770fe3b459..cef3fa4039a 100644 --- a/lib/private/Preview/Generator.php +++ b/lib/private/Preview/Generator.php @@ -137,9 +137,10 @@ class Generator { $previewVersion = $file->getPreviewVersion() . '-'; } + // If imaginary is enabled, and we request a small thumbnail, + // let's not generate the max preview for performance reasons if (count($specifications) === 1 - && (($specifications[0]['width'] === 250 && $specifications[0]['height'] === 250) - || ($specifications[0]['width'] === 150 && $specifications[0]['height'] === 150)) + && ($specifications[0]['width'] <= 256 || $specifications[0]['height'] <= 256) && preg_match(Imaginary::supportedMimeTypes(), $mimeType) && $this->config->getSystemValueString('preview_imaginary_url', 'invalid') !== 'invalid') { $crop = $specifications[0]['crop'] ?? false; @@ -221,6 +222,10 @@ class Generator { return $preview; } + /** + * Generate a small image straight away without generating a max preview first + * Preview generated is 256x256 + */ private function getSmallImagePreview(ISimpleFolder $previewFolder, File $file, string $mimeType, string $prefix, bool $crop) { $nodes = $previewFolder->getDirectoryListing(); |