diff --git a/THPinViewController/THPinView.h b/THPinViewController/THPinView.h index 47cbb75..1d9328b 100644 --- a/THPinViewController/THPinView.h +++ b/THPinViewController/THPinView.h @@ -20,6 +20,7 @@ NS_ASSUME_NONNULL_BEGIN - (void)cancelButtonTappedInPinView:(THPinView *)pinView; - (void)correctPinWasEnteredInPinView:(THPinView *)pinView; - (void)incorrectPinWasEnteredInPinView:(THPinView *)pinView; +- (void)pinViewDidStartEntering:(THPinView *)pinView; @end @@ -32,6 +33,7 @@ NS_ASSUME_NONNULL_BEGIN @property (nonatomic, assign) BOOL disableCancel; - (instancetype)initWithDelegate:(nullable id)delegate NS_DESIGNATED_INITIALIZER; +- (void) resetInput; @end diff --git a/THPinViewController/THPinView.m b/THPinViewController/THPinView.m index d3edd3b..a87df44 100644 --- a/THPinViewController/THPinView.m +++ b/THPinViewController/THPinView.m @@ -242,6 +242,10 @@ - (void)pinNumPadView:(THPinNumPadView *)pinNumPadView numberTapped:(NSUInteger) { NSUInteger pinLength = [self.delegate pinLengthForPinView:self]; + if (pinLength == 0) { + [self.delegate pinViewDidStartEntering:self]; + } + if (self.input.length >= pinLength) { return; } diff --git a/THPinViewController/THPinViewController.h b/THPinViewController/THPinViewController.h index 6ad78cc..d0685f2 100644 --- a/THPinViewController/THPinViewController.h +++ b/THPinViewController/THPinViewController.h @@ -30,6 +30,7 @@ static const NSInteger THPinViewControllerContentViewTag = 14742; - (void)pinViewControllerDidDismissAfterPinEntryWasUnsuccessful:(THPinViewController *)pinViewController; - (void)pinViewControllerWillDismissAfterPinEntryWasCancelled:(THPinViewController *)pinViewController; - (void)pinViewControllerDidDismissAfterPinEntryWasCancelled:(THPinViewController *)pinViewController; +- (void)pinViewControllerDidStartEntering:(THPinViewController *)pinViewController; @end @@ -45,6 +46,7 @@ static const NSInteger THPinViewControllerContentViewTag = 14742; @property (nonatomic, assign) BOOL disableDismissAniamtion; - (instancetype)initWithDelegate:(nullable id)delegate NS_DESIGNATED_INITIALIZER; +- (void) clear; @end diff --git a/THPinViewController/THPinViewController.m b/THPinViewController/THPinViewController.m index a83310b..68b61a0 100644 --- a/THPinViewController/THPinViewController.m +++ b/THPinViewController/THPinViewController.m @@ -191,6 +191,12 @@ - (UIImage*)blurredContentImage saturationDeltaFactor:1.8f maskImage:nil]; } +#pragma mark - THPinView actions +- (void) clear +{ + [self.pinView resetInput]; +} + #pragma mark - THPinViewDelegate - (NSUInteger)pinLengthForPinView:(THPinView *)pinView @@ -247,4 +253,9 @@ - (void)incorrectPinWasEnteredInPinView:(THPinView *)pinView } } +- (void)pinViewDidStartEntering:(THPinView *)pinView +{ + [self.delegate pinViewControllerDidStartEntering:self]; +} + @end