From dfc7c0cc0e4c43bc752f49b20146672ed1438b1d Mon Sep 17 00:00:00 2001 From: Adlai Holler Date: Sun, 29 Nov 2015 17:29:44 -0800 Subject: [PATCH] Image nodes call fetchData when image source is updated while in fetch range --- AsyncDisplayKit/ASMultiplexImageNode.mm | 3 +++ AsyncDisplayKit/ASNetworkImageNode.mm | 7 ++++--- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/AsyncDisplayKit/ASMultiplexImageNode.mm b/AsyncDisplayKit/ASMultiplexImageNode.mm index c01004c6ed..105acc9a2e 100644 --- a/AsyncDisplayKit/ASMultiplexImageNode.mm +++ b/AsyncDisplayKit/ASMultiplexImageNode.mm @@ -287,6 +287,9 @@ typedef void(^ASMultiplexImageLoadCompletionBlock)(UIImage *image, id imageIdent _imageIdentifiers = [imageIdentifiers copy]; OSSpinLockUnlock(&_imageIdentifiersLock); + if (self.interfaceState & ASInterfaceStateFetchData) { + [self fetchData]; + } } - (void)reloadImageIdentifierSources diff --git a/AsyncDisplayKit/ASNetworkImageNode.mm b/AsyncDisplayKit/ASNetworkImageNode.mm index aa8cb483c4..e7905bebf2 100644 --- a/AsyncDisplayKit/ASNetworkImageNode.mm +++ b/AsyncDisplayKit/ASNetworkImageNode.mm @@ -81,9 +81,10 @@ if (reset || _URL == nil) self.image = _defaultImage; - - if (self.nodeLoaded && self.layer.superlayer) - [self _lazilyLoadImageIfNecessary]; + + if (self.interfaceState & ASInterfaceStateFetchData) { + [self fetchData]; + } } - (NSURL *)URL