sdl2_frt/src
Sam Lantinga b3848c5120 Fixed bug 5445 - Incorrect Switch Pro Controller face buttons when SDL_HINT_GAMECONTROLLER_USE_BUTTON_LABELS disabled
jibb

I'm testing with DualShock 4, DualSense, Switch Pro Controller, and PowerA Switch Controller.

I'm using the standard mapping file from here:
https://raw.github.com/gabomdq/SDL_GameControllerDB/master/gamecontrollerdb.txt

With SDL_HINT_GAMECONTROLLER_USE_BUTTON_LABELS turned off (set to "0") I expect the button positions to be the same on all devices, based on Xbox controller button naming (eg SDL_GameControllerGetButton(g, SDL_CONTROLLER_BUTTON_Y) gives me whether the North face button is pressed).

However, the Switch Pro Controller layout is wrong (matching labels rather than positions, so X and Y are swapped and A and B are swapped). And with the PowerA controller the East and West buttons are correct, but the North and South buttons are swapped instead.

Mathias Kaerlev

Also seeing this on 2.0.14. This is most likely a regression, since we weren't seeing this on an earlier SDL version.

I suspect it might be caused by this commit:
a569b21188 (diff-da9344d94c66b8c702a45e7649f412039f08bba83bd82de33f5c80ea9c8c39d5)

It seems like both the HIDAPI driver and SDL_gamecontroller.c will try to swap the buttons if the hint is set to 0, causing the button remap to cancel out.
2021-01-14 15:15:57 -08:00
..
atomic Use specific acquire and release variants of InterlockedExchange on ARM 2021-01-03 12:13:40 -06:00
audio Fixed bug 5080 - SDL_netbsdaudio: Always use the device's preferred frequency 2021-01-08 10:09:37 -08:00
core Fixed bug 5461 - Add rewritten WSCONS driver for OpenBSD 2021-01-14 14:32:11 -08:00
cpuinfo Updated copyright for 2021 2021-01-02 10:25:38 -08:00
dynapi ran gendynapi.pl after SDL_UpdateNVTexture addition 2021-01-05 15:15:50 +03:00
events Fixed bug 5465 - Invalid memcpy inside SDL_GestureDelTouch (Thanks dmikushin and Yuki Okumura) 2021-01-10 22:21:12 +01:00
file Updated copyright for 2021 2021-01-02 10:25:38 -08:00
filesystem use WIN_StringToUTF8W instead of WIN_StringToUTF8 where needed (#2) 2021-01-05 15:50:02 +03:00
haptic Updated copyright for 2021 2021-01-02 10:25:38 -08:00
hidapi Fixed building when SDL_LIBUSB_DYNAMIC is defined 2021-01-07 10:23:55 -08:00
joystick Fixed bug 5445 - Incorrect Switch Pro Controller face buttons when SDL_HINT_GAMECONTROLLER_USE_BUTTON_LABELS disabled 2021-01-14 15:15:57 -08:00
libm Updated copyright for 2021 2021-01-02 10:25:38 -08:00
loadso Updated copyright for 2021 2021-01-02 10:25:38 -08:00
locale consistently use TEXT() macro with LoadLibrary() and GetModuleHandle() 2021-01-04 01:23:50 +03:00
main SDL_windows_main.c: use new WIN_StringToUTF8W macro 2021-01-04 10:20:10 +03:00
misc use WIN_StringToUTF8W instead of WIN_StringToUTF8 where needed (#2) 2021-01-05 15:50:02 +03:00
power Updated copyright for 2021 2021-01-02 10:25:38 -08:00
render opengl: More work on making line drawing match software renderer. 2021-01-11 20:40:11 -05:00
sensor use WIN_StringToUTF8W instead of WIN_StringToUTF8 where needed (#2) 2021-01-05 15:50:02 +03:00
stdlib Updated copyright for 2021 2021-01-02 10:25:38 -08:00
test Updated copyright for 2021 2021-01-02 10:25:38 -08:00
thread use WIN_StringToUTF8W instead of WIN_StringToUTF8 where needed (#2) 2021-01-05 15:50:02 +03:00
timer Updated copyright for 2021 2021-01-02 10:25:38 -08:00
video Fixed bug 5451 - Can't create EGLSurface in Wayland from SDLWindow (no EGLNativeWindow pointer) 2021-01-14 14:42:53 -08:00
SDL_assert_c.h Updated copyright for 2021 2021-01-02 10:25:38 -08:00
SDL_assert.c Updated copyright for 2021 2021-01-02 10:25:38 -08:00
SDL_dataqueue.c Updated copyright for 2021 2021-01-02 10:25:38 -08:00
SDL_dataqueue.h Updated copyright for 2021 2021-01-02 10:25:38 -08:00
SDL_error_c.h Updated copyright for 2021 2021-01-02 10:25:38 -08:00
SDL_error.c Updated copyright for 2021 2021-01-02 10:25:38 -08:00
SDL_hints_c.h Updated copyright for 2021 2021-01-02 10:25:38 -08:00
SDL_hints.c Updated copyright for 2021 2021-01-02 10:25:38 -08:00
SDL_internal.h Updated copyright for 2021 2021-01-02 10:25:38 -08:00
SDL_log.c Updated copyright for 2021 2021-01-02 10:25:38 -08:00
SDL.c Updated copyright for 2021 2021-01-02 10:25:38 -08:00