[iOS DAC] Fix touch events getting from SDL2 to source2.
diff --git a/src/video/uikit/SDL_uikitview.m b/src/video/uikit/SDL_uikitview.m
index 25a0d5f..d1f72d0 100644
--- a/src/video/uikit/SDL_uikitview.m
+++ b/src/video/uikit/SDL_uikitview.m
@@ -82,6 +82,27 @@ extern int SDL_AppleTVRemoteOpenedAsJoystick;
return self;
}
+- (void)layoutSubviews
+{
+ // Fix for touch ios.
+#if TARGET_OS_IOS
+ // on ios, a metal view gets added to our parent, and covers this for touch events.
+ // So set ourselves to user interact, and siblings false. johna
+ NSArray<UIView*>* subviews = [self.superview subviews];
+ for (int i=0; i<[subviews count]; i++)
+ {
+ UIView *view = [subviews objectAtIndex:i];
+ if (view == self) {
+ [view setUserInteractionEnabled:YES]; // set our user interaction to true.
+ } else {
+ [view setUserInteractionEnabled:NO]; // siblings to false.
+ }
+ }
+#endif
+ [super layoutSubviews];
+}
+
+
- (void)setSDLWindow:(SDL_Window *)window
{
SDL_WindowData *data = nil;