1// Copyright 2015-present 650 Industries. All rights reserved.
2
3#import "EXDevMenuGestureRecognizer.h"
4#import "EXDevMenuManager.h"
5
6@implementation EXDevMenuGestureRecognizer
7
8- (instancetype)init
9{
10  if (self = [super initWithTarget:self action:@selector(handleGesture:)]) {
11    self.numberOfTouchesRequired = 3;
12    self.minimumPressDuration = 0.5;
13    self.allowableMovement = 30;
14  }
15  return self;
16}
17
18- (void)handleGesture:(id)sender
19{
20  if (self.state == UIGestureRecognizerStateBegan) {
21    if ([[EXDevMenuManager sharedInstance] toggle]) {
22      UIImpactFeedbackGenerator *feedback = [[UIImpactFeedbackGenerator alloc] initWithStyle:UIImpactFeedbackStyleLight];
23      [feedback prepare];
24      [feedback impactOccurred];
25      feedback = nil;
26    }
27    [self cancelGesture];
28  }
29}
30
31- (void)cancelGesture
32{
33  self.enabled = NO;
34  self.enabled = YES;
35}
36
37@end
38