From 5b8f830e342b296d255969bbaec5a1a3522f1083 Mon Sep 17 00:00:00 2001 From: Sam Lantinga Date: Sat, 22 Oct 2022 09:24:28 -0700 Subject: [PATCH] Virtual joysticks don't need initial axis jitter protection Fixes https://github.com/libsdl-org/SDL/issues/6426 --- src/joystick/SDL_joystick.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/joystick/SDL_joystick.c b/src/joystick/SDL_joystick.c index cc29a72d8..5561afcd1 100644 --- a/src/joystick/SDL_joystick.c +++ b/src/joystick/SDL_joystick.c @@ -1530,7 +1530,8 @@ SDL_PrivateJoystickAxis(SDL_Joystick *joystick, Uint8 axis, Sint16 value) if (!info->sent_initial_value) { /* Make sure we don't send motion until there's real activity on this axis */ const int MAX_ALLOWED_JITTER = SDL_JOYSTICK_AXIS_MAX / 80; /* ShanWan PS3 controller needed 96 */ - if (SDL_abs(value - info->value) <= MAX_ALLOWED_JITTER) { + if (SDL_abs(value - info->value) <= MAX_ALLOWED_JITTER && + !SDL_IsJoystickVirtual(joystick->guid)) { return 0; } info->sent_initial_value = SDL_TRUE;