From efa47d65dd24212ca528334f20cbda5d3bc80446 Mon Sep 17 00:00:00 2001 From: Scott Goodson Date: Sat, 7 Nov 2015 23:29:36 -0800 Subject: [PATCH] Re-add name method to fix tests (grr). Clean up positioning of responder methods in header. --- AsyncDisplayKit/ASDisplayNode.h | 21 +++++++-------- AsyncDisplayKit/ASDisplayNode.mm | 44 ++++++++------------------------ 2 files changed, 22 insertions(+), 43 deletions(-) diff --git a/AsyncDisplayKit/ASDisplayNode.h b/AsyncDisplayKit/ASDisplayNode.h index 916fad2945..4c8ba651f2 100644 --- a/AsyncDisplayKit/ASDisplayNode.h +++ b/AsyncDisplayKit/ASDisplayNode.h @@ -506,16 +506,6 @@ typedef void (^ASDisplayNodeDidLoadBlock)(ASDisplayNode *node); */ - (CGRect)convertRect:(CGRect)rect fromNode:(ASDisplayNode *)node; -/** @name UIResponder methods */ - -// By default these fall through to the underlying view, but can be overridden. -- (BOOL)canBecomeFirstResponder; // default==NO -- (BOOL)becomeFirstResponder; // default==NO (no-op) -- (BOOL)canResignFirstResponder; // default==YES -- (BOOL)resignFirstResponder; // default==NO (no-op) -- (BOOL)isFirstResponder; -- (BOOL)canPerformAction:(SEL)action withSender:(id)sender; - @end @@ -614,6 +604,15 @@ typedef void (^ASDisplayNodeDidLoadBlock)(ASDisplayNode *node); @property (atomic, assign) CGFloat borderWidth; // default=0 @property (atomic, assign) CGColorRef borderColor; // default=opaque rgb black +// UIResponder methods +// By default these fall through to the underlying view, but can be overridden. +- (BOOL)canBecomeFirstResponder; // default==NO +- (BOOL)becomeFirstResponder; // default==NO (no-op) +- (BOOL)canResignFirstResponder; // default==YES +- (BOOL)resignFirstResponder; // default==NO (no-op) +- (BOOL)isFirstResponder; +- (BOOL)canPerformAction:(SEL)action withSender:(id)sender; + // Accessibility support @property (atomic, assign) BOOL isAccessibilityElement; @property (atomic, copy) NSString *accessibilityLabel; @@ -646,6 +645,7 @@ typedef void (^ASDisplayNodeDidLoadBlock)(ASDisplayNode *node); * @param node The node to be added. */ - (void)addSubnode:(ASDisplayNode *)node; +- (NSString *)name; @end /** CALayer(AsyncDisplayKit) defines convenience method for adding sub-ASDisplayNode to a CALayer. */ @@ -656,6 +656,7 @@ typedef void (^ASDisplayNodeDidLoadBlock)(ASDisplayNode *node); * @param node The node to be added. */ - (void)addSubnode:(ASDisplayNode *)node; +- (NSString *)name; @end @interface ASDisplayNode (Deprecated) diff --git a/AsyncDisplayKit/ASDisplayNode.mm b/AsyncDisplayKit/ASDisplayNode.mm index 28ba61e7c9..633f933d44 100644 --- a/AsyncDisplayKit/ASDisplayNode.mm +++ b/AsyncDisplayKit/ASDisplayNode.mm @@ -670,7 +670,7 @@ static ASDisplayNodeMethodOverrides GetASDisplayNodeMethodOverrides(Class c) [self _addSubnodeViewsAndLayers]; } - [self recursivelyDisplayImmediately]; + [self recursivelyEnsureDisplay]; } } @@ -2043,35 +2043,6 @@ static void _recursivelySetDisplaySuspended(ASDisplayNode *node, CALayer *layer, } -- (BOOL)canBecomeFirstResponder { - return NO; -} - -- (BOOL)canResignFirstResponder { - return YES; -} - -- (BOOL)isFirstResponder { - ASDisplayNodeAssertMainThread(); - return _view != nil && [_view isFirstResponder]; -} - -// Note: this implicitly loads the view if it hasn't been loaded yet. -- (BOOL)becomeFirstResponder { - ASDisplayNodeAssertMainThread(); - return !self.layerBacked && [self canBecomeFirstResponder] && [self.view becomeFirstResponder]; -} - -- (BOOL)resignFirstResponder { - ASDisplayNodeAssertMainThread(); - return !self.layerBacked && [self canResignFirstResponder] && [_view resignFirstResponder]; -} - -- (BOOL)canPerformAction:(SEL)action withSender:(id)sender { - ASDisplayNodeAssertMainThread(); - return !self.layerBacked && [self.view canPerformAction:action withSender:sender]; -} - - (id)finalLayoutable { return self; @@ -2081,8 +2052,6 @@ static void _recursivelySetDisplaySuspended(ASDisplayNode *node, CALayer *layer, @implementation ASDisplayNode (Debugging) -#pragma clang diagnostic push -#pragma clang diagnostic ignored "-Wobjc-protocol-method-implementation" - (NSString *)description { if (self.name) { @@ -2091,7 +2060,6 @@ static void _recursivelySetDisplaySuspended(ASDisplayNode *node, CALayer *layer, return [super description]; } } -#pragma clang diagnostic pop - (NSString *)debugDescription { @@ -2190,6 +2158,11 @@ static const char *ASDisplayNodeAssociatedNodeKey = "ASAssociatedNode"; } } +- (NSString *)name +{ + return self.asyncdisplaykit_node.name; +} + @end @implementation CALayer (AsyncDisplayKit) @@ -2199,6 +2172,11 @@ static const char *ASDisplayNodeAssociatedNodeKey = "ASAssociatedNode"; [self addSublayer:node.layer]; } +- (NSString *)name +{ + return self.asyncdisplaykit_node.name; +} + @end