|
@@ -2721,6 +2721,13 @@ int SDL_PrivateJoystickTouchpad(SDL_Joystick *joystick, int touchpad, int finger
|
|
|
}
|
|
|
#endif
|
|
|
|
|
|
+ /* We ignore events if we don't have keyboard focus, except for touch release */
|
|
|
+ if (SDL_PrivateJoystickShouldIgnoreEvent()) {
|
|
|
+ if (event_type != SDL_CONTROLLERTOUCHPADUP) {
|
|
|
+ return 0;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
/* Update internal joystick state */
|
|
|
finger_info->state = state;
|
|
|
finger_info->x = x;
|
|
@@ -2750,6 +2757,11 @@ int SDL_PrivateJoystickSensor(SDL_Joystick *joystick, SDL_SensorType type, const
|
|
|
int i;
|
|
|
int posted = 0;
|
|
|
|
|
|
+ /* We ignore events if we don't have keyboard focus */
|
|
|
+ if (SDL_PrivateJoystickShouldIgnoreEvent()) {
|
|
|
+ return 0;
|
|
|
+ }
|
|
|
+
|
|
|
for (i = 0; i < joystick->nsensors; ++i) {
|
|
|
SDL_JoystickSensorInfo *sensor = &joystick->sensors[i];
|
|
|
|