Commit graph

7931 commits

Author SHA1 Message Date
Ryan C. Gordon
ae08aea517 Fixed some defaults in CMake project file.
Fixes not finding dlopen(), etc.
2015-03-20 10:02:45 -04:00
Ryan C. Gordon
6c6bc81974 Patched to compile on gcc2. 2015-03-19 23:54:35 -04:00
Ryan C. Gordon
84753c68f7 Removed unused variable. 2015-03-19 23:45:34 -04:00
Ryan C. Gordon
af94711fb1 Make static analysis happy. 2015-03-19 23:44:47 -04:00
Ryan C. Gordon
cb00e52aeb Fixed a compiler warning on Visual Studio.
--HG--
extra : amend_source : e9bf68163b3496c4fd7126a2a91cd2469579f901
2015-03-19 23:39:53 -04:00
Ryan C. Gordon
9c567d5e93 Patched to compile on Windows. 2015-03-19 23:35:43 -04:00
Ryan C. Gordon
90bd9250a4 Immediately minimize the goofy window in testaudiohotplug. 2015-03-19 22:20:12 -04:00
Ryan C. Gordon
fc1b620b3d Zero out the audio hotplug event structure, so the "padded" fields are sane.
Just in case we ever need those bits in the future.
2015-03-19 22:11:20 -04:00
Ryan C. Gordon
cd3f491efb PulseAudio: Hotplug support! 2015-03-19 22:08:12 -04:00
Ryan C. Gordon
3883c8c40c SDL_RemoveAudioDevice() should specify capture vs output.
This lets us reuse values between the two categories without conflicting, etc.

--HG--
extra : amend_source : a48f3e0a0274d02f31a1832fbc82d581a6fd12b9
2015-03-19 15:43:00 -04:00
Ryan C. Gordon
8f923a1c33 Removed the broken audio streaming code, other small cleanups. 2015-03-19 13:34:17 -04:00
Ryan C. Gordon
d0a775e968 Disconnected/broken/lost audio devices now continue to fire their callback.
The data produced by the callback is just thrown away and the audio thread
delays as if it's waiting for the hardware to drain.

This lets apps that rely on their audio callback firing regularly continue
to make progress to function as properly as possible in the face of disaster.
Apps that want to know that the device is really gone and deal with that
scenario can use the new hotplug functionality.
2015-03-19 13:27:10 -04:00
Ryan C. Gordon
2586087fca Don't assert if an audio backend reports the same device disconnected twice. 2015-03-19 13:15:28 -04:00
Ryan C. Gordon
0152738d86 PulseAudio: Improved multidevice support.
Added capture device enumeration, report human-readable device name, other
cleanups.

--HG--
extra : rebase_source : bb33f6fa05c47251e952a7b308998d2684f3f907
2015-03-18 10:29:04 -04:00
Ryan C. Gordon
9fd7d23246 Bunch of reworking to how we manage audio devices.
Device enumeration now happens at startup and then is managed exclusively
through hotplugging instead of full redetection. The device name list now has
a unique "handle" associated with each item and SDL will pass this to the
backend so they don't have to figure out how a human readable name maps to
real hardware for a second time.

Other cleanups, fixes, improvements, plus all the audio backends updated to
the new interface...largely untested at this point, though.

--HG--
extra : rebase_source : c9a4272788a67deb7a787304ef008188bb40184d
2015-03-18 02:01:17 -04:00
Ryan C. Gordon
e98dd173b7 Initial work on audio device hotplug support.
This fills in the core pieces and fully implements it for Mac OS X.

Most other platforms, at the moment, will report a disconnected device if
it fails to write audio, but don't notice if the system's device list changed
at all.

