-
Notifications
You must be signed in to change notification settings - Fork 2.5k
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 cropping tools in the block editor #6909
Fix cropping tools in the block editor #6909
Conversation
The following accounts have interacted with this PR and/or linked issues. I will continue to update these lists as activity occurs. You can also manually ask me to refresh this list by adding the Core Committers: Use this line as a base for the props when committing in SVN:
To understand the WordPress project's expectations around crediting contributors, please review the Contributor Attribution page in the Core Handbook. |
Test using WordPress PlaygroundThe changes in this pull request can previewed and tested using a WordPress Playground instance. WordPress Playground is an experimental project that creates a full WordPress instance entirely within the browser. Some things to be aware of
For more details about these limitations and more, check out the Limitations page in the WordPress Playground documentation. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Tested with gutenberg e2e test suite and it passes the image.spec.js
test suite! 💯
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please add unit tests to cover this bug.
Thanks for the feedback @jrfnl! I've added a unit test, copying the existing one for image cropping, but updating it to include cropping on only one axis. I've also updated the linked trac ticket to be specific to this bug (https://core.trac.wordpress.org/ticket/61514) |
@jrfnl or @joedolson this PR is ready for another review and commit if it's all looking okay. It'd be great to get this fix in for the next 6.6 RC if we can. |
Thanks for the PR! Merged in r58612. |
What
Fixes cropping tools in the block editor. Related Gutenberg issue: WordPress/gutenberg#62855.
Why
Currently, the cropping tool in the block editor doesn't apply the selected crop.
As of 4f175e1 / #6876, the width and height cropping values are rounded and cast to an
int
before the comparison to see if the target width and height differ from the original width and height.Since they are now
int
s, it exposes a bug where the&&
of theif
conditional meant that if you were only cropping in one dimension, the check wouldn't pass, and cropping would not occur.In the block editor, the cropping tools are aspect ratio based, so one of the dimensions will always match that of the source image. Therefore, now that the values are cast as
int
s, we need to update the condition that allows a cropping to occur. In this case, I believe it should be||
instead of&&
. If either width or height is different from the source image, then we should allow a crop.How to test
Trac ticket: https://core.trac.wordpress.org/ticket/61514
This Pull Request is for code review only. Please keep all other discussion in the Trac ticket. Do not merge this Pull Request. See GitHub Pull Requests for Code Review in the Core Handbook for more details.