Adds a second target of a Size class with the relevant decoder + transcoder to achieve this
Aligns the onLoad method on Android to work in the same way iOS does - reporting the original natural image dimensions
Some minor dev setup fixes to get the example app up and running
These changes are best tested with the AutoSize component in the example app - as you can see setting the width to zero still triggers the onLoad event and this example is then rendered correctly.
@DylanVann Is there any chance you can let us know your thoughts on this change? @thomas-coldwell and I would be happy to discuss with you if you have any questions / concerns about this update
Hey @DylanVann 👋
This 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 https://github.com/DylanVann/react-native-fast-image/issues/865. There is a similar PR https://github.com/DylanVann/react-native-fast-image/pull/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 https://github.com/bumptech/glide/issues/781#issuecomment-160953996.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.