Improved handling of binding buttons and axes (cherry picked from commit 71f3bf90edce26083056215124e65881f6c6ad26)
diff --git a/test/controllermap.c b/test/controllermap.c
index 2f3c5bd..cfd7d58 100644
--- a/test/controllermap.c
+++ b/test/controllermap.c
@@ -501,9 +501,7 @@ WatchJoystick(SDL_Joystick *joystick)
}
}
break;
- case SDL_JOYBALLMOTION:
- break;
- case SDL_JOYBUTTONDOWN:
+ case SDL_JOYBUTTONUP:
if (event.jbutton.which == nJoystickID) {
SDL_GameControllerExtendedBind binding;
@@ -546,10 +544,10 @@ WatchJoystick(SDL_Joystick *joystick)
SDL_Delay(15);
- /* Wait 100 ms for joystick events to stop coming in,
+ /* Wait 30 ms for joystick events to stop coming in,
in case a controller sends multiple events for a single control (e.g. axis and button for trigger)
*/
- if (s_unPendingAdvanceTime && SDL_GetTicks() - s_unPendingAdvanceTime >= 100) {
+ if (s_unPendingAdvanceTime && SDL_GetTicks() - s_unPendingAdvanceTime >= 30) {
SetCurrentBinding(s_iCurrentBinding + 1);
}
}