--HG--
extra : rebase_source : f7e7efbbeecfe58338b0f325340c358c2bdfc402
2015-03-16 02:11:39 -04:00
Ryan C. Gordon
390dd29faa Changed some SDL_memset() calls to SDL_zero().
--HG--
extra : rebase_source : b7fa90eeecb5272a753e4d1f395926023266f330
2015-03-18 10:09:39 -04:00
Ryan C. Gordon
8b4b24c103 Tweaked a couple comments, added some FIXMEs.
--HG--
extra : rebase_source : 57eb90da4411aba512a3df1af1d60bb6daa72aa6
2015-03-18 10:09:23 -04:00
David Ludwig
6a1d79c7cd WinRT: updated names, and references-to, various ANGLE/WinRT repositories 2015-03-18 12:03:32 -04:00
Ryan C. Gordon
466c8a104b Patched to compile on C89 compilers. 2015-03-18 10:05:36 -04:00
Ryan C. Gordon
f8af9d36b1 PulseAudio: Added multiple device support, other cleanups.
Thanks to Dominik Frizel for most of the effort on this!

Fixes Bugzilla #2730.
2015-03-18 09:59:22 -04:00
Ryan C. Gordon
317ab8a96a Fixed a compiler warning. 2015-03-18 00:56:33 -04:00
David Ludwig
0c003b66c4 WinRT: made OpenGL window-init work with latest round of ANGLE/WinRT updates
Various constants in ANGLE/WinRT, both in MSOpenTech's ms-master branch, and
in Google's branch, were changed again.  This change makes SDL/WinRT work with
them.

To note, the ms-master branch (of ANGLE) was updated via this merge:
bbd2eb0a9c (diff-d1377fbe747de154e1bfcf7221d3de67)
2015-03-17 19:45:47 -04:00
David Ludwig
7be22f39a9 WinRT: another ANGLE/OpenGL-initialization, error messaging tweak 2015-03-17 10:25:21 -04:00
David Ludwig
93fc5ce8a9 WinRT: ANGLE/OpenGLES-initialization, error message improvements 2015-03-17 10:22:36 -04:00
Philipp Wiesemann
37895d5fa7 Updated name of assert type in test program. 2015-03-15 19:25:10 +01:00
Ryan C. Gordon
3b609feebf Cleaning out a silly coding style I used to use.
Changed all the "return (x);" lines to "return x;"
2015-03-13 12:20:17 -04:00
Ryan C. Gordon
ad570bffcc Removed an unnecessary #ifdef. 2015-03-13 00:48:30 -04:00
Philipp Wiesemann
bde0ce0969 Updated internal documentation comments. 2015-03-11 21:14:21 +01:00
Philipp Wiesemann
b6737b215d Windows: Fixed ignoring return value of internal function.
If the function WIN_ConvertUTF32toUTF8() failed (should currently not be
possible) a not terminated string would have been sent as text input event.

This also fixed converting characters more often than needed on key repetition.
2015-03-06 21:34:10 +01:00
Philipp Wiesemann
cf9936654d Emscripten: Fixed ignoring return value of internal function.
If the function Emscripten_ConvertUTF32toUTF8() failed (should currently not be
possible) a not terminated string would have been sent as text input event.
2015-03-06 21:29:25 +01:00
Philipp Wiesemann
0eb350f9ec Emscripten: Partially fixed not removing key event callbacks if hint was used.
The key event callbacks were always removed from the same target although it is
possible to set them to different targets using the hint. This is only a partial
fix because it assumes that the hint is not changed to a different value later.
2015-03-06 21:26:37 +01:00
Ryan C. Gordon
12d065e7e1 Fixed SDL_PRI?64 for 64-bit Linux.
64-bit Linux uses a "long" instead of "long long" for 64-bit ints.

Added a special-case this so SDL_PRI?64 doesn't trigger compiler warnings
when used with SDL's 64-bit datatypes on 64-bit Linux.

