Commit Graph

1187 Commits

Author SHA1 Message Date
Edward Rudd 5fb0be3079 Rework haptic backend to properly support hotplugging of haptic devices.
* currently only linux backend updated.
2014-02-04 15:44:09 -05:00
Edward Rudd a98c477bc8 allow safely quitting the hotplug test by pressing button 0 on the joystick 2014-02-04 15:40:51 -05:00
Brandon Schaefer 25fcc1959e * Remove android based workaround, it is handled in SDL_EGL_GetProcAddress. 2014-02-04 12:28:35 -08:00
Ryan C. Gordon c2b5da9733 Added SDL_GetAssertionHandler() and SDL_GetDefaultAssertionHandler(). 2014-02-04 11:38:40 -05:00
Edward Rudd e6dce68f8e testhotplug: Actually log the SDL_Error that occured on failures 2014-02-03 23:08:53 -05:00
Edward Rudd 8512f1b87c add logging for the case when haptic is not detected on the joystick as well. 2014-02-03 23:01:19 -05:00
Edward Rudd e0e6b2a461 add simple test showing off hotplugging of joysticks w/ haptic. 2014-02-03 22:52:18 -05:00
Ryan C. Gordon c8ad30bc90 Removed -force_cpusubtype_ALL cflag from Mac builds.
This was for PowerPC G3 (!) compatibility, and Clang doesn't even recognize
 the flag anymore.
2014-02-03 14:47:48 -05:00
Ryan C. Gordon e719158cb4 Fixed some compiler warnings from the latest Clang, cleaned up some things. 2014-02-03 14:45:38 -05:00
Ryan C. Gordon 0d9443d3a2 Temporarily default Wayland and Mir to disabled, for 2.0.2 release.
We'll flip the default back to enabled right after 2.0.2 is finalized, and
try to declare them stable and ready by 2.0.3.

Those that have an interest in supporting them in 2.0.2 can manually enable
 them in the configure script with --enable-video-wayland and/or
 --enable-video-mir.
2014-02-03 11:59:17 -05:00
Ryan C. Gordon bd01a9c914 Unload Wayland libs if memory allocation fails during init. 2014-02-03 11:53:21 -05:00
Ryan C. Gordon 89fd0faf5e Hooked up dynamic loading for Mir. 2014-02-03 11:52:54 -05:00
Ryan C. Gordon 8f055d199a Add Mir to configure script's summary output. 2014-02-03 11:14:25 -05:00
Ryan C. Gordon 69d85ff563 Bumped copyright date on Mir code. 2014-02-03 11:01:32 -05:00
Ryan C. Gordon 435b80b9a3 Disable some minor things that need newer Mir dev headers.
These headers apparently aren't default in Ubuntu 13.10 yet.
2014-02-02 23:55:51 -05:00
Ryan C. Gordon 6bc2977043 Added some SysWM bits for Mir. 2014-02-02 23:53:48 -05:00
Ryan C. Gordon 8674b7aeee Cleaned up headers and footers on Mir code. 2014-02-02 23:54:10 -05:00
Ryan C. Gordon 19f8c6224f Added Mir video target (thanks, Brandon!). 2014-02-02 23:41:46 -05:00
Ryan C. Gordon dce9b7b129 Ignore the buildbot build directories. 2014-02-02 21:38:16 -05:00
Philipp Wiesemann e8f5e010ad Fixed including SDL_internal.h twice for DirectFB. 2014-02-02 20:58:46 +01:00
Philipp Wiesemann 9ee68e8f8d Added additional platform check for __ANDROID__.
The macro ANDROID was deprecated with "android-ndk-1.6_r1".
2014-02-02 20:55:42 +01:00
Sam Lantinga 58edac3e69 Fixed bug 2374 - Update copyright for 2014...
Is it that time already??
2014-02-02 00:53:27 -08:00
Sam Lantinga 3bd0e9002e Fixed bug 2376 - no SDL_HasAVX
Haneef Mubarak

AVX is the successor to SSE* and is fairly widely available. As such, it really ought to be detectable.

