Tue, 05 Jun 2018 12:46:11 -0700Add Android support for relative mouse mode to SDL.
Sam Lantinga <slouken@libsdl.org> [Tue, 05 Jun 2018 12:46:11 -0700] rev 12007
Add Android support for relative mouse mode to SDL.

Tue, 05 Jun 2018 12:46:09 -0700Fix creating a minimized window in SDL to not cause focus to be stolen (because ShowWindow( hwnd, SW_MINIMIZE ) would be called after creation, thus changing focus to the prior window based on some per-app list in windows, rather than the window being created with WS_MINIMIZED to start with).
Sam Lantinga <slouken@libsdl.org> [Tue, 05 Jun 2018 12:46:09 -0700] rev 12006
Fix creating a minimized window in SDL to not cause focus to be stolen (because ShowWindow( hwnd, SW_MINIMIZE ) would be called after creation, thus changing focus to the prior window based on some per-app list in windows, rather than the window being created with WS_MINIMIZED to start with).

This means we have to consider SDL_WINDOW_MINIMIZED a window creation flag, but on non-windows platforms we just remove it and let the normal FinishWindowCreation re-apply and do the minimize as I have no idea what is right on them or if anything should change.

CR: Phil

Fri, 01 Jun 2018 19:43:53 -0700Fixed bug 4184 - jack audio driver fails in presence of midi ports
Sam Lantinga <slouken@libsdl.org> [Fri, 01 Jun 2018 19:43:53 -0700] rev 12005
Fixed bug 4184 - jack audio driver fails in presence of midi ports

Martin Širokov

Launching an SDL application with SDL_AUDIODRIVER=jack, and then calling SDL_OpenAudioDevice() with whatever parameters fails with an error like this one:

SDL_OpenAudioDevice: Couldn't connect JACK ports: SDL:sdl_jack_output_0 => system:midi_playback_1

This happens because JACK_OpenDevice in src/audio/jack/SDL_jackaudio.c blindly tries to connect to all input ports without checking whether they are for audio or midi.

The fix is to check port types and ignore all non audio ports. Also I removed devports field from struct SDL_PrivateAudioData, because it's never really used and removing unused ports from it would be PITA.

Tue, 29 May 2018 11:18:01 -0700Added support for Android relative mouse mode on API 24 and above
Sam Lantinga <slouken@libsdl.org> [Tue, 29 May 2018 11:18:01 -0700] rev 12004
Added support for Android relative mouse mode on API 24 and above

Tue, 29 May 2018 08:03:44 -0700Added a new GUID for DS3 controller connected over bluetooth, for both Sony and Shanwan (thanks William!)
Sam Lantinga <slouken@libsdl.org> [Tue, 29 May 2018 08:03:44 -0700] rev 12003
Added a new GUID for DS3 controller connected over bluetooth, for both Sony and Shanwan (thanks William!)

Sun, 27 May 2018 20:30:03 -0400metal: contrary to documentation, we need to set the drawableSize explicitly.
Ryan C. Gordon <icculus@icculus.org> [Sun, 27 May 2018 20:30:03 -0400] rev 12002
metal: contrary to documentation, we need to set the drawableSize explicitly.

Fixes Bugzilla #4149.

Thu, 24 May 2018 07:30:24 -0700Fixed bug 4169 - Crash due to audio session observer race condition
Sam Lantinga <slouken@libsdl.org> [Thu, 24 May 2018 07:30:24 -0700] rev 12001
Fixed bug 4169 - Crash due to audio session observer race condition

Jona

The following explains why this bug was happening:
This crash was caused because the audio session was being set as active [session setActive:YES error:&err] when the audio device was actually being CLOSED. Certain cases the audio session being set to active would fail and the method would return right away. Because of the way the error was handled we never removed the SDLInterruptionListener thus leaking it. Later when an interruption was received the THIS_ object would contain a pointer to an already released device causing the crash.

The fix:
When only one device remained open and it was being closed we needed to set the audio session as NOT active and completely ignore the returned error to successfully release the SDLInterruptionListener. I think the user assumed that the open_playback_devices and open_capture_devices would equal 0 when all of them where closed but the truth is that at the end of the closing process that the open devices count is decremented.

Wed, 23 May 2018 17:15:37 -0700Added support for the NVIDIA SHIELD handheld gaming device
Sam Lantinga <slouken@libsdl.org> [Wed, 23 May 2018 17:15:37 -0700] rev 12000
Added support for the NVIDIA SHIELD handheld gaming device

Wed, 23 May 2018 17:15:35 -0700Better fix for axis sorting with some Android controllers
Sam Lantinga <slouken@libsdl.org> [Wed, 23 May 2018 17:15:35 -0700] rev 11999
Better fix for axis sorting with some Android controllers

Wed, 23 May 2018 17:15:33 -0700Actually left trigger is motion axis 17 and right trigger is motion axis 18, which will map in that order to SDL axes.
Sam Lantinga <slouken@libsdl.org> [Wed, 23 May 2018 17:15:33 -0700] rev 11998
Actually left trigger is motion axis 17 and right trigger is motion axis 18, which will map in that order to SDL axes.