Commit Graph

493 Commits (f0e406e994e087a9446d6e595e6faa78d818b435)

Author SHA1 Message Date
David Ludwig f0e406e994 WinRT: d3d11 compiled-shader code cleanup
I'm surprised this code even compiled, before this change.  It did, but regardless, here's a cleanup.
2013-12-25 22:27:58 -05:00
David Ludwig 4d16628f1c WinRT: made sure d3d11 debug mode doesn't get enabled by default
D3D11 debug mode got inadvertently enabled, in all cases, via changeset c0e68f3.  This change reverts that.
2013-12-25 22:05:18 -05:00
David Ludwig ce8057221a WinRT: compiled the d3d11 renderer's shaders into SDL itself
Previously, the shaders would get compiled separately, the output of which would need to be packaged into the app.  This change should make SDL's dll be the only binary needed to include SDL in a WinRT app.
2013-12-25 21:39:48 -05:00
David Ludwig ca867fc92d WinRT: prevented a potential race condition in the XInput backend
The race condition could've been triggered on device removal.
2013-12-25 14:42:38 -05:00
David Ludwig 8db33416a2 WinRT: added a TODO note regarding texture-[un]locking in the d3d11 renderer 2013-12-25 14:20:40 -05:00
David Ludwig 187f52e80f WinRT: renamed d3d11-internal struct, SDL_VertexShaderConstants, to just VertexShaderConstants
This is primarily to keep naming consistent with other shader-bound structs.
2013-12-25 14:17:49 -05:00
David Ludwig 2225493102 WinRT: moved contents of the d3d11 renderer's header file into its implementation file 2013-12-25 13:13:15 -05:00
David Ludwig d4ae392953 WinRT: simplified a potentially-common error message from D3D11_SetRenderTarget 2013-12-25 13:00:41 -05:00
David Ludwig b0df915737 WinRT: removed an unnecessary use of std::string in the d3d11 renderer 2013-12-25 12:58:37 -05:00
David Ludwig 10f2de1e69 WinRT: utilized SDL_SetError's return value in the d3d11 renderer 2013-12-25 12:52:16 -05:00
David Ludwig 43e27aa82e WinRT: minor d3d11 code cleanups 2013-12-25 12:48:47 -05:00
David Ludwig 8c8feb83e0 WinRT: made d3d11-spawned error messages trickle down
Some error messages had the potential to be overwritten/obscured.
2013-12-25 12:47:39 -05:00
David Ludwig 5fba7db23c WinRT: made d3d11-spawned error messages include the function name of failed calls 2013-12-25 12:43:26 -05:00
David Ludwig 3f1e3c303e WinRT: moved ill-performing XInput device-detection calls to a separate thread 2013-12-24 21:28:31 -05:00
David Ludwig 27e79b93ec WinRT: bug fix: game-controller/joystick button-down events weren't getting sent 2013-12-24 21:08:11 -05:00
David Ludwig 5e6aba0670 WinRT: better rendering performance via D3D11_USAGE_DYNAMIC 2013-12-22 21:13:35 -05:00
David Ludwig d92f0127d0 WinRT: enabled OpenGL ES 2 support by default
A copy of ANGLE/WinRT is still needed to run OpenGL content, but is not needed to compile SDL/WinRT.
2013-12-21 10:08:11 -05:00
David Ludwig 446a270487 WinRT: fixed bug: SDL_RenderReadPixels didn't work with certain orientations of the physical display 2013-12-10 22:34:08 -05:00
David Ludwig 679259473e WinRT: removed a now-complete TODO comment regarding Direct3D 11 2013-11-29 00:21:56 -05:00
David Ludwig b6f80d855e WinRT: enable the OpenGL ES 2 SDL_Renderer backend, if and when OpenGL ES 2 support is compiled in 2013-11-29 00:19:46 -05:00
David Ludwig ecfbb3f5dc WinRT: got the SDL-official OpenGL ES 2 changes working, in an experimental state 2013-11-28 22:59:21 -05:00
David Ludwig 7b5887b271 WinRT: implemented SDL_DetachThread() for WinRT 2013-11-28 22:24:13 -05:00
David Ludwig 46740a5a1c WinRT: merged with latest SDL 2.x/HG code
SDL 2.x recently accepted patches to enable OpenGL ES 2 support via Google's ANGLE library.  The thought is to try to eventually merge SDL/WinRT's OpenGL code with SDL-official's.
2013-11-28 22:09:21 -05:00
David Ludwig da0c0a4a33 WinRT: fixed bug: touch input coordinates weren't normalized [0..1]
Thanks to Pierre-Yves for pointing this out and providing a fix!
2013-11-28 21:15:05 -05:00
Sam Lantinga 9fa4da1353 Fixed windows build with conflict resolve 2013-11-28 02:31:32 -08:00
Sam Lantinga dee481350c Added alternative XBox 360 controller GUID on Linux
Leszek Godlewski

As described in the other thread
(http://lists.libsdl.org/pipermail/sdl-libsdl.org/2013-November/091997.html),
I've run into a case of SDL2 not recognizing a wireless Xbox 360
controller receiver properly on Debian Linux amd64 testing.
Apparently, the generated GUID is slightly different.

Device in question:
Bus 001 Device 015: ID 045e:0291 Microsoft Corp. Xbox 360 Wireless
Receiver for Windows
2013-11-27 10:29:43 -08:00
Sam Lantinga d2511d9ef9 Fixed bug 2260 - SDL_SetCursorGrab() is buggy on Windows
BurnSpamAddress

Steps to reproduce:
1. Grab the cursor with SDL_SetCursorGrab()
2. Alt-tab away from the window
3. Click on the titlebar of the window

This will cause the window to disappear underneath the taskbar!

This appears to be a general issue with ClipCursor() on windows, i.e. I am getting the same behavior if I call ClipCursor() directly.

It is caused by a feedback loop between the ClipCursor function and the modal resize/move event loop that handles mouse-based sizing on Windows.
2013-11-27 10:29:38 -08:00
Sam Lantinga fa4e4a643a Fixed large relative mouse motion when iconifying the SDL window.
Windows will move the window to -32000,-32000 when it is iconified, so we don't want to send mouse motion for iconic windows.
2013-11-27 10:29:32 -08:00
Sam Lantinga 2bb344d6dc Don't crash when no WM is present.
CR: Sam Lantinga.
2013-11-27 10:29:27 -08:00
Sam Lantinga 8574c0815c Fixed bug 2274 - SDL_ceil is incorrectly implemented when HAVE_LIBC is not defined
Ghassan Al-Mashareqa

The SDL_ceil function is implemented incorrectly when HAVE_CEIL is not defined (HAVE_LIBC not defined).

The following code:

    double val = SDL_ceil(2.3);
    printf("%g", val);

prints "2.0", as STD_ceil is defined as:

    double
    SDL_ceil(double x)
    {
    #ifdef HAVE_CEIL
        return ceil(x);
    #else
        return (double)(int)((x)+0.5);
    #endif /* HAVE_CEIL */
    }

This functions is used in the SDL_BuildAudioResampleCVT function of the audio subsystem (SDL_audiocvt.c), and causes a bug in that function.
2013-11-27 00:29:46 -08:00
Gabriel Jacobo c343eab67a Fixes #2271, Add KD detection under CMake by Scott Percival 2013-11-26 11:50:54 -03:00
Gabriel Jacobo 96fe749fc7 Fixes #2272, typo in CMakeLists.txt (thanks Boris Bendovsky!) 2013-11-26 11:47:52 -03:00
Gabriel Jacobo 1ad0d24828 [Android] Fixes #2228, reworked touch code
Lets Android take care of which is the primary pointer (the one acting as the
mouse in SDL), reorganized the Java side code as well to make it easier to
understand.
2013-11-25 12:28:09 -03:00
Philipp Wiesemann c933166401 Fixed bug 2258 - Crash when using Android clipboard
chw

The Android clipboard manager methods must be called from the UI thread,
otherwise crashes of the dalvikvm happen.
2013-11-23 23:38:16 +01:00
Ryan C. Gordon e9af6dcd93 Fixed a few public APIs that we accidentally neglected to mark as SDLCALL.
Fixes Bugzilla #2262.
2013-11-23 15:52:49 -05:00
Philipp Wiesemann 5aa702fe74 Removed second return statement. 2013-11-23 18:37:36 +01:00
Philipp Wiesemann 01acbd389b Fixed spaces in license comment. 2013-11-23 18:34:27 +01:00
Philipp Wiesemann 2aa4974bf9 Removed include of no more needed header. 2013-11-23 18:29:36 +01:00
Gabriel Jacobo 7a18a6747b [Android] Fixes #2264, handle joystick open/closed state properly 2013-11-23 09:47:25 -03:00
Sam Lantinga a3bb007ee5 Fixed double-free of the window shape path 2013-11-23 02:02:29 -08:00
Gabriel Jacobo 4abeed93c7 Fixes compilation on Mingw. 2013-11-22 14:19:52 -03:00
Gabriel Jacobo 61959aa67b OpenGL ES support for Windows 2013-11-22 13:24:53 -03:00
Gabriel Jacobo 45dbff2ee4 [Android] Fixes #2247, enable hardware acceleration by default.
Setting android:hardwareAccelerated="true" seems to fix some random behaviors
in certain devices like the XperiaE.

Ref: http://developer.android.com/guide/topics/graphics/hardware-accel.html
2013-11-22 10:26:28 -03:00
Ryan C. Gordon a218717111 Query version for X11 XInput2 multitouch separately from base XInput2. 2013-11-20 21:17:26 -05:00
Gabriel Jacobo 9095952ac4 Clean up X11 OpenGL ES backend
If you really need to switch between OpenGL and GLES context types, just issue
a SDL_GL_UnloadLibrary manually.
2013-11-20 12:51:18 -03:00
Ryan C. Gordon 2f30140418 Fixed SONAME lookup for runtime loading of shared libraries in CMake project.
Fixes Bugzilla #2249.
2013-11-19 15:25:00 -05:00
Ryan C. Gordon 825a68983a -fvisibility=hidden is no longer a requirement for dynamic X11.
We don't clash with Xlib symbols anymore.
2013-11-19 15:00:39 -05:00
Gabriel Jacobo 131a072503 Find the best EGL config available between those returned by eglChooseConfig
This existed in the old Android Java code, it got lost in the migration to the
commong EGL code.
2013-11-19 11:04:05 -03:00
Gabriel Jacobo 47139fb3eb Adds testgles2
Source code copied from: https://github.com/fantasydr/sdl-2.0-gles (thanks!)

Minor fixes, configure script changes done by me.
2013-11-19 10:56:38 -03:00
Gabriel Jacobo fdfea4ad1f [Android] Try to improve handling of DPAD|GAMEPAD + KEYBOARD devices
It seems some devices report themselves as DPAD or GAMEPAD and KEYBOARD as well,
and we need to route different keycodes to different parts of SDL.
2013-11-19 10:00:05 -03:00