This functionality ought to be trivial to implement, and not having it means being forced to write an ugly workaround to check for AVX (so that normal SSE can be used if AVX is not available).

Here is an example on detecting AVX from SO (it actually shows ways to cehck for all of teh fancy instructions):

http://stackoverflow.com/questions/6121792/how-to-check-if-a-cpu-supports-the-sse3-instruction-set
2014-02-02 00:33:31 -08:00
Gabriel Jacobo 8ba565fffb Treacherous copy/paste! 2014-01-30 20:29:58 -03:00
Gabriel Jacobo 6f3bf18656 Detect Xrandr >= 1.2 at build time 2014-01-30 20:27:13 -03:00
J?rgen P. Tjern? 338bf9cc6c Add SDL_GL_ResetAttributes. 2014-01-29 18:38:13 -08:00
Sam Lantinga d76c2cc1da Add a new hint SDL_HINT_VIDEO_WINDOW_SHARE_PIXEL_FORMAT that allows SDL_CreateWindowFrom() to set the pixel format of another SDL_Window (and also will set the SDL_WINDOW_OPENGL flag on the window created with SDL_CreateWindowFrom()).
The reasoning behind this change is that source2 in -tools mode has a single OpenGL context that is used with multiple different windows.  Some of those windows are created outside the engine (i.e. with Qt) and therefore we need to use SDL_CreateWindowFrom() to get an SDL_Window for those.  The requirement for sharing an OpenGL context across multiple different windows is that each window has the same pixel format.  To facilitate this, I now set SDL_HINT_VIDEO_WINDOW_SHARE_PIXEL_FORMAT for the main window before calling SDL_CreateWindowFrom().  When I do this, SDL_CreateWindowFrom() will:

1. Set the pixel format of the returned window to the same pixel format as this SDL_Window passed in with the hint
2. The flag SDL_WINDOW_OPENGL will be set on the new window so it can be used for OpenGL rendering.

I only currently implemented this for Win32/WGL so implementing it for other platforms (i.e. X11) remains a TODO.

CR: SamL

Some pseudocode that shows how this is used in Source2:

HWND hExternalHwnd; // HWND that was established outside of SDL

// Create main window (happens inside platwindow.cpp)
SDL_Window *mainWindow = SDL_CreateWindow( , SDL_WINDOW_OPENGL .. );
// Create GL context, happens inside rendersystemgl
SDL_GLContext onlyContext = SDL_GL_CreateContext( mainWindow );

// Now I need to create another window from hEternalHwnd for my swap chain that will have the same pixel format as mainWindow, so set the hint
SDL_SetHint( SDL_HINT_VIDEO_WINDOW_SHARE_PIXEL_FORMAT, CFmtStr( %p, mainWindow) );

// Create the secondary window.  This returned window will have SDL_WINDOW_OPENGL set and share a pixel format with mainWindow from the hint
SDL_Window *secondaryWindow = SDL_CreateWindowFrom( hExternalHwnd );

// To render to the main window:
SDL_GL_MakeCurrent( mainWindow, onlyContext );
// Do some rendering to main window

// To render to the secondary window:
SDL_GLMakeCurrent( secondaryWindow, onlyContext );
// Do some rendering to secondary window
2014-01-30 12:30:40 -08:00
Sam Lantinga dbd4a917e0 Document Michael's changes adding TranslateMessage() back to the SDL message loop. 2014-01-30 12:27:24 -08:00
Sam Lantinga 5c58bd6877 * Added TranslateMessage call to SDL default message pump - was causing problems in S2 tools mode apps that used Qt. Qt relies on the WM_CHAR message generated by TranslateMessage and keyboard input was showing up in the UI as mixed-case. (Depending on which message pump got a given message - both SDL and Qt pump messages for the entire process.) Sam will review and possibly tweak this change before propagating to public SDL, but I'm checking this version in so I can integrate into S2 and fix the issue there. 2014-01-30 12:27:00 -08:00
J?rgen P. Tjern? 366b1727bb Mac: [NSApp keyWindow] is not valid in windowDidBecomeKey:
This fixes weird behavior on Mac where our first responder reverts to the window
itself, rather than the SDLTranslatorResponder, after the window has lost focus
once. This causes Escape to call cancelOperation: on the NSWindow, which by
default removes our fullscreen-ness.