--HG--
extra : rebase_source : 573ae86baa2648ab2b84479f2d8058e2c6dec009
2015-03-02 21:36:45 -05:00
Alfred Reynolds
f1bdf20e1d SDL
- fix crash on OSX when removing a device. If the remove happened due to the CFRunLoopRunInMode call in SDL_SYS_JoystickDetect then we would delete the device right away, before SDL_SYS_JoystickUpdate could clean it up. So move the CFRunLoopRunInMode to after the cleanup logic, preventing this case. This does mean that adds and removes of joysticks now take 1 extra frame to show up.
2015-03-02 11:43:24 -08:00
David Ludwig
2287c7b032 Fixed bug 2868 - SDL_FillRect can crash if surface's clip-rect is out-of-bounds
Thanks to John Skaller for the research into this, and for the fix!
2015-02-22 20:34:08 -05:00
Philipp Wiesemann
e4f4a0e0af Emscripten: Fixed out of range joystick device index after joystick disconnect.
After disconnecting a joystick the remaining kept their original device index.
This was not correct because the device index must be a number between 0 and
SDL_NumJoysticks(). It was fixed with ideas from SDL's joystick implementation
for Android. Some range checks were removed as the caller already checks them.
2015-02-22 23:21:32 +01:00
Philipp Wiesemann
eb9d379503 Emscripten: Fixed sending button and motion events for not opened joysticks.
SDL_SYS_JoystickUpdate() was implemented incorrectly. For every call to it all
attached joysticks were checked. But actually only the given SDL_Joystick should
be checked then. This allowed sending broken events for attached but not opened
joysticks. It also checked the opened joysticks more often than actually needed.
2015-02-22 21:00:35 +01:00
Ryan C. Gordon
79abb08b76 Fixed naming conventions in some SDL_assert types, added compat #defines.
Fixes Bugzilla #1997.
2015-02-21 00:33:25 -05:00
Ryan C. Gordon
984d72502d Mac OS X: Better way to stop duplicate joystick reports (thanks, Kyungdahm!).
Fixes Bugzilla #2822.
2015-02-19 23:52:10 -05:00
Ryan C. Gordon
3951d03c49 Windows: Added a FIXME.
--HG--
extra : amend_source : c4478dd58e8560a9636d8dd64c79f9b5c15e0621
2015-02-19 21:51:13 -05:00
Ryan C. Gordon
b549a0f797 Windows: Free the argv we allocated for console_wmain(). 2015-02-19 21:50:40 -05:00
Ryan C. Gordon
d0c74b7b23 Windows: Added a FIXME. 2015-02-19 21:49:30 -05:00
Ryan C. Gordon
f9cd47e187 Windows: Make a distinction between ANSI mainline and UTF-8 mainline. 2015-02-19 21:49:15 -05:00
Ryan C. Gordon
c2ba56ccb7 Windows: Support unicode arguments for console applications (thanks, Jorgen!).
Fixes Bugzilla #2864.
2015-02-19 21:44:41 -05:00
Ryan C. Gordon
a33b3fca95 Mac OS X: replace some deprecated APIs with modern equivalents (thanks, Alex!).
Fixes Bugzilla #2858.
2015-02-19 19:55:30 -05:00
Edward Rudd
05b4247f94 SDL_SetWindowPosition respects display num for SDL_WINDOWPOS_CENTERED_DISPLAY.
This allows for this kind of code in an application:

int monitorID = 1;  // the second monitor!
SDL_SetWindowPosition(sdlWin,
                      SDL_WINDOWPOS_CENTERED_DISPLAY(monitorID),
                      SDL_WINDOWPOS_CENTERED_DISPLAY(monitorID));

Fixes Bugzilla #2849.
2015-02-19 19:40:58 -05:00
Arne Janbu
551c20baf2 Fix build on Linux when wayland is enabled
Bug: https://bugzilla.libsdl.org/show_bug.cgi?id=2838
2015-01-10 13:47:37 +01:00
Ryan C. Gordon
8b1b079795 Some corrections to the SDL2.spec.in (thanks, Simone!).
Fixes Bugzilla #2809.
2015-02-19 13:42:56 -05:00
Ryan C. Gordon
e08e2cd4eb Remove unnecessary parentheses and an unnecessary free() of a NULL pointer.
(Thanks, Simon!)

Fixes Bugzilla #2881.
2015-02-19 13:11:19 -05:00
Ryan C. Gordon
139252cb4e Corrected documentation about triggers values in SDL_GameControllerGetAxis().
Fixes Bugzilla #2319.
2015-02-18 16:25:15 -05:00