[PATCH 4/5] winebus.sys: Report SDL controller buttons in the right order

Andrew Eikum aeikum at codeweavers.com
Tue May 7 09:01:57 CDT 2019


Signed-off-by: Andrew Eikum <aeikum at codeweavers.com>
---
 dlls/winebus.sys/bus_sdl.c | 8 ++++----
 dlls/xinput1_3/hid.c       | 9 ++++-----
 2 files changed, 8 insertions(+), 9 deletions(-)

diff --git a/dlls/winebus.sys/bus_sdl.c b/dlls/winebus.sys/bus_sdl.c
index 8ff8373da40..59c16980ac4 100644
--- a/dlls/winebus.sys/bus_sdl.c
+++ b/dlls/winebus.sys/bus_sdl.c
@@ -808,10 +808,10 @@ static BOOL set_mapped_report_from_event(SDL_Event *event)
                 case SDL_CONTROLLER_BUTTON_Y: usage = 3; break;
                 case SDL_CONTROLLER_BUTTON_LEFTSHOULDER: usage = 4; break;
                 case SDL_CONTROLLER_BUTTON_RIGHTSHOULDER: usage = 5; break;
-                case SDL_CONTROLLER_BUTTON_LEFTSTICK: usage = 6; break;
-                case SDL_CONTROLLER_BUTTON_RIGHTSTICK: usage = 7; break;
-                case SDL_CONTROLLER_BUTTON_START: usage = 8; break;
-                case SDL_CONTROLLER_BUTTON_BACK: usage = 9; break;
+                case SDL_CONTROLLER_BUTTON_BACK: usage = 6; break;
+                case SDL_CONTROLLER_BUTTON_START: usage = 7; break;
+                case SDL_CONTROLLER_BUTTON_LEFTSTICK: usage = 8; break;
+                case SDL_CONTROLLER_BUTTON_RIGHTSTICK: usage = 9; break;
                 case SDL_CONTROLLER_BUTTON_GUIDE: usage = 10; break;
 
                 case SDL_CONTROLLER_BUTTON_DPAD_UP:
diff --git a/dlls/xinput1_3/hid.c b/dlls/xinput1_3/hid.c
index f0036b14265..34e4e51285c 100644
--- a/dlls/xinput1_3/hid.c
+++ b/dlls/xinput1_3/hid.c
@@ -375,11 +375,10 @@ void HID_update_state(xinput_controller* device)
             case 4: device->state.Gamepad.wButtons |= XINPUT_GAMEPAD_Y; break;
             case 5: device->state.Gamepad.wButtons |= XINPUT_GAMEPAD_LEFT_SHOULDER; break;
             case 6: device->state.Gamepad.wButtons |= XINPUT_GAMEPAD_RIGHT_SHOULDER; break;
-            case 7: device->state.Gamepad.wButtons |= XINPUT_GAMEPAD_LEFT_THUMB; break;
-            case 8: device->state.Gamepad.wButtons |= XINPUT_GAMEPAD_RIGHT_THUMB; break;
-
-            case 9: device->state.Gamepad.wButtons |= XINPUT_GAMEPAD_START; break;
-            case 10: device->state.Gamepad.wButtons |= XINPUT_GAMEPAD_BACK; break;
+            case 7: device->state.Gamepad.wButtons |= XINPUT_GAMEPAD_BACK; break;
+            case 8: device->state.Gamepad.wButtons |= XINPUT_GAMEPAD_START; break;
+            case 9: device->state.Gamepad.wButtons |= XINPUT_GAMEPAD_LEFT_THUMB; break;
+            case 10: device->state.Gamepad.wButtons |= XINPUT_GAMEPAD_RIGHT_THUMB; break;
             case 11: device->state.Gamepad.wButtons |= XINPUT_GAMEPAD_GUIDE; break;
         }
     }
-- 
2.21.0





More information about the wine-devel mailing list