When someone has turned off SDL_TEXTINPUT we should probably set another initial
responder that handles the Escape behavior, so that SDL_TEXTINPUT doesn't change
fullscreen behavior (and possibly other behavior) like it does now.
2014-01-29 18:37:23 -08:00
dbrady 109fe0e0dc fixed hat code validation. 2014-01-28 15:28:20 -08:00
Philipp Wiesemann 68f2fe6499 Fixed spaces in source file license comment. 2014-01-29 00:29:14 +01:00
Philipp Wiesemann 62b17e7edb Fixed comments in joystick implementation files claiming to be headers.
It seems comments were originally copied from SDL_sysjoystick.h.
2014-01-29 00:27:54 +01:00
Ryan C. Gordon 4f1b8a4067 Move to no-argument version of "endif()" in CMakeLists.txt. 2014-01-28 12:42:01 -05:00
Ryan C. Gordon 2de3b01c61 Some CMake fixes for static linking on Windows from the OpenFL project. 2014-01-28 12:37:04 -05:00
Gabriel Jacobo f52d7f5eea [Wayland] Fixes segfault when mouse enters window 2014-01-28 11:39:37 -03:00
Gabriel Jacobo 682bc47bc5 Preserve binary compatibility in SDL_SYSWM_TYPE (thanks Gerry JJ!)
Also moved Wayland structures to the bottom of the union for OCD related issues.
2014-01-28 09:13:46 -03:00
Ryan C. Gordon 9d85cdb1a6 CMake: Enable missing timer subsystem on Mac OS X and Haiku. 2014-01-28 00:05:23 -05:00
J?rgen P. Tjern? 2efa2dc227 X11: Don't redraw dialog box when mouse moves.
This fixes bug #2343. (https://bugzilla.libsdl.org/show_bug.cgi?id=2343)

Thanks to Melker Narikka for the patch.
2014-01-27 13:43:04 -08:00
Ryan C. Gordon aff44ccdb5 Patched to compile...uh, everywhere. :) 2014-01-27 16:13:13 -05:00
Ryan C. Gordon 87cfee27d0 Patched to compile on Windows when not supporting Direct3D. 2014-01-27 16:10:15 -05:00
Gabriel Jacobo 33479316c7 [Android] Fixes Bug 2370, don't send accelerometer changes when
Android_JNI_GetAccelerometerValues return SDL_FALSE (thanks to Jairo Luiz)
2014-01-27 17:59:19 -03:00
Philipp Wiesemann 037475670f Removed unused variable from Java class for Android.
The audio thread was moved to native side and "protected" prevented a warning.
2014-01-26 23:50:35 +01:00
Philipp Wiesemann 6234415872 Fixed typo in documentation. 2014-01-26 23:42:25 +01:00
Edward Rudd 815c6c3b60 quick fix for CMAKE SOVERSION number so it matches what is output by the configure script 2014-01-25 16:08:39 -05:00
Edward Rudd f186314aef correct grammar on UNIX missing dependency status notice. 2014-01-25 15:13:16 -05:00
Edward Rudd 5071cb5c15 autoconf script tweaks
- fix up chmodding sdl2-config
- remove duplicate enable_atomic section
- add pretty summary of what was found/enabled
2014-01-25 15:05:44 -05:00
Gabriel Jacobo e78be5dafd Bug 2358 - [Android] Sort joystick axes - Fix by David Brady 2014-01-24 09:54:04 -03:00
Gabriel Jacobo 50befa6201 Bug 2358 - [Android] Joystick Button Mappings are strange (fix by David Brady) 2014-01-23 08:44:25 -03:00
Ryan C. Gordon ecc0df0661 Fix detection of iOS for disabling dynamic API. 2014-01-22 12:39:34 -05:00