-
Notifications
You must be signed in to change notification settings - Fork 2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fix broken previews after cropping #4926
Merged
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Diff output filesdiff --git a/packages/@uppy/thumbnail-generator/lib/index.js b/packages/@uppy/thumbnail-generator/lib/index.js
index beb1a78..78c7b67 100644
--- a/packages/@uppy/thumbnail-generator/lib/index.js
+++ b/packages/@uppy/thumbnail-generator/lib/index.js
@@ -278,6 +278,7 @@ export default class ThumbnailGenerator extends UIPlugin {
this.uppy.on("thumbnail:request", this.onFileAdded);
this.uppy.on("thumbnail:cancel", this.onCancelRequest);
} else {
+ this.uppy.on("thumbnail:request", this.onFileAdded);
this.uppy.on("file-added", this.onFileAdded);
this.uppy.on("restored", this.onRestored);
}
@@ -292,6 +293,7 @@ export default class ThumbnailGenerator extends UIPlugin {
this.uppy.off("thumbnail:request", this.onFileAdded);
this.uppy.off("thumbnail:cancel", this.onCancelRequest);
} else {
+ this.uppy.off("thumbnail:request", this.onFileAdded);
this.uppy.off("file-added", this.onFileAdded);
this.uppy.off("restored", this.onRestored);
} |
2 tasks
Murderlon
approved these changes
Feb 19, 2024
Merged
github-actions bot
added a commit
that referenced
this pull request
Feb 19, 2024
| Package | Version | Package | Version | | ------------------------- | ------- | ------------------------- | ------- | | @uppy/audio | 1.1.5 | @uppy/remote-sources | 1.1.1 | | @uppy/aws-s3 | 3.6.1 | @uppy/status-bar | 3.2.6 | | @uppy/aws-s3-multipart | 3.10.1 | @uppy/store-default | 3.2.1 | | @uppy/companion | 4.12.1 | @uppy/store-redux | 3.0.6 | | @uppy/companion-client | 3.7.1 | @uppy/svelte | 3.1.2 | | @uppy/compressor | 1.1.0 | @uppy/thumbnail-generator | 3.0.7 | | @uppy/core | 3.9.0 | @uppy/transloadit | 3.5.0 | | @uppy/dashboard | 3.7.2 | @uppy/tus | 3.5.1 | | @uppy/drop-target | 2.0.3 | @uppy/utils | 5.7.1 | | @uppy/form | 3.1.0 | @uppy/vue | 1.1.1 | | @uppy/golden-retriever | 3.1.2 | @uppy/webcam | 3.3.5 | | @uppy/image-editor | 2.4.1 | @uppy/xhr-upload | 3.6.1 | | @uppy/locales | 3.5.1 | uppy | 3.22.0 | | @uppy/provider-views | 3.9.0 | | | - @uppy/aws-s3-multipart,@uppy/aws-s3,@uppy/companion-client,@uppy/tus,@uppy/xhr-upload: update `uppyfile` objects before emitting events (antoine du hamel / #4928) - @uppy/transloadit: add `clientname` option (marius / #4920) - @uppy/thumbnail-generator: fix broken previews after cropping (evgenia karunus / #4926) - @uppy/compressor: upgrade compressorjs (merlijn vos / #4924) - @uppy/companion: fix companion dns and allow redirects from http->https again (mikael finstad / #4895) - @uppy/dashboard: autoopenfileeditor - rename "edit file" to "edit image" (evgenia karunus / #4925) - meta: resolve jsx to preact in shared tsconfig (merlijn vos / #4923) - @uppy/image-editor: image editor: make compressor work after the image editor, too (evgenia karunus / #4918) - meta: exclude `tsconfig` files from npm bundles (antoine du hamel / #4916) - @uppy/compressor: migrate to ts (mikael finstad / #4907) - @uppy/provider-views: update uppy-providerbrowser-viewtype--list.scss (aditya patadia / #4913) - @uppy/tus: migrate to ts (merlijn vos / #4899) - meta: bump yarn version (antoine du hamel / #4906) - meta: validate `defaultoptions` for stricter option types (antoine du hamel / #4901) - @uppy/dashboard: Uncouple native camera and video buttons from the `disableLocalFiles` option (jake mcallister / #4894) - meta: put experimental ternaries in .prettierrc.js (merlijn vos / #4900) - @uppy/xhr-upload: migrate to ts (merlijn vos / #4892) - @uppy/drop-target: refactor to typescript (artur paikin / #4863) - meta: fix missing line return in js2ts script (antoine du hamel) - meta: disable `@typescript-eslint/no-empty-function` lint rule (antoine du hamel / #4891) - @uppy/companion-client: fix tests and linter (antoine du hamel / #4890) - @uppy/companion-client: migrate to ts (merlijn vos / #4864) - meta: prettier 3.0.3 -> 3.2.4 (antoine du hamel / #4889) - @uppy/image-editor: migrate to ts (merlijn vos / #4880) - meta: fix race condition in `e2e.yml` (antoine du hamel) - @uppy/core: add utility type to help define plugin option types (antoine du hamel / #4885) - meta: merge `output-watcher` and `e2e` workflows (antoine du hamel / #4886) - @uppy/status-bar: fix `statusbaroptions` type (antoine du hamel / #4883) - @uppy/core: improve types of .use() (merlijn vos / #4882) - @uppy/audio: fix `audiooptions` (antoine du hamel / #4884) - meta: upgrade vite and vitest (antoine du hamel / #4881) - meta: fix `yarn build:clean` (antoine du hamel) - @uppy/audio: refactor to typescript (antoine du hamel / #4860) - @uppy/status-bar: refactor to typescript (antoine du hamel / #4839) - @uppy/core: add `plugintarget` type and mark options as optional (antoine du hamel / #4874) - meta: improve output watcher diff (antoine du hamel / #4876) - meta: minify the output watcher diff further (antoine du hamel) - meta: remove comments from output watcher (mikael finstad / #4875) - @uppy/utils: improve types for `finddomelement` (antoine du hamel / #4873) - @uppy/code: allow plugins to type `pluginstate` (antoine du hamel / #4872) - meta: build(deps): bump follow-redirects from 1.15.1 to 1.15.4 (dependabot[bot] / #4862) - meta: add `output-watcher` gha to help check output diff (antoine du hamel / #4868) - meta: generate locale pack from output file (antoine du hamel / #4867) - meta: comment on what we want to do about close, resetprogress, clearuploadedfiles, etc in the next major (artur paikin / #4865) - meta: fix `yarn build:clean` (antoine du hamel / #4866) - meta: use `explicit-module-boundary-types` lint rule (antoine du hamel / #4858) - @uppy/form: use requestsubmit (merlijn vos / #4852) - @uppy/provider-views: add referrerpolicy to images (merlijn vos / #4853) - @uppy/core: add `debuglogger` as export in manual types (antoine du hamel / #4831) - meta: fix `js2ts` script (antoine du hamel / #4846) - @uppy/xhr-upload: show remove button (merlijn vos / #4851) - meta: upgrade `@transloadit/prettier-bytes` (antoine du hamel / #4850) - @uppy/core: add missing requiredmetafields key in restrictions (darthf1 / #4819) - @uppy/companion,@uppy/tus: bump `tus-js-client` version range (merlijn vos / #4848) - meta: build(deps): bump aws/aws-sdk-php from 3.272.1 to 3.288.1 in /examples/aws-php (dependabot[bot] / #4838) - @uppy/dashboard: fix `typeerror` when `file.remote` is nullish (antoine du hamel / #4825) - meta: fix `js2ts` script (antoine du hamel / #4844) - @uppy/locales: fix "save" button translation in hr_hr.ts (žan žlender / #4830) - meta: fix linting of `.tsx` files (antoine du hamel / #4843) - @uppy/core: fix types (antoine du hamel / #4842) - @uppy/utils: improve `preprocess` and `postprocess` types (antoine du hamel / #4841) - meta: fix `yarn build:clean` (mikael finstad / #4840) - meta: dev: remove extensions from vite aliases (antoine du hamel) - meta: fix `"e2e"` script (antoine du hamel) - @uppy/core: refactor to ts (murderlon) - meta: fix typescript ci (antoine du hamel) - meta: fix clean script (mikael finstad / #4820) - @uppy/companion-client: fix `typeerror` (antoine du hamel)
Murderlon
added a commit
that referenced
this pull request
Feb 22, 2024
* main: meta: disable `@typescript-eslint/no-non-null-assertion` lint rule (#4945) remove unnecessary `'use strict'` directives (#4943) @uppy/companion-client: type changes for provider-views (#4938) meta: bump ip from 1.1.8 to 1.1.9 (#4941) @uppy/companion-client: update types (#4927) Release: uppy@3.22.1 (#4935) update vi_VN translation (#4930) bump `@transloadit/prettier-bytes` (#4933) Release: uppy@3.22.0 (#4929) update `UppyFile` objects before emitting events (#4928) @uppy/transloadit: add `clientName` option (#4920) Fix broken previews after cropping (#4926) @uppy/compressor: upgrade compressorjs (#4924) Fix companion dns and allow redirects from http->https again (#4895) autoOpenFileEditor - rename "Edit file" to "Edit image" (#4925) meta: resolve jsx to Preact in shared tsconfig (#4923)
Murderlon
added a commit
that referenced
this pull request
Feb 22, 2024
* main: MetaEditor + ImageEditor - new state machine logic (#4939) meta: disable `@typescript-eslint/no-non-null-assertion` lint rule (#4945) remove unnecessary `'use strict'` directives (#4943) @uppy/companion-client: type changes for provider-views (#4938) meta: bump ip from 1.1.8 to 1.1.9 (#4941) @uppy/companion-client: update types (#4927) Release: uppy@3.22.1 (#4935) update vi_VN translation (#4930) bump `@transloadit/prettier-bytes` (#4933) Release: uppy@3.22.0 (#4929) update `UppyFile` objects before emitting events (#4928) @uppy/transloadit: add `clientName` option (#4920) Fix broken previews after cropping (#4926) @uppy/compressor: upgrade compressorjs (#4924) Fix companion dns and allow redirects from http->https again (#4895) autoOpenFileEditor - rename "Edit file" to "Edit image" (#4925)
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Fixes #4163, possibly fixes #4183
Before
{ waitForThumbnailsBeforeUpload: false }
+edit the image
=>thumbnail gets properly generated
{ waitForThumbnailsBeforeUpload: true }
+edit the image
=>NO thumbnail
After
{ waitForThumbnailsBeforeUpload: false }
+edit the image
=>thumbnail gets properly generated
{ waitForThumbnailsBeforeUpload: true }
+edit the image
=>thumbnail gets properly generated
Comments
I think our
waitForThumbnailsBeforeUpload
+lazy
options for ThumbnailGenerator are kind of weird.It's nice to have the
lazy
option so that people can disable lazy thumbnails if they don't work nicely for them, virtual scrolling can be laggy (reminder that we use lazy thumbnails to enhance performance during virtual scrolling).The only reason we need the
waitForThumbnailsBeforeUpload
option, however, is because some people need exif data.These seem like unrelated causes, and yet these options are closely intertwined - e.g. using
{ waitForThumbnailsBeforeUpload: true }
automatically disables thelazy
option. This doesn't really have to happen, these are compatible!We can have both performance
{ lazy: true }
and exif data{ waitForThumbnailsBeforeUpload: true }
.I think ultimately the correct way to go about these options is to remove the
waitForThumbnailsBeforeUpload
option, and make "please extract exif data" separate functionality. There are quite some issues about missing exif data from images, people rely on it as if it's intended functionality and not just a side-effect of thumbnail generation.I'll keep an eye on exif-related issues, let's merge this quick fix for now.