From 2d698e92d5187262c4481024bb318f4fa0e4145a Mon Sep 17 00:00:00 2001 From: Maksym Komarychev Date: Thu, 5 Apr 2018 18:34:05 +0300 Subject: [PATCH] [ios] Handle touches within `use` --- ios/Elements/RNSVGUse.m | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/ios/Elements/RNSVGUse.m b/ios/Elements/RNSVGUse.m index ab2f4af7..cd9dcf87 100644 --- a/ios/Elements/RNSVGUse.m +++ b/ios/Elements/RNSVGUse.m @@ -51,5 +51,21 @@ } } +- (UIView *)hitTest:(CGPoint)point withEvent:(UIEvent *)event { + const CGPoint transformed = CGPointApplyAffineTransform(point, self.invmatrix); + RNSVGNode const* template = [self.svgView getDefinedTemplate:self.href]; + if (event) { + self.active = NO; + } else if (self.active) { + return self; + } + UIView const* hitChild = [template hitTest:transformed withEvent:event]; + if (hitChild) { + self.active = YES; + return self; + } + return nil; +} + @end