Commit bd6afc2317b8f825c259b1593cda31a9f592408f

Sam Lantinga 2022-10-02T10:15:39

Fixed sensor axes in vertical mode

diff --git a/src/joystick/hidapi/SDL_hidapi_switch.c b/src/joystick/hidapi/SDL_hidapi_switch.c
index 8a61031..8eaadb3 100644
--- a/src/joystick/hidapi/SDL_hidapi_switch.c
+++ b/src/joystick/hidapi/SDL_hidapi_switch.c
@@ -1793,7 +1793,7 @@ static void SendSensorUpdate(SDL_Joystick *joystick, SDL_DriverSwitch_Context *c
     }
 
     if (ctx->m_eControllerType == k_eSwitchDeviceInfoControllerType_JoyConLeft &&
-        !ctx->device->parent) {
+        !ctx->device->parent && !ctx->m_bVerticalMode) {
         /* Mini-gamepad mode, swap some axes around */
         float tmp = data[2];
         data[2] = -data[0];
@@ -1801,7 +1801,7 @@ static void SendSensorUpdate(SDL_Joystick *joystick, SDL_DriverSwitch_Context *c
     }
 
     if (ctx->m_eControllerType == k_eSwitchDeviceInfoControllerType_JoyConRight &&
-        !ctx->device->parent) {
+        !ctx->device->parent && !ctx->m_bVerticalMode) {
         /* Mini-gamepad mode, swap some axes around */
         float tmp = data[2];
         data[2] = data[0];