Thu, 20 Apr 2017 13:00:54 -0400emscripten: keep track of pointer lock losses and maybe regrab pointer later.
Ryan C. Gordon [Thu, 20 Apr 2017 13:00:54 -0400] rev 10976
emscripten: keep track of pointer lock losses and maybe regrab pointer later.

If an Emscripten app is in relative mouse mode and the user presses Escape
(or whatever is appropriate), then the pointer lock is broken by the browser.

This keeps track of those losses, and next time the user presses a mouse
button down on the canvas, if the app is still meant to be in relative mouse
mode, we will attempt to regrab the pointer.

This makes it much more seamless for things like first-person shooters, and
the app doesn't need any manual intervention.

Tue, 18 Apr 2017 22:17:40 -0700Fix crash in SDL audio thread, by Juha Kuikka
Sam Lantinga [Tue, 18 Apr 2017 22:17:40 -0700] rev 10975
Fix crash in SDL audio thread, by Juha Kuikka

Wrong audio spec structure was populated with the internal callback, causing the audio thread to call a NULL pointer.

Thu, 13 Apr 2017 15:28:56 -0400atomic: Patched to compile on Android.
Ryan C. Gordon [Thu, 13 Apr 2017 15:28:56 -0400] rev 10974
atomic: Patched to compile on Android.

Thu, 13 Apr 2017 13:28:52 -0400atomic: favor compiler intrinsics for compare-and-swap over macOS APIs.
Ryan C. Gordon [Thu, 13 Apr 2017 13:28:52 -0400] rev 10973
atomic: favor compiler intrinsics for compare-and-swap over macOS APIs.

The OSAtomicCompareAndSwap* APIs are deprecated as of macOS 10.12.

Thu, 13 Apr 2017 13:22:23 -0400atomic: let Clang always use atomic_load_n if available.
Ryan C. Gordon [Thu, 13 Apr 2017 13:22:23 -0400] rev 10972
atomic: let Clang always use atomic_load_n if available.

(Apple's Clang reports itself as GCC 4.2.1 in preprocessor macros--the final
GNU C compiler Apple shipped--as of the macOS 10.12 SDK.)

Sun, 09 Apr 2017 23:00:54 +0200mir: Fixed typo in error messages.
Philipp Wiesemann [Sun, 09 Apr 2017 23:00:54 +0200] rev 10971
mir: Fixed typo in error messages.

Sun, 09 Apr 2017 23:00:42 +0200linux: Changed two variables to be static.
Philipp Wiesemann [Sun, 09 Apr 2017 23:00:42 +0200] rev 10970
linux: Changed two variables to be static.

Sun, 09 Apr 2017 23:00:26 +0200ios: Fixed compiler warnings about unused variables in demo.
Philipp Wiesemann [Sun, 09 Apr 2017 23:00:26 +0200] rev 10969
ios: Fixed compiler warnings about unused variables in demo.

Fri, 07 Apr 2017 20:17:30 -0400android: More robust fix for screen locking in landscape (thanks, Sylvain!).
Ryan C. Gordon [Fri, 07 Apr 2017 20:17:30 -0400] rev 10968
android: More robust fix for screen locking in landscape (thanks, Sylvain!).

Fixes Bugzilla #3562.

From Sylvain:

"With an android landscape application, if you quickly lock, then unlock your
device, you can see sometimes a quick glitch: screen badly draws in portrait,
then it correctly displays in landscape.

Not talking of a smooth rotation, it's a drawing glitch. And you need to have
a plain lock screen, with no model nor passphrase.


I think it happens because the call to "nativeResume()" occurs sometimes too
early.

It should be done once you have *all* those three things (in any sequence):
- onWindowsFocusChanged() set to true
- onResume() called
- a valid call to onSurfaceChanged()


Currently, this is not the case: you don't need to have onResume() called.
Just need to have isPaused, (eg onPaused()).
So "isPaused" should be renamed as "isResumedCalled".
But you also need some kind of isPaused state to make sure to don't call
nativePause() twice (and deadlocks...).
There are also redundant checks to "mHasFocus" and some creation of the
initialisation thread code from onSurfaceChanged() that could me moved.

So here's this patch:
- add some states, so we have cleaner transitions.
- make sure "onResume()" is called.
- some clean up
- it also goes faster in pause state (focus changed, onPause, without requiring isSurfaceReady which does seems to be needed).


Tested on a few devices and it removes the glitch.
But I haven't tested when the activity goes back to "init" state."

Fri, 07 Apr 2017 03:39:43 -0700Added support for the Cyborg V.3 Rumble Pad and the Mad Catz FightPad PRO
Sam Lantinga [Fri, 07 Apr 2017 03:39:43 -0700] rev 10967
Added support for the Cyborg V.3 Rumble Pad and the Mad Catz FightPad PRO