File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -8,6 +8,7 @@ @interface CsZBar ()
88@property bool scanInProgress;
99@property NSString *scanCallbackId;
1010@property AlmaZBarReaderViewController *scanReader;
11+ @property (strong , nonatomic ) UITapGestureRecognizer *tapOutsideRecognizer;
1112
1213@end
1314
@@ -100,7 +101,7 @@ - (void)scan: (CDVInvokedUrlCommand*)command;
100101
101102 self.scanReader .cameraOverlayView = polygonView;
102103 }
103-
104+ [ self .viewController.view.window addGestureRecognizer: self .tapBehindGesture];
104105 [self .viewController presentViewController: self .scanReader animated: YES completion: nil ];
105106 }
106107}
@@ -170,4 +171,27 @@ - (void) readerControllerDidFailToRead:(ZBarReaderController*)reader withRetry:(
170171 }];
171172}
172173
174+ - (UITapGestureRecognizer*)tapBehindGesture
175+ {
176+ if (_tapOutsideRecognizer == nil )
177+ {
178+ _tapOutsideRecognizer = [[UITapGestureRecognizer alloc ] initWithTarget: self action: @selector (tapBehindRecognized )];
179+ _tapOutsideRecognizer.numberOfTapsRequired = 1 ;
180+ _tapOutsideRecognizer.cancelsTouchesInView = NO ;
181+ _tapOutsideRecognizer.delegate = self;
182+ }
183+
184+ return _tapOutsideRecognizer;
185+ }
186+
187+ -(void )tapBehindRecognized {
188+ [self .viewController.view.window removeGestureRecognizer: self .tapBehindGesture];
189+ self.scanInProgress = NO ;
190+ }
191+
192+ - (BOOL )gestureRecognizer : (UIGestureRecognizer *)gestureRecognizer shouldRecognizeSimultaneouslyWithGestureRecognizer : (UIGestureRecognizer *)otherGestureRecognizer
193+ {
194+ return YES ;
195+ }
196+
173197@end
You can’t perform that action at this time.
0 commit comments