Sat, 07 Mar 2020 17:20:04 -0800Fix incorrect player index when assigning a joystick the same index twice
Cameron Gutman [Sat, 07 Mar 2020 17:20:04 -0800] rev 13595
Fix incorrect player index when assigning a joystick the same index twice

Prior to this fix, we would hit the existing_instance >= 0 case and move the joystick
again to a different index than the one requested by the caller. It also breaks the assumption
that a SDL_JoystickID is only present in SDL_joystick_players at one location.

Sat, 07 Mar 2020 13:59:42 -0800direct3d: Don't attempt to create zero sized vertex buffer
Cameron Gutman [Sat, 07 Mar 2020 13:59:42 -0800] rev 13594
direct3d: Don't attempt to create zero sized vertex buffer

Sat, 07 Mar 2020 13:17:28 -0800Added support for indicating player index on DS4 controllers
Cameron Gutman [Sat, 07 Mar 2020 13:17:28 -0800] rev 13593
Added support for indicating player index on DS4 controllers

Sat, 07 Mar 2020 08:48:04 -0800Fixed regression in bug 4966 - KMSDRM: Add dynamic modeset support
Sam Lantinga [Sat, 07 Mar 2020 08:48:04 -0800] rev 13592
Fixed regression in bug 4966 - KMSDRM: Add dynamic modeset support

Anthony Pesch

I was just communicating with one of the Retropie developers regarding this.

This change removed the forced window focus change on creation (https://github.com/inolen/SDL-mirror/commit/3534cb3793f4744509f020f1267f510ec7099366) as part of the change no longer assumes there's only a single window being created. This was perhaps an over-aggressive removal.

Due to that change, joystick events are only received if SDL_SetKeyboardFocus is called explicitly, or if the app has specified SDL_HINT_JOYSTICK_ALLOW_BACKGROUND_EVENTS.

I think that part of my change should be reverted to continue setting mouse / keyboard focus to the window being created. If SDL_WINDOW_INPUT_FOCUS is to be used as an input flag the code could be conditional, but that would still leave existing software broken.

Thu, 05 Mar 2020 08:43:16 -0800Fixed java.lang.NullPointerException: Attempt to invoke virtual method 'android.view.WindowManager android.app.Activity.getWindowManager()' on a null object reference
Sam Lantinga [Thu, 05 Mar 2020 08:43:16 -0800] rev 13591
Fixed java.lang.NullPointerException: Attempt to invoke virtual method 'android.view.WindowManager android.app.Activity.getWindowManager()' on a null object reference

Tue, 03 Mar 2020 12:31:41 -0500winrt: Wait for EnumerationCompleted before leaving WASAPI_EnumerateEndpoints
Ethan Lee [Tue, 03 Mar 2020 12:31:41 -0500] rev 13590
winrt: Wait for EnumerationCompleted before leaving WASAPI_EnumerateEndpoints

Wed, 04 Mar 2020 17:10:37 -0800Fixed rumble for third-party Nintento Switch Pro controllers
Sam Lantinga [Wed, 04 Mar 2020 17:10:37 -0800] rev 13589
Fixed rumble for third-party Nintento Switch Pro controllers

The 8BitDo SF30 Pro Gamepad will generate a single motor pulse for each rumble message, so we need to do this frequently to have continous rumble on this device.

Wed, 04 Mar 2020 14:59:44 -0800Fixed crash when a controller is disconnected while rumble is pending
Sam Lantinga [Wed, 04 Mar 2020 14:59:44 -0800] rev 13588
Fixed crash when a controller is disconnected while rumble is pending

Wed, 04 Mar 2020 09:42:10 -0800Fixed handling the guide button with both V1 and V2 of the Xbox One Bluetooth wireless protocols
Sam Lantinga [Wed, 04 Mar 2020 09:42:10 -0800] rev 13587
Fixed handling the guide button with both V1 and V2 of the Xbox One Bluetooth wireless protocols

Wed, 04 Mar 2020 09:42:08 -0800Fixed using more than one Xbox Bluetooth controller
Sam Lantinga [Wed, 04 Mar 2020 09:42:08 -0800] rev 13586
Fixed using more than one Xbox Bluetooth controller
Don't prevent duplicate devices using hidraw, instead libusb takes precedence and all hidraw devices that aren't handled by libusb are available