src


Log

Author Commit Date CI Message
Joshua Granick 1286a7d2 2017-04-20T21:31:44 windows: Add SDL_WINDOW_ALWAYS_ON_TOP support.
Juha Kuikka 7382cebb 2017-04-20T21:25:29 audio: Fix audio queue functions to use new spec structure. Using the old spec structure causes the audio queueing functions to fail due to bad callback pointers being checked.
Ryan C. Gordon 93a6191c 2017-04-20T13:00:54 emscripten: keep track of pointer lock losses and maybe regrab pointer later. If an Emscripten app is in relative mouse mode and the user presses Escape (or whatever is appropriate), then the pointer lock is broken by the browser. This keeps track of those losses, and next time the user presses a mouse button down on the canvas, if the app is still meant to be in relative mouse mode, we will attempt to regrab the pointer. This makes it much more seamless for things like first-person shooters, and the app doesn't need any manual intervention.
Sam Lantinga d20d426c 2017-04-18T22:17:40 Fix crash in SDL audio thread, by Juha Kuikka Wrong audio spec structure was populated with the internal callback, causing the audio thread to call a NULL pointer.
Ryan C. Gordon 1d1a0d7f 2017-04-13T15:28:56 atomic: Patched to compile on Android.
Ryan C. Gordon 1c9c7633 2017-04-13T13:28:52 atomic: favor compiler intrinsics for compare-and-swap over macOS APIs. The OSAtomicCompareAndSwap* APIs are deprecated as of macOS 10.12.
Ryan C. Gordon 8c00de57 2017-04-13T13:22:23 atomic: let Clang always use atomic_load_n if available. (Apple's Clang reports itself as GCC 4.2.1 in preprocessor macros--the final GNU C compiler Apple shipped--as of the macOS 10.12 SDK.)
Philipp Wiesemann 2bf79c2e 2017-04-09T23:00:54 mir: Fixed typo in error messages.
Philipp Wiesemann f6eb23a6 2017-04-09T23:00:42 linux: Changed two variables to be static.
Sam Lantinga 27023ed2 2017-04-07T03:39:43 Added support for the Cyborg V.3 Rumble Pad and the Mad Catz FightPad PRO
Drew Bliss a4dbf565 2017-04-06T13:27:51 Fix divide-by-zero when videodata->ime_candpgsize is zero. We're seeing this happen in Dota in the wild.
Drew Bliss 66555f61 2017-04-06T13:27:48 SDL - attempt to fix https://github.com/ValveSoftware/Dota-2/issues/1199 of mouse not locking in Dota. This fix is proposed by Ryan Gordon (increase timeout in X11_SetWindowGrab from 250ms to 5000ms). I'm going to integrate to source2 and ship it to dota customers. If it works, SamL will upsteam it to SDL.
Sam Lantinga 1eb92f63 2017-04-06T06:30:43 Implemented Linux joystick blacklist Based on https://raw.githubusercontent.com/denilsonsa/udev-joystick-blacklist/master/generate_rules.py This fixes a few devices that are not actually joysticks showing up as such in SDL
Sam Lantinga 53f3786b 2017-04-04T08:43:44 Added support for a number of game controllers, including the Nintendo Switch Pro Controller
Sam Lantinga 5789da67 2017-04-03T13:32:53 Fixed bug 1859 - No SDL_VIDEORESIZE event generated when the window manager sets the window size. Samuel Hopkins Just confirming that the patch from Andreas (attachment 1715 [details]) works for me under SDL 2.0.3 with xmonad. Stas Sergeev Confirming that the patch in this ticket fixes the full-screen switching for dosemu2 on ubuntu-16.04. Note that I am not using xmonad, so this bug appears to be generic.
Philipp Wiesemann 1517ba72 2017-04-02T21:33:54 PSP: Fixed error messages.
Philipp Wiesemann f96cdca4 2017-04-02T21:33:42 Mir: Changed two internal functions to be static.
Ryan C. Gordon c57fe6d7 2017-04-01T00:46:42 Backing out broken change from previous commit.
Ryan C. Gordon ed7f16e2 2017-04-01T00:46:15 Intentionally breaking buildbot to test email server change.
Ryan C. Gordon 028716e7 2017-03-30T16:33:47 wasapi: deal with default device changes, and more robust failure recovery.
Sam Lantinga 7891e72d 2017-03-30T06:52:34 __atomic_load_n() appears to be available in GCC 5 but not GCC 4
Ryan C. Gordon c85c57a0 2017-03-29T14:23:39 wasapi: Handle lost audio device endpoints. This gracefully recovers when a device format is changed, and will switch to the new default device if the current one is unplugged, etc. This does not handle when a new default device is added; it only notices if the current default goes away. That will be fixed by implementing the stubbed-out MMNotificationClient_OnDefaultDeviceChanged() function.
Ryan C. Gordon f2179944 2017-03-29T12:04:17 Patched to compile on some platforms.
James Legg 1dc9ae5c 2017-03-29T15:48:22 Use GCC's atomic loads in SDL_AtomicGet and SDL_AtomicGetPtr This fixes errors reported by address sanitizer, and generates simpler code on x86 architectures.
Philipp Wiesemann 266816b4 2017-03-26T21:00:19 Removed newlines from error messages.
Sam Lantinga 00da0824 2017-03-23T13:53:09 Updated axis/button mapping for Dualshock 3, for upcoming Sony driver changes
Brandon Schaefer c35f46d0 2017-03-18T13:57:57 mir: Set the max/min w/h vs just setting the window w/h
Sam Lantinga 22161480 2017-03-14T07:22:08 Compile fix for android. "ISO C90 forbids mixed declarations and code [-Werror=declaration-after-statement]" Moving some variable declarations to the top of Android_SetScreenResolution()
Sam Lantinga 6814f5db 2017-03-14T07:20:14 ALSA driver improvements: * alsa hotplug thread is low priority * give a chance for other threads to catch up when audio playback is not progressing * use nonblocking for alsa audio capture There is a bug with SDL hanging when an audio capture USB device is removed, because poll never returns
Sam Lantinga c4d54504 2017-03-14T07:16:56 differentiate between capture / playback audio thread names
Sam Lantinga 763e1389 2017-03-09T16:09:16 Added an API to get the joystick instance ID before opening the device: SDL_JoystickGetDeviceInstanceID()
Sam Lantinga c1802ef6 2017-03-06T21:25:06 Fixed compile error with gcc -std=c99
Philipp Wiesemann 72fdf629 2017-03-04T23:05:32 Mir: Fixed crash if creating default cursor failed. Found by Cppcheck.
Philipp Wiesemann 42d02890 2017-03-04T23:05:11 Linux: Fixed error message.
Ryan C. Gordon 6aa17426 2017-03-03T16:38:45 video: Don't compile isAtLeastGL3() if we don't have OpenGL support _at all_.
Ryan C. Gordon ca0bf151 2017-03-03T16:38:17 Fix some more compiler warnings on armcc.
Ryan C. Gordon d526b8a1 2017-03-02T13:33:04 Some patches to make SDL compile with armcc (ARM's C compiler).
Brandon Schaefer 94a69443 2017-03-01T15:05:54 mistake: Revert the files that I did not mean to commit
Brandon Schaefer 7bbb13ea 2017-03-01T14:50:59 * Some refactoring and bug fixes. Thanks Micha? Kuchta!
Ryan C. Gordon bc877885 2017-02-28T19:48:52 raspberrypi: RPI_Destroy() should free the SDL_VideoDevice and its driverdata.
Brandon Schaefer 5a47ee03 2017-02-27T12:20:16 mir: Get ready for Mir 1.0, clean up deprecations. Thanks Micha? Kuchta!
Philipp Wiesemann e5d9b25d 2017-02-26T21:20:39 Fixed comment style.
Ryan C. Gordon a4249b48 2017-02-26T00:56:13 Patched to compile on C89 compilers.
Ryan C. Gordon 07519a6b 2017-02-26T00:40:04 Removed a bunch of unnecessary #ifdefs.
Ryan C. Gordon 3b9e4d0a 2017-02-26T00:39:22 audio: Try to keep callbacks firing at normal pace when device is lost.
Ryan C. Gordon a366c35f 2017-02-26T00:12:33 audio: run the audio callback even if device was lost. We will throw away the data anyhow, but some apps depend on the callback firing to make progress; testmultiaudio.c, if nothing else, is an example of this. Capture also will now fire the callback in these conditions, offering nothing but silence. Apps can check SDL_GetAudioDeviceStatus() or listen for the SDL_AUDIODEVICEREMOVED event if they want to gracefully deal with an opened audio device that has been unexpectedly lost.
Ryan C. Gordon 5728cb20 2017-02-26T00:10:02 audio: Make sure the disk and dummy targets are the last ones we try to init.
David Ludwig b13c443c 2017-02-24T20:49:14 WinRT: removed buildbot debug code, pending further research
David Ludwig f7bfa3b7 2017-02-24T20:19:28 WinRT: more buildbot debug code
David Ludwig ecb1eb82 2017-02-24T19:59:57 WinRT: added code to help debug a buildbot error
Sam Lantinga 71a4e8ed 2017-02-23T12:10:02 Stop CoreAudio from doing expensive audio rate conversion
Sam Lantinga a9762551 2017-02-20T11:02:35 Added config for the Razer Wildcat on Mac OS X
Philipp Wiesemann cfcec57f 2017-02-19T21:05:09 Fixed comment.
Sam Lantinga 9428ff19 2017-02-17T17:46:58 Added support for the Razer Wildcat on Linux
Charlie Birks 0d647d35 2017-02-17T10:13:17 Emscripten: implement custom cursors
Charlie Birks 33bddcfd 2017-02-17T10:13:12 Emscripten: refactor cursor handling
Charlie Birks 613955b4 2017-02-17T10:13:07 Emscripten: only update pixel ratio if HiDPI is enabled
Ryan C. Gordon e8677a1b 2017-02-17T02:25:37 audio: Added basic WAVE_FORMAT_EXTENSIBLE support to .wav loader. This is just enough to get you through a file that just used the extended header for float or int data. It doesn't handle all the other things that you expect from this header, like 24-bit samples inside a 32-bit container or speaker masks.
Ryan C. Gordon 1ed41d6d 2017-02-14T03:12:09 Patched to compile on Windows.
Ryan C. Gordon 6046fd4c 2017-02-14T03:03:27 wasapi: Initial WASAPI support, for Windows Vista and later. This should remain binary compatible with Windows XP, as we dynamically load anything we need and fall back to DirectSound/WinMM/XAudio2 if not available.
Ryan C. Gordon c93bca48 2017-02-14T02:49:08 stdlib: Fixed crash on SDL_snprintf("%s", NULL). Like other C runtimes, it should probably produce the string "(null)". This bug probably only affected Windows, as most platforms use their standard C runtime's snprintf().
Ryan C. Gordon d1eb2d19 2017-02-13T17:05:14 thread: Don't use SetThreadDescription on WinRT right now. Can't LoadLibrary for it, but not sure if it's actually available there yet.
Ryan C. Gordon 70c0400b 2017-02-13T17:00:46 windows: Try to unify all the GUID comparison code into a core helper function. There are likely several more I missed.
Ryan C. Gordon e5fc93ba 2017-02-13T16:59:02 audio: Don't wrap bootstrap declarations in preprocessor macros. They are harmless and ignored if we don't actually link against them. The preprocessor checks elsewhere if they're actually used.
Ryan C. Gordon ad9c702f 2017-02-13T16:56:41 audio: SDL_AudioStream's *_sample_frame_size should be in bytes, not bits. Fixes failures where SDL_AudioStreamGet() incorrectly thinks it got a partial sample frame request.
Ryan C. Gordon 175f1e8f 2017-02-13T16:55:00 audio: Added a ThreadDeinit() method to match ThreadInit. Not used by any targets at the moment, but will be shortly!
Sam Lantinga 886736a2 2017-02-11T16:38:16 Fixed bug 3584 - Small stack size for audio callback thread Walter van Niftrik We have found that since SDL 2.0.5 the audio callback thread is created with a very small stack size. In our application this is leading to stack overflows. We believe there is a bug at http://hg.libsdl.org/SDL/file/391fd532f79e/src/audio/SDL_audio.c#l1132, where the is_internal_thread flag appears to be inverted.
Sam Lantinga cf31ea14 2017-02-11T11:14:48 Fixed bug 3583 - X11 touch device can be permanently lost Volumetric In X11 the SDL error "Unknown touch device" can occur after which the application stops recognizing touch events. For a kiosk-type application this results in a hang as far as the user is concerned. This is reproducible on HP Z220/Z230/Z240 workstations by swapping USB cables for a while and it also occurs with no physical changes, probably due to USB device power management. A workaround is to make SDL re-enumerate the touch devices like it does at startup. A patch is attached.
Sam Lantinga 06ccb71b 2017-02-10T11:21:15 Make sure the memory barrier functions are always available, and now they are implemented on Android __ARM_ARCH_5TE__
Sam Lantinga 9171f71d 2017-02-10T09:41:16 Fixed warning in Android build
Sam Lantinga 107c19da 2017-02-09T06:01:14 Log the error returned by XAudio2Create()
Philipp Wiesemann 8eee82cd 2017-02-03T23:30:43 Windows: Fixed warning about unused variable. Found by buildbot.
Philipp Wiesemann 33ff5bd1 2017-02-03T23:30:29 Fixed typo in log message.
Sam Lantinga 710ae62a 2017-02-02T17:33:40 Remember XInput controllers that we've already seen, so when the raw device list changes we don't assign the old device to the new XInput userid. This isn't perfect, but at least we won't report the same device twice.
Sam Lantinga 8f78f5bb 2017-02-02T16:56:02 Fixed build on Apple TV
Sam Lantinga da30992d 2017-02-02T00:41:58 Fixed bug 3577 - Can't set minimal size (message box appears instead) if maximal size wasn't declared (i.e. unlimited)
Sam Lantinga be28d7c8 2017-01-31T12:30:55 Added support for the Saitek Pro Flight X-56 Rhino
Sam Lantinga 6717a3d3 2017-01-31T12:23:29 Added support for the HOTAS Warthog throttle
Sam Lantinga a156b0d9 2017-01-31T10:20:09 Added the HOTAS Warthog as a flight stick
Sam Lantinga 800a72eb 2017-01-31T10:19:56 Switch stderr output to SDL_Log() so it shows up on Windows and mobile devices
Sam Lantinga 52e9c42d 2017-01-28T14:35:35 Fixed Windows build
Sam Lantinga 869b7fe3 2017-01-28T11:17:10 Fixed bug 3550 - No mouse move messages send while over the titlebar and windows edges Matthew Its possible to set SDL_CaptureMouse() so you continue receiving mouse input while the mouse is outside your window. This works however There is then a gap where no messages send, which is when the mouse is hovering the title bar and the window edges.
R?mi Verschelde c3eea703 2017-01-28T10:54:12 Use a stronger X font definition for X11_MessageBox on UTF-8 X11 seemed to be confused by the broad definition, so WEIGHT_NAME, SLANT and SETWIDTH_NAME were defined, thus fixing the font lookup on some systems (tested on Mageia 6 with X11 1.19.1). Fixes bug 3571.
Sam Lantinga 13433c4a 2017-01-27T21:23:27 Fixed bug 3569 - GL_UpdateViewport leaves PROJECTION matrix selected Tom Seddon GL_ActivateRenderer may call GL_UpdateViewport, which leaves the GL_PROJECTION matrix selected. But after GL_ResetState, the GL_MODELVIEW matrix is selected, suggesting that's the intended default state. It seems at least like these should be consistent. Presumably GL_UpdateViewport should be doing a glMatrixMode(GL_MODELVIEW) before it finishes.
Sam Lantinga 0090a338 2017-01-27T21:16:38 Return an error if trying to set a window minimum size larger than the maximum size, or vice versa
Sam Lantinga d0247368 2017-01-27T18:06:50 Sorted controller entries
Ryan C. Gordon 8fa9b57f 2017-01-27T20:50:30 windows: first shot at naming threads with SetThreadDescription(). This is a bleeding edge API, added to Windows 10 Anniversary Edition (build 1607, specifically). https://msdn.microsoft.com/en-us/library/windows/desktop/mt774976(v=vs.85).aspx Nothing supports this yet, including WinDbg, Visual Studio, minidumps, etc, so we still need to also use the RaiseException hack. But presumably tools will use this API as a more robust and universal way to get thread names sooner or later, so we'll start broadcasting to it now.
Sam Lantinga 95ab9dc7 2017-01-27T06:05:50 Added Thrustmaster Wheel FFB entry to the list of wheels
Sam Lantinga 3c90a52a 2017-01-27T05:59:58 Added an API to get the type of a connected joystick
Jessica Stokes aa90b730 2017-01-26T21:25:05 Add a mapping for Xbox Wireless Controllers running old firmware Also updates the naming of these Xbox Wireless Controllers connected via USB (and thus the third-party Xbox Controller Driver) to match. The Xbox Wireless Controller entries are now listed, in order, via USB, bia Bluetooh (with older firmware) and via Bluetooth (with firmware 3.1.1221.0).
Misty De Meo ae5e9a31 2017-01-25T22:24:54 Add gamecontrollerdb mapping for Xbox One S on Mac This is valid for firmware version 3.1.1221.0; earlier versions of the firmware need a different mapping (and have different GUIDs).
Misty De Meo ca89d9b5 2017-01-25T22:22:05 Darwin: fix detection of Xbox One S controller Firmware revision 3.1.1221.0 changes the mapping of the Xbox One S controller in Bluetooth mode. Aside from changing the layout of other buttons, this revision also changes the triggers to act as Accelerator and Brake axes from the simulation controls page. The Darwin sysjoystick code didn't previously map anything at these axes, making it impossible to detect input on these two buttons.
Sam Lantinga ede5c734 2017-01-24T19:38:01 Generalized the audio resampling hint for other resampling methods in the future
Ryan C. Gordon 47e2f4e9 2017-01-24T20:30:48 audio: libsamplerate can't resample in-place; make space for a copy if needed.
Ryan C. Gordon c7f9dcb6 2017-01-24T15:52:22 audio: Offer a hint for libsamplerate quality/speed tradeoff. This defaults to the internal SDL resampler, since that's the likely default without a system-wide install of libsamplerate, but those that need more can tweak this.
Ryan C. Gordon 1da3a337 2017-01-24T10:09:29 audio: Fix static analysis concerns about a dead assignment.
Ryan C. Gordon 8f627c1c 2017-01-24T00:51:33 audio: Make sure SDL_AudioStream's work buffer is 16-byte aligned, for SIMD. Note the giantic FIXME, though!
Ryan C. Gordon 17dcee20 2017-01-24T00:17:40 audio: Streams now resample in-place. Removed second allocated buffer.
Ryan C. Gordon b5eeab77 2017-01-24T00:08:24 audio: allow stereo Sint16 resampling fast path in SDL_AudioStream. This currently favors libsamplerate over the fast path (quality over speed), but I'm not sure that's the correct approach, as there may be surprising changes in performance metrics depending on what packages are available on a user's system. That being said, currently, the only thing with access to SDL_AudioStream is an SDL audio device's thread, and it might be mostly idle otherwise, so maybe this is generally good.
Ryan C. Gordon a80cb672 2017-01-24T00:03:36 audio: Fixed off-by-one error in upsampling.