Commit graph

6627 commits

Author SHA1 Message Date
Sam Lantinga
a78645c99d Explicitly initialize COM with multi-threaded support.
This is the safest option for applications that use COM, multi-threaded or not.
2013-12-23 10:54:27 -08:00
Gabriel Jacobo
fc92786842 [Android] Define SDL_VIDEO_OPENGL_ES2 2013-12-16 10:03:26 -03:00
Ryan C. Gordon
7137e0c2e8 Enable ccache for Raspberry Pi buildbot script. 2013-12-15 00:21:42 -05:00
Gabriel Jacobo
3308d271b5 Wayland support
Based on the original port to Wayland by: Joel Teichroeb, Benjamin Franzke, Scott Moreau, et al.

Additional changes in this commit, done by me:

* Wayland uses the common EGL framework
* EGL can now create a desktop OpenGL context
* testgl2 loads GL functions dynamically, no need to link to libGL anymore
* Assorted fixes to the Wayland backend

Tested on the Weston Compositor (v1.0.5) that ships with Ubuntu 13.10,
running Weston under X. Tests ran: testrendercopyex (all backends), testgl2, testgles2,testintersections
2013-12-14 20:18:43 -03:00
Gabriel Jacobo
b71add8edb Context sharing for EGL 2013-12-13 09:48:12 -03:00
Gabriel Jacobo
99198c8c9f [Android] Poll joysticks every three seconds 2013-12-12 14:55:33 -03:00
Sam Lantinga
f8e51377ab Fixed bug 2050 - Obvious bugs in SDL_ltoa and SDL_lltoa
pjz

SDL_ltoa(-2147483648,s,10) only returns "-" because there is a bug in the code:

    if ( value < 0 ) {
        *bufp++ = '-';
        value = -value;
    }

but -(-2147483648) is still -2147483648 (0x80000000) as signed int (or long), so the following loop doesn't run at all. Similar bug are also in SDL_lltoa.

BTW, there is no sanity check for radix.
2013-12-11 21:17:24 -08:00
Sam Lantinga
37b1229722 Fixed bug 2294 - testdrawchessboard.c Sets the render color alpha to 0x0.
Brandon Schaefer

This means everything will render black if the software rendering backend selects a pixel format that supports alpha. So it seems best to at lease assume alpha is supported.
2013-12-11 21:13:45 -08:00
Gabriel Jacobo
ae184f5e89 [Android] Hotplugging support for joysticks 2013-12-10 16:24:11 -03:00
Ryan C. Gordon
924207a299 Hook up SDL_acos and SDL_asin properly. 2013-12-09 15:17:20 -05:00
Sam Lantinga
1509359de3 Associate the environment with any thread that calls Android_JNI_GetEnv(), in case it's been manually created with pthread_create() or C++11. 2013-12-07 11:19:52 -08:00
Sam Lantinga
713109176d Fixed crash if no window has keyboard focus 2013-12-06 16:12:18 -08:00
Sam Lantinga
db521ea67c Fixed detecting the wired XBox 360 controller on Linux
Also added some more debug output to detect issues
2013-12-06 09:13:31 -08:00
Sam Lantinga
4c35a7b408 Fixed compiler warning on Visual Studio 2013-12-06 08:24:00 -08:00
Sam Lantinga
b23701455b Added missing header for file IO 2013-12-05 09:54:22 -08:00
Sam Lantinga
e191f1f872 Added code missed in the resolve 2013-12-05 09:29:04 -08:00
Sam Lantinga
e2229f727f Clean up the cursor clipping area when quitting SDL.
This fixes the cursor being clipped after the streaming client quits when streaming Dungeons of Dredmor
2013-12-05 09:14:56 -08:00
Gabriel Jacobo
b3fa9a3e55 [Android] Handle native thread finishing when not commanded from the Java side 2013-12-05 10:51:38 -03:00
Gabriel Jacobo
31aa9d5b81 [Android] Signal the resume semaphore after pushing the relevant events
Ref: Request in #2242
2013-12-03 12:09:58 -03:00
Gabriel Jacobo
137f4aedc1 Adds SDL_GameControllerAddMappingsFromRW, updates controllermap
SDL_GameControllerAddMappingsFromFile is now a convenience macro.

