aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndrea Odetti <mariofutire@gmail.com>2017-10-10 20:54:17 +0100
committerAndrea Odetti <mariofutire@gmail.com>2017-10-16 19:37:20 +0000
commit5f5cebfa1bf5b0c69155b7a5a7c487990cdd6348 (patch)
tree27f78c4e13a5afe5a604754c112edb1b7562ab90
parent6f53e8b7d998a4ea744884571d850cfb150289eb (diff)
SDL Controllers: report the Joystick name
The controller name is a generic "XInput Controller", while the joystick is more meaningful (e.g.) "Microsoft X-Box 360 pad", the same as evdev. Change-Id: If93acdadb20f0601cc08069efed4718b4320d3a3 Reviewed-by: Andy Maloney <asmaloney@gmail.com> Reviewed-by: Andy Nichols <andy.nichols@qt.io>
-rw-r--r--src/plugins/gamepads/sdl2/qsdlgamepadbackend.cpp8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/plugins/gamepads/sdl2/qsdlgamepadbackend.cpp b/src/plugins/gamepads/sdl2/qsdlgamepadbackend.cpp
index b990868..6a7cee6 100644
--- a/src/plugins/gamepads/sdl2/qsdlgamepadbackend.cpp
+++ b/src/plugins/gamepads/sdl2/qsdlgamepadbackend.cpp
@@ -191,9 +191,13 @@ void QSdlGamepadBackend::addController(int index)
SDL_GameController *controller = SDL_GameControllerOpen(index);
if (controller) {
m_indexForController.insert(index, controller);
- int instanceID = SDL_JoystickInstanceID(SDL_GameControllerGetJoystick(controller));
+
+ SDL_Joystick *joystick = SDL_GameControllerGetJoystick(controller);
+
+ int instanceID = SDL_JoystickInstanceID(joystick);
m_instanceIdForIndex.insert(instanceID, index);
- const char *name = SDL_GameControllerName(controller);
+
+ const char *name = SDL_JoystickName(joystick);
//qDebug() << "Controller " << index << " added with instanceId: " << instanceID;
emit gamepadAdded(index);