Commit Graph

10814 Commits

Author SHA1 Message Date
Ryan C. Gordon
d8c11a112c Merge SDL-ryan-batching-renderer branch to default. 2018-10-31 15:03:41 -04:00
Ryan C. Gordon
48f8490396 Closing SDL-ryan-batching-renderer branch.
--HG--
branch : SDL-ryan-batching-renderer
2018-10-31 14:50:20 -04:00
Ryan C. Gordon
abcd31b31d wayland: ask KDE protocol extension to use server-side decorations if possible.
--HG--
branch : SDL-ryan-batching-renderer
2018-10-29 10:14:59 -04:00
Ryan C. Gordon
747fc8f88b render: Add floating point versions of various draw APIs.
--HG--
branch : SDL-ryan-batching-renderer
2018-10-23 01:34:03 -04:00
Steven M. Vascellaro
b3ffbe6444 joystick: Add Linux mappings for "Xbox One Wireless Controller (Model 1708)"
Adds controller bindings to support the "Xbox One Wireless Controller
(Model 1708)" on Linux. The Model 1708 was released in 2016 alongside the
Xbox One S. It is the current model being sold by Microsoft as of writing.
(October 22, 2018)
2018-10-22 10:55:18 -04:00
Ozkan Sezer
cb06f666b0 fix NetBSD C90 build failure
src/vendor/SDL2/src/joystick/bsd/SDL_sysjoystick.c:353:5: error:
ISO C90 forbids mixed declarations and code [-Werror=declaration-after-statement]

reported by 'bch' at https://discourse.libsdl.org/t/25231
2018-11-01 12:35:00 +03:00
Cameron Gutman
dfb9d1558e Fix crash when GL_LoadFunctions()/GLES2_LoadFunctions() fails
https://bugzilla.libsdl.org/show_bug.cgi?id=4350

We can't safely call GL_DestroyRenderer() until GL_LoadFunctions()
succeeds because we will be missing functions that we try to use
when activating the renderer for destruction if we have an GL context.
2018-10-31 20:17:53 -07:00
Sam Lantinga
c0b8fffb4b Fixed bug 4349 - SDL_CreateWindow fails with KMS/DRM after upgrading Mesa to 18.2.3
Rainer Sabelka

After I did an upgrade of my arch Linux installation (resulting in an update of Mesa to version 18.2.3), all my SDL2 applications which use the KMS/DRM driver stopped working.
Reason: Creating a Window with SDL_CreateWindow failed because the call to EGL
eglCreateWindowSurface() returns an error "EGL_BAD_MATCH".
After investigating with the debugger I figured, that the configuration, which has been selected from the output of eglChooseConfig(), has an "EGL_NATIVE_VISUAL_ID" which does not match the "format" of the underlying gbm surface.

The attached patch fixes the problem. It does so, by mimicking Weston's behavior.
All configurations returned from eglChooseConfig() which have an visual_id different from the gbm format are discarded, and only from the remaining ones the "best" match is selected.
2018-10-31 15:16:51 -07:00
Sam Lantinga
f257f90c1c Fixed bug 4347 - Keyboard LEDs don't work on linux console
Rainer Sabelka

When using SLD2 on a Linux console with the KMS/DRM video backend and Linux evdev keyboard support, the caps lock, scroll lock, and num lock leds do not work.

The attached patch adds ioctls for setting the LED state in SDL_evdev_kbd.c
2018-10-31 15:01:20 -07:00
Sam Lantinga
e7fb0dfba1 Added tag release-2.0.9 for changeset 8feb5da6f2fb 2018-10-31 10:18:05 -07:00
Ozkan Sezer
9333e80281 rename os2 makefile so that 'make dist' catches it; update it a bit. 2018-10-30 20:11:02 +03:00
Sam Lantinga
0efec8ac7a Fixed bug 4188 - Software renderer SDL_RenderCopyEx blits corrupt image under certain cases
Sylvain

Re-opening this issue.

It fixes the test-case, but it introduces a regression with another bug (bug #4313).

So here's a new patch that activate cropping of the source surface to solve the issue.
It also reverts the wrong changeset.
It prevents unneeded colorkey error message.
2018-10-30 07:00:03 -07:00
Sam Lantinga
e24a00fa7e Backed out changeset 9bb50edccc46, SDL_JOYSTICK_HIDAPI is only used on iOS for Steam Controller support, which is not publicly available. 2018-10-29 19:58:59 -07:00
Ryan C. Gordon
cea92252b1 winmain: Patched to compile on C89 compilers. 2018-10-29 20:18:50 -04:00
Ryan C. Gordon
4add225d98 winmain: Don't use SDL_malloc (or SDL_stack_alloc, which might be malloc).
Otherwise, we are using the allocator before the app can set up its own hooks.

Now we use VirtualAlloc, and WideCharToMultiByte (because SDL_iconv uses
SDL_malloc, too!) to get ready to call into SDL_main.

This also makes console_wmain() call into the same routines as everything
else, so we don't have to deal with those allocations, too. Hopefully we
end up with the same results from GetCommandLine() as we do in wargv.

Fixes Bugzilla #4340.
2018-10-29 20:00:03 -04:00
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