@@ -67,6 +67,7 @@ - (void)awakeFromNib
6767- (BOOL )becomeFirstResponder
6868{
6969 [self reloadData ];
70+ [self inputTextFieldBecomeFirstResponder ];
7071 return YES ;
7172}
7273
@@ -114,6 +115,8 @@ - (void)collapse
114115
115116- (void )reloadData
116117{
118+ BOOL inputFieldShouldBecomeFirstResponder = self.inputTextField .isFirstResponder ;
119+
117120 [self .collapsedLabel removeFromSuperview ];
118121 [self .scrollView.subviews makeObjectsPerformSelector: @selector (removeFromSuperview )];
119122 self.scrollView .hidden = NO ;
@@ -132,10 +135,9 @@ - (void)reloadData
132135 [self .scrollView setContentSize: CGSizeMake (self .scrollView.contentSize.width, currentY + [self heightForToken ])];
133136
134137 [self updateInputTextField ];
135- [self .inputTextField becomeFirstResponder ];
136138
137- if ([ self .delegate respondsToSelector: @selector ( tokenFieldDidBeginEditing: )] ) {
138- [self .delegate tokenFieldDidBeginEditing: self ];
139+ if (inputFieldShouldBecomeFirstResponder ) {
140+ [self inputTextFieldBecomeFirstResponder ];
139141 }
140142}
141143
@@ -254,6 +256,13 @@ - (void)layoutInvisibleTextField
254256 [self addSubview: self .invisibleTextField];
255257}
256258
259+ - (void )inputTextFieldBecomeFirstResponder
260+ {
261+ [self .inputTextField becomeFirstResponder ];
262+ if ([self .delegate respondsToSelector: @selector (tokenFieldDidBeginEditing: )]) {
263+ [self .delegate tokenFieldDidBeginEditing: self ];
264+ }
265+ }
257266
258267- (UILabel *)toLabel
259268{
@@ -341,7 +350,7 @@ - (void)setCursorVisibility
341350 }]];
342351 BOOL visible = [highlightedTokens count ] == 0 ;
343352 if (visible) {
344- [self .inputTextField becomeFirstResponder ];
353+ [self inputTextFieldBecomeFirstResponder ];
345354 } else {
346355 [self .invisibleTextField becomeFirstResponder ];
347356 }
0 commit comments