From 5cfc16733a41b0e3457e9e260be2adcc30fd460d Mon Sep 17 00:00:00 2001 From: Michael Schneider Date: Fri, 22 Apr 2016 11:22:20 -0700 Subject: [PATCH] Add node as parameter in ASLayoutSpecBlock --- AsyncDisplayKit/ASDisplayNode.h | 2 +- .../ASDisplayNodeImplicitHierarchyTests.m | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/AsyncDisplayKit/ASDisplayNode.h b/AsyncDisplayKit/ASDisplayNode.h index 91f7681eac..7c53e93a05 100644 --- a/AsyncDisplayKit/ASDisplayNode.h +++ b/AsyncDisplayKit/ASDisplayNode.h @@ -45,7 +45,7 @@ typedef void (^ASDisplayNodeContextModifier)(_Nonnull CGContextRef context); /** * ASDisplayNode layout spec block. This block can be used instead of implementing layoutSpecThatFits: in subclass */ -typedef ASLayoutSpec * _Nonnull(^ASLayoutSpecBlock)(ASSizeRange constrainedSize); +typedef ASLayoutSpec * _Nonnull(^ASLayoutSpecBlock)(ASDisplayNode * _Nonnull node, ASSizeRange constrainedSize); /** Interface state is available on ASDisplayNode and ASViewController, and diff --git a/AsyncDisplayKitTests/ASDisplayNodeImplicitHierarchyTests.m b/AsyncDisplayKitTests/ASDisplayNodeImplicitHierarchyTests.m index f0c19773c1..2ddb312a71 100644 --- a/AsyncDisplayKitTests/ASDisplayNodeImplicitHierarchyTests.m +++ b/AsyncDisplayKitTests/ASDisplayNodeImplicitHierarchyTests.m @@ -76,7 +76,7 @@ ASDisplayNode *node5 = [[ASDisplayNode alloc] init]; ASSpecTestDisplayNode *node = [[ASSpecTestDisplayNode alloc] init]; - node.layoutSpecBlock = ^(ASSizeRange constrainedSize) { + node.layoutSpecBlock = ^(ASDisplayNode *weakNode, ASSizeRange constrainedSize) { ASStaticLayoutSpec *staticLayout = [ASStaticLayoutSpec staticLayoutSpecWithChildren:@[node4]]; ASStackLayoutSpec *stack1 = [[ASStackLayoutSpec alloc] init]; @@ -102,9 +102,9 @@ ASDisplayNode *node3 = [[ASDisplayNode alloc] init]; ASSpecTestDisplayNode *node = [[ASSpecTestDisplayNode alloc] init]; - __weak ASSpecTestDisplayNode *weakNode = node; - node.layoutSpecBlock = ^(ASSizeRange constrainedSize){ - if ([weakNode.layoutState isEqualToNumber:@1]) { + node.layoutSpecBlock = ^(ASDisplayNode *weakNode, ASSizeRange constrainedSize){ + ASSpecTestDisplayNode *strongNode = (ASSpecTestDisplayNode *)weakNode; + if ([strongNode.layoutState isEqualToNumber:@1]) { return [ASStaticLayoutSpec staticLayoutSpecWithChildren:@[node1, node2]]; } else { ASStackLayoutSpec *stackLayout = [[ASStackLayoutSpec alloc] init];