fix: Android onLoad event when view width and height are zero #1
+143
−18
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.
Copied from the original PR to
react-native-fast-image
here DylanVann#953This PR aims to fix an existing issue with the
onLoad
event not firing on Android when the view style's width or height is zero as documented here DylanVann#865. There is a similar PR DylanVann#446 that was opened, but as mentioned in reviews this causes crashes due to the.override(Target.SIZE_ORIGINAL)
method being applied to Glide. Instead, this PR follows the recommended way of getting the natural image dimensions as documented here in the Glide repo bumptech/glide#781 (comment).The changes here include:
onLoad
method on Android to work in the same way iOS does - reporting the original natural image dimensionsThese changes are best tested with the
AutoSize
component in the example app - as you can see setting the width to zero still triggers theonLoad
event and this example is then rendered correctly.