diff --git a/ios/Controls.mm b/ios/Controls.mm index 28ff43bf86..2807d9ea31 100644 --- a/ios/Controls.mm +++ b/ios/Controls.mm @@ -16,8 +16,8 @@ static void controllerButtonPressed(BOOL pressed, InputKeyCode keyCode) { } bool SetupController(GCController *controller) { - GCGamepad *baseProfile = controller.gamepad; - if (baseProfile == nil) { + GCExtendedGamepad *extendedProfile = controller.extendedGamepad; + if (extendedProfile == nil) { return false; } @@ -29,50 +29,46 @@ bool SetupController(GCController *controller) { NativeKey(key); }; - baseProfile.buttonA.valueChangedHandler = ^(GCControllerButtonInput *button, float value, BOOL pressed) { + extendedProfile.buttonA.valueChangedHandler = ^(GCControllerButtonInput *button, float value, BOOL pressed) { controllerButtonPressed(pressed, NKCODE_BUTTON_2); // Cross }; - baseProfile.buttonB.valueChangedHandler = ^(GCControllerButtonInput *button, float value, BOOL pressed) { + extendedProfile.buttonB.valueChangedHandler = ^(GCControllerButtonInput *button, float value, BOOL pressed) { controllerButtonPressed(pressed, NKCODE_BUTTON_3); // Circle }; - baseProfile.buttonX.valueChangedHandler = ^(GCControllerButtonInput *button, float value, BOOL pressed) { + extendedProfile.buttonX.valueChangedHandler = ^(GCControllerButtonInput *button, float value, BOOL pressed) { controllerButtonPressed(pressed, NKCODE_BUTTON_4); // Square }; - baseProfile.buttonY.valueChangedHandler = ^(GCControllerButtonInput *button, float value, BOOL pressed) { + extendedProfile.buttonY.valueChangedHandler = ^(GCControllerButtonInput *button, float value, BOOL pressed) { controllerButtonPressed(pressed, NKCODE_BUTTON_1); // Triangle }; - baseProfile.leftShoulder.valueChangedHandler = ^(GCControllerButtonInput *button, float value, BOOL pressed) { + extendedProfile.leftShoulder.valueChangedHandler = ^(GCControllerButtonInput *button, float value, BOOL pressed) { controllerButtonPressed(pressed, NKCODE_BUTTON_7); // LTrigger }; - baseProfile.rightShoulder.valueChangedHandler = ^(GCControllerButtonInput *button, float value, BOOL pressed) { + extendedProfile.rightShoulder.valueChangedHandler = ^(GCControllerButtonInput *button, float value, BOOL pressed) { controllerButtonPressed(pressed, NKCODE_BUTTON_8); // RTrigger }; - baseProfile.dpad.up.valueChangedHandler = ^(GCControllerButtonInput *button, float value, BOOL pressed) { + extendedProfile.dpad.up.valueChangedHandler = ^(GCControllerButtonInput *button, float value, BOOL pressed) { controllerButtonPressed(pressed, NKCODE_DPAD_UP); }; - baseProfile.dpad.down.valueChangedHandler = ^(GCControllerButtonInput *button, float value, BOOL pressed) { + extendedProfile.dpad.down.valueChangedHandler = ^(GCControllerButtonInput *button, float value, BOOL pressed) { controllerButtonPressed(pressed, NKCODE_DPAD_DOWN); }; - baseProfile.dpad.left.valueChangedHandler = ^(GCControllerButtonInput *button, float value, BOOL pressed) { + extendedProfile.dpad.left.valueChangedHandler = ^(GCControllerButtonInput *button, float value, BOOL pressed) { controllerButtonPressed(pressed, NKCODE_DPAD_LEFT); }; - baseProfile.dpad.right.valueChangedHandler = ^(GCControllerButtonInput *button, float value, BOOL pressed) { + extendedProfile.dpad.right.valueChangedHandler = ^(GCControllerButtonInput *button, float value, BOOL pressed) { controllerButtonPressed(pressed, NKCODE_DPAD_RIGHT); }; - GCExtendedGamepad *extendedProfile = controller.extendedGamepad; - if (extendedProfile == nil) - return; // controller doesn't support extendedGamepad profile - extendedProfile.leftTrigger.valueChangedHandler = ^(GCControllerButtonInput *button, float value, BOOL pressed) { controllerButtonPressed(pressed, NKCODE_BUTTON_9); // Select }; @@ -359,4 +355,4 @@ void ICadeTracker::ButtonUp(iCadeState button) { key.deviceId = DEVICE_ID_PAD_0; NativeKey(key); } -} \ No newline at end of file +} diff --git a/ios/ViewController.mm b/ios/ViewController.mm index 5d66732ddd..169cc32de9 100644 --- a/ios/ViewController.mm +++ b/ios/ViewController.mm @@ -92,13 +92,16 @@ static bool threadEnabled = true; static bool threadStopped = false; id sharedViewController; -static GraphicsContext *graphicsContext; + +// TODO: Reach these through sharedViewController static CameraHelper *cameraHelper; static LocationHelper *locationHelper; @interface PPSSPPViewControllerGL () { ICadeTracker g_iCadeTracker; TouchTracker g_touchTracker; + + GraphicsContext *graphicsContext; } @property (nonatomic, strong) EAGLContext* context;