Commit Graph

11399 Commits

Author SHA1 Message Date
Ryan C. Gordon
ac3ed1ef93 README-ios: added a note about enabling hidapi. 2018-10-29 15:51:38 -04:00
Michał Janiszewski
e4a84752cb Add and update include guards
Include guards in most changed files were missing, I added them keeping
the same style as other SDL files. In some cases I moved the include
guards around to be the first thing the header has to take advantage of
any possible improvements compiler may have for inclusion guards.
2018-10-28 21:36:48 +01:00
Sam Lantinga
e84cf33c51 Fixed bug 4335 - Android NDK build error
dmuratshin

LOCAL_SRC_FILES shouldn't use $(LOCAL_PATH)
2018-10-28 14:17:21 -07:00
Sam Lantinga
ccf059a039 Updated Android project files and documentation 2018-10-28 10:31:06 -07:00
Sam Lantinga
b8ffbe177a This change looks okay in the general case.
If we run into problems where these events aren't dispatched (initialized on a different thread than the main thread?) we may need to create a separate thread to handle device notifications like we do with the windows joystick subsystem.
2018-10-26 20:20:28 -07:00
Ryan C. Gordon
a404e5056f hidapi: Don't run a separate event loop for device notifications.
Fixes Bugzilla #4286.
2018-10-26 14:43:39 -04:00
Sam Lantinga
933bdaf91b Added patch note for SDL_GameControllerGetPlayerIndex() and friends 2018-10-26 09:49:27 -07:00
Sam Lantinga
e6472f3cb3 Don't build SDL_JOYSTICK_HIDAPI by default on iOS
If you enable this, you'll need to link with CoreBluetooth.framework and add something like this to your Info.plist:
<key>NSBluetoothPeripheralUsageDescription</key>
<string>MyApp would like to remain connected to nearby bluetooth Game Controllers and Game Pads even when you're not using the app.</string>
2018-10-26 09:27:31 -07:00
Sam Lantinga
da9d1fdad4 Generalized the XInput user index into a player index 2018-10-25 16:53:14 -07:00
Sam Lantinga
67832fdf10 Fixed initializing XInput user index 2018-10-25 13:22:34 -07:00
Sam Lantinga
e8f3a27057 Added SDL_JoystickGetXInputUserIndex() 2018-10-25 12:54:42 -07:00
Sam Lantinga
95bd760475 Added vi style for the Emscripten joystick code 2018-10-25 12:54:39 -07:00
Ozkan Sezer
d035b946dc CMakeLists.txt: set dylib version numbers properly. (bug #2915.) 2018-10-25 11:11:02 +03:00
Sam Lantinga
b38f2beac8 Fixed reinitializing the SDL joystick subsystem on Android 2018-10-23 12:40:25 -07:00
Ozkan Sezer
3a62b00485 fix permissions 2018-10-23 09:10:02 +03:00
Sam Lantinga
a678430946 Change our fullscreen wait logic to only wait if we need to. (thanks Rachel!) 2018-10-22 14:55:47 -07:00
Sam Lantinga
4b06169440 Handle failure to load hidapi gracefully 2018-10-22 14:55:45 -07:00
Sam Lantinga
ddee9a366a Add exception handling to Android hidapi. 2018-10-22 14:55:42 -07:00
Ryan C. Gordon
135273d029 wasapi/win32: Sort initial device lists by device GUID.
This makes an unchanged set of hardware always report devices in the same
order on each run.
2018-10-21 22:40:17 -04:00
Ryan C. Gordon
d47f7c3505 x11: Fixed incorrect function signature for XkbSetDetectableAutoRepeat.
It needs to use Bool (which is an int) and not BOOL (which is CARD8), which
causes problems on platforms with different byte order and alignment, etc.

Fixes Bugzilla #4326.
2018-10-20 21:35:48 -04:00
Ryan C. Gordon
32bec112ae cocoa: Put a mutex around GL_SwapBuffers.
Prevents deadlock when swapping two different GL contexts on two different
threads at the same time on macOS 10.14 ("Mojave").

Fixes Bugzilla #4278.
2018-10-18 23:38:27 -04:00
Ryan C. Gordon
5643ca9135 cocoa: Fix OpenGL rendering on macOS 10.14 ("Mojave").
Fixes Bugzilla #4272.
(transplanted from 86dcfbbcacaf0c4a556501644af11b7f99b4352d)

--HG--
branch : SDL-ryan-batching-renderer
2018-10-18 12:05:05 -04:00
Ryan C. Gordon
d3ede83c89 cocoa: GL_GetDrawableSize only uses -[NSView convertRectToBacking] for highDPI.
On Mojave, this will report large numbers for retina displays in fullscreen
mode, which isn't how it works on previous versions.
(transplanted from a02aa66a76d84f7cb4181125c926e978b2284a57)

--HG--
branch : SDL-ryan-batching-renderer
2018-10-18 11:59:48 -04:00
Ryan C. Gordon
01db3e1312 Small stack allocations fall back to malloc if they're unexpectedly large.
--HG--
branch : SDL-ryan-batching-renderer
2018-10-22 20:50:32 -04:00
Ryan C. Gordon
3b2052d7ce opengles2: Fixed several incorrect things.
--HG--
branch : SDL-ryan-batching-renderer
2018-10-06 17:08:04 -04:00
Ryan C. Gordon
da824a43ee opengles2: removed useless memcpy.
--HG--
branch : SDL-ryan-batching-renderer
2018-10-04 21:10:42 -04:00
Ryan C. Gordon
6427dcb63a opengles2: Fixed incorrect cliprect state.
--HG--
branch : SDL-ryan-batching-renderer
2018-10-04 20:22:28 -04:00
Ryan C. Gordon
5139897746 metal: CopyEx transform matrix must be aligned for constant buffer access.
--HG--
branch : SDL-ryan-batching-renderer
2018-10-04 20:21:58 -04:00
Ryan C. Gordon
8646f4d1bb metal: Don't try to create a zero-byte vertex buffer.
(Which will cause a crash in Metal, or an assert in the validation layer.)

--HG--
branch : SDL-ryan-batching-renderer
2018-10-04 20:21:23 -04:00
Ryan C. Gordon
eae900576a render: Added SDL_RenderFlush().
--HG--
branch : SDL-ryan-batching-renderer
2018-10-04 16:34:44 -04:00
Ryan C. Gordon
24b3fecafe render: Move PSP backend to new interface.
I have no idea if this works (or if it ever worked, having now examined this
code), as I have no way to compile or test this.

If it's broken, send patches.  :)

--HG--
branch : SDL-ryan-batching-renderer
2018-10-04 16:11:43 -04:00
Ryan C. Gordon
9c648257e9 render: moved software renderer to new interface.
--HG--
branch : SDL-ryan-batching-renderer
2018-10-03 23:37:29 -04:00
Ryan C. Gordon
ec9eaebae3 render: D3D11 now cycles through 8 vertex buffers.
This means it doesn't have to block while the current frame finishes using the
vertex buffer; it just moves on to the next, probably-not-in-use buffer.

--HG--
branch : SDL-ryan-batching-renderer
2018-10-03 19:05:20 -04:00
Ryan C. Gordon
3d3d3b7ed2 render: D3D11 renderer patched to compile.
--HG--
branch : SDL-ryan-batching-renderer
2018-10-03 18:23:53 -04:00
Ryan C. Gordon
8f69685114 render: first (untested!) shot at converting D3D11 renderer to new interfaces.
Probably doesn't even compile yet.

--HG--
branch : SDL-ryan-batching-renderer
2018-10-03 00:52:37 -04:00
Ryan C. Gordon
aa25eac8b2 render: Make the GL backends cache and defer more state changes.
--HG--
branch : SDL-ryan-batching-renderer
2018-10-01 22:53:45 -04:00
Ryan C. Gordon
ed989b22d3 render: D3D9 doesn't need to check for stream offset support anymore.
We don't use offsets at all now. Too slow.

--HG--
branch : SDL-ryan-batching-renderer
2018-10-01 13:41:15 -04:00
Ryan C. Gordon
0dba45d345 render: Set the D3D9 stream source once and choose offsets during draw calls.
This is _much_ faster than setting the offsets with SetStreamSource!

--HG--
branch : SDL-ryan-batching-renderer
2018-10-01 11:32:08 -04:00
Ryan C. Gordon
2cab97f9dc render: Patched to compile.
--HG--
branch : SDL-ryan-batching-renderer
2018-10-01 03:02:54 -04:00
Ryan C. Gordon
1b0158b580 render: first shot at moving Direct3D 9 backend to new interface. Untested!
--HG--
branch : SDL-ryan-batching-renderer
2018-10-01 01:23:02 -04:00
Ryan C. Gordon
faad181a71 render: patched to compile on C89 compilers, other untested code fixes.
--HG--
branch : SDL-ryan-batching-renderer
2018-09-29 04:00:38 +00:00
Ryan C. Gordon
408e4c9099 opengles1: set some non-zero drawstate defaults.
--HG--
branch : SDL-ryan-batching-renderer
2018-09-28 19:48:14 -04:00
Ryan C. Gordon
14c2b06a9c render: moved opengles2 over to new interface.
--HG--
branch : SDL-ryan-batching-renderer
2018-09-28 19:47:44 -04:00
Ryan C. Gordon
a6eda22a6a cocoa: Force an OpenGL context update when the window becomes key.
Fixes missing rendering on macOS 10.14 ("Mojave").

Fixes Bugzilla #4272.
(transplanted from 55489adbb75c8eb7c7719a3f9c85a15d06df2f27)

--HG--
branch : SDL-ryan-batching-renderer
2018-09-26 20:10:32 -04:00
Ryan C. Gordon
7f0ebb3cd4 render: Do state cache improvements for GLES1, too.
--HG--
branch : SDL-ryan-batching-renderer
2018-09-25 21:35:09 -04:00
Ryan C. Gordon
b7fa8ed2af render: OpenGL renderer now caches some state, to improve non-batching mode.
(other minor bug fixes in here, too)

--HG--
branch : SDL-ryan-batching-renderer
2018-09-25 19:20:31 -04:00
Ryan C. Gordon
268a7ace96 render: Move non-batching flushes to different place.
This lets us batch up a few commands that are all related to the same API
call.

--HG--
branch : SDL-ryan-batching-renderer
2018-09-25 17:04:47 -04:00
Ryan C. Gordon
fa8e424e86 render: opengles renderer actually works now. :)
--HG--
branch : SDL-ryan-batching-renderer
2018-09-25 16:17:10 -04:00
Ryan C. Gordon
efa07a8ede render: First shot at converting opengles renderer to new interfaces.
--HG--
branch : SDL-ryan-batching-renderer
2018-09-25 10:41:25 -04:00
Ryan C. Gordon
b0e46a4a68 render: get rid of the predeclared functions in the GL and Metal renderers.
(others to come as I continue to update render backends!)

--HG--
branch : SDL-ryan-batching-renderer
2018-09-24 12:30:47 -04:00