-
Notifications
You must be signed in to change notification settings - Fork 4.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
Image block: Fix responsive sizing in lightbox #51823
Merged
Merged
Changes from all commits
Commits
Show all changes
8 commits
Select commit
Hold shift + click to select a range
b34a6fa
Rewrite logic to calculate image dimensions based on aspect ratio
artemiomorales a0371a8
Add padding for lightbox images using fade animation
artemiomorales ce931b2
Use window inner dimensions to account for mobile address bar
artemiomorales 49181a5
Revise to deactivate responsive image on lightbox close
artemiomorales 58a11a2
Use built-in directive for mouseover event
artemiomorales af76853
Add safe area inset to close button positioning
artemiomorales a562af9
Revert "Use built-in directive for mouseover event"
artemiomorales f1971e3
Update tests
artemiomorales File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
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
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
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
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.
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.
Could have
imgDom.naturalWidth
,imgDom.naturalHeight
,containerInnerHeight
ortargetHeight
0 as value?If they are 0 or NaN in any moment, they will cause a warning/error.
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.
Thanks for bringing this up! The only way I could see this happening is if a user inserts a broken external image with an incorrect URL, in which case other parts of WordPress also break. If an image is not fully loaded, it will return 0 for the
naturalWidth
andnaturalHeight
, but since we wait until the image is fully loaded to activate this part of the code, I don't believe that's currently an issue.We can revisit this if any issues do arise in the future or if we revise the functionality, but for the moment I don't think handling this should be a blocker for this PR 👍
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.
What happens then if the user inserts a working external image, and then, suppose in couple of months, the external site closes and all the images are gone?
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.
Double checked this and we get some PHP errors due to
getimagesize()
that can actually likely be circumvented. I've captured thegetimagesize()
in an issue and the implementation is going to change soon, so I can handle this issue then.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.
Ok I opened a pull request that fixes this 👍