controllermap can now skip bindings by pressing space or clicking/touching the
screen.
2013-12-03 12:01:28 -03:00
Sam Lantinga
f728c688d1 Fixed error return value in SDL_EGL_CreateSurface(), thanks to Mike Kasprzak 2013-12-02 23:54:35 -08:00
Gabriel Jacobo
a2388728b7 Adding WhatsNew.txt changes
...before I forget them.
2013-12-02 19:51:48 -03:00
Gabriel Jacobo
9054b03edb Adds controllermap utility to test suite. 2013-12-02 19:35:04 -03:00
Gabriel Jacobo
64ff6df0b8 Adds SDL_GameControllerAddMappingsFromFile 2013-12-02 19:34:08 -03:00
Gabriel Jacobo
d2984a16ad Select EGL config when creating the EGL surface 2013-12-02 10:08:57 -03:00
Gabriel Jacobo
7f809e64d8 Improve Android pause/resume behavior. 2013-11-29 10:06:08 -03:00
Sam Lantinga
e2be1694c1 Fixed windows build with conflict resolve 2013-11-28 02:31:32 -08:00
Sam Lantinga
8835c39374 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
94adb0c939 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
4c087a3780 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
aee889c1bd Don't crash when no WM is present.
CR: Sam Lantinga.
2013-11-27 10:29:27 -08:00
Sam Lantinga
ef7498a5c3 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
7e840cc03e Fixes #2271, Add KD detection under CMake by Scott Percival 2013-11-26 11:50:54 -03:00
Gabriel Jacobo
b3874f57ce Fixes #2272, typo in CMakeLists.txt (thanks Boris Bendovsky!) 2013-11-26 11:47:52 -03:00
Gabriel Jacobo
fc300345e6 [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
2ca1d5c980 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
d2671e8a86 Fixed a few public APIs that we accidentally neglected to mark as SDLCALL.
Fixes Bugzilla #2262.

--HG--
extra : rebase_source : ba28833dc17e3cb29c4566c7396f5e005d448576
2013-11-23 15:52:49 -05:00
Philipp Wiesemann
10ad7c5969 Removed second return statement. 2013-11-23 18:37:36 +01:00
Philipp Wiesemann
4db223b3a1 Fixed spaces in license comment. 2013-11-23 18:34:27 +01:00
Philipp Wiesemann
8106c1a455 Removed include of no more needed header. 2013-11-23 18:29:36 +01:00
Gabriel Jacobo
23434404ae [Android] Fixes #2264, handle joystick open/closed state properly 2013-11-23 09:47:25 -03:00
Sam Lantinga
6ad1c0122c Fixed double-free of the window shape path 2013-11-23 02:02:29 -08:00
Gabriel Jacobo
d024ab8b10 Fixes compilation on Mingw. 2013-11-22 14:19:52 -03:00
Gabriel Jacobo
f21d3e7e2a OpenGL ES support for Windows 2013-11-22 13:24:53 -03:00
Gabriel Jacobo
239ba53a4c [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
a8fa54cfd7 Query version for X11 XInput2 multitouch separately from base XInput2. 2013-11-20 21:17:26 -05:00
Gabriel Jacobo
8e6405547d 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
c843ed5545 Fixed SONAME lookup for runtime loading of shared libraries in CMake project.
Fixes Bugzilla #2249.

--HG--
extra : rebase_source : 5c636b43fb41bff6ecad963eafa6268d317403cd
2013-11-19 15:25:00 -05:00
Ryan C. Gordon
a047b562eb -fvisibility=hidden is no longer a requirement for dynamic X11.
We don't clash with Xlib symbols anymore.

--HG--
extra : rebase_source : 0efa50cb3e047dbfb0bdf0fd804a86c819305b83
2013-11-19 15:00:39 -05:00
Gabriel Jacobo
337a61cc3a 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