diff --git a/React/Fabric/RCTSurfaceTouchHandler.mm b/React/Fabric/RCTSurfaceTouchHandler.mm index e556a3af6d1..eb5d126eda3 100644 --- a/React/Fabric/RCTSurfaceTouchHandler.mm +++ b/React/Fabric/RCTSurfaceTouchHandler.mm @@ -410,4 +410,22 @@ RCT_NOT_IMPLEMENTED(-(instancetype)initWithTarget : (id)target action : (SEL)act return [self canBePreventedByGestureRecognizer:otherGestureRecognizer]; } +- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer + shouldRecognizeSimultaneouslyWithGestureRecognizer:(UIGestureRecognizer *)otherGestureRecognizer +{ + BOOL canBePrevented = [self canBePreventedByGestureRecognizer:otherGestureRecognizer]; + if (canBePrevented) { + [self _cancelTouches]; + } + return NO; +} + +#pragma mark - + +- (void)_cancelTouches +{ + [self setEnabled:NO]; + [self setEnabled:YES]; +} + @end