diff --git a/AsyncDisplayKit/ASEditableTextNode.h b/AsyncDisplayKit/ASEditableTextNode.h index 11cfaf8405..92811e2457 100644 --- a/AsyncDisplayKit/ASEditableTextNode.h +++ b/AsyncDisplayKit/ASEditableTextNode.h @@ -57,10 +57,10 @@ - (BOOL)isFirstResponder; //! @abstract Makes the receiver's text view the first responder. -- (void)becomeFirstResponder; +- (BOOL)becomeFirstResponder; //! @abstract Resigns the receiver's text view from first-responder status, if it has it. -- (void)resignFirstResponder; +- (BOOL)resignFirstResponder; #pragma mark - Geometry /** diff --git a/AsyncDisplayKit/ASEditableTextNode.mm b/AsyncDisplayKit/ASEditableTextNode.mm index 0b757d1752..b0d2fa1852 100644 --- a/AsyncDisplayKit/ASEditableTextNode.mm +++ b/AsyncDisplayKit/ASEditableTextNode.mm @@ -352,16 +352,26 @@ return [_textKitComponents.textView isFirstResponder]; } -- (void)becomeFirstResponder -{ - ASDN::MutexLocker l(_textKitLock); - [_textKitComponents.textView becomeFirstResponder]; +- (BOOL)canBecomeFirstResponder { + ASDN::MutexLocker l(_textKitLock); + return [_textKitComponents.textView canBecomeFirstResponder]; } -- (void)resignFirstResponder +- (BOOL)becomeFirstResponder { ASDN::MutexLocker l(_textKitLock); - [_textKitComponents.textView resignFirstResponder]; + return [_textKitComponents.textView becomeFirstResponder]; +} + +- (BOOL)canResignFirstResponder { + ASDN::MutexLocker l(_textKitLock); + return [_textKitComponents.textView canResignFirstResponder]; +} + +- (BOOL)resignFirstResponder +{ + ASDN::MutexLocker l(_textKitLock); + return [_textKitComponents.textView resignFirstResponder]; } #pragma mark - UITextView Delegate