gamepad overlay crash fix

This commit is contained in:
True Zhuanjia committed 2026-04-14 11:08:59 +08:00
1 parent 3e1423ff46
commit 9807a77d9b
1 file changed
+7 -3
@@ -1795,11 +1795,14 @@
} }
- (void)loadAbstractGamepadOverlayIfNeeded API_AVAILABLE(ios(13.0)){ - (void)loadAbstractGamepadOverlayIfNeeded API_AVAILABLE(ios(13.0)){
if (_virtualGamepadOverlay != nil || self.view.window == nil) { dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(0 * NSEC_PER_SEC)),
dispatch_get_main_queue(), ^{
if (self->_virtualGamepadOverlay != nil || self.view.window == nil) {
return; return;
} }
BOOL usesXboxFaceButtons = _settings.emulatedControllerType.intValue == LI_CTYPE_XBOX; BOOL usesXboxFaceButtons = self->_settings.emulatedControllerType.intValue == LI_CTYPE_XBOX;
// CGFloat maxWidth = MIN(CGRectGetWidth(self.view.bounds) * 0.72, 620); // CGFloat maxWidth = MIN(CGRectGetWidth(self.view.bounds) * 0.72, 620);
// CGFloat standardWidth = MAX(420, maxWidth); // CGFloat standardWidth = MAX(420, maxWidth);
@@ -1814,7 +1817,8 @@
overlayView.userInteractionEnabled = YES; overlayView.userInteractionEnabled = YES;
[self.view addSubview:overlayView]; [self.view addSubview:overlayView];
_virtualGamepadOverlay = overlayView; self->_virtualGamepadOverlay = overlayView;
});
} }