Ryan C. Gordon
0265d3af9b
coreaudio: Move from AudioUnits to AudioQueues.
...
AudioQueues are available in Mac OS X 10.5 and later (and iOS 2.0 and later).
Their API is much more clear (and if you don't mind the threading tapdance
to get its own CFRunLoop) much easier to use in general for our purposes.
As an added benefit: they seemlessly deal with format conversion in ways
AudioUnits don't: for example, my MacBook Pro's built-in microphone won't
capture at 8000Hz and the AudioUnit version wouldn't resample to hide this
fact; the AudioQueue version, however, can handle this.
2016-09-04 01:23:55 -04:00
Ryan C. Gordon
3b53304a94
coreaudio: capture devices should let the system allocate the render buffer.
2016-09-03 00:13:41 -04:00
Ryan C. Gordon
fda7a3d158
coreaudio: Replaced an int with an SDL_bool.
2016-09-02 13:12:21 -04:00
Ryan C. Gordon
f9d9708f6b
coreaudio: Move some variable declarations to the top of the scope.
2016-09-02 13:11:28 -04:00
Sam Lantinga
f11a440999
wayland: Add support for relative mouse mode, by Jonas ?dahl <jadahl@gmail.com>
...
Generate the C protocol files from the protocol XML files installed by
wayland-protocols, and use them to implement support for relative pointer
motions and pointer locking.
Note that at the time, the protocol is unstable and may change in the future.
Any future breaking changes will, however, fail gracefully and result in no
regressions compared to before this patch.
2016-09-01 01:26:56 -07:00
Jonas ?dahl
19d3500ae1
wayland: Build own version of core protocol
...
Since we are loading shared objects dynamically, build our own version of the
core protocol symbols, so that we in the future can include protocol
extensions.
2016-06-23 18:39:05 +08:00
Bastien Nocera
736a624df0
Wayland: Set "class" for each window we create
...
This will be used by Wayland compositors to match the application ID and
.desktop file to the SDL window(s).
Applications can set the SDL_VIDEO_WAYLAND_WMCLASS environemnt variable
early in the process to override using the binary name as a fallback.
Note that we also support the SDL_VIDEO_X11_WMCLASS in the Wayland
backend so that if a program correctly associated the desktop file with
the window under X11, only a newer SDL would be needed for it to work
under Wayland.
https://bugzilla.libsdl.org/show_bug.cgi?id=3376
2016-09-01 01:22:58 -07:00
Ryan C. Gordon
2098bfb3ca
emscripten: Be more aggressive when closing audio capture devices.
...
Fixes exceptions being thrown on shutdown.
2016-08-31 16:10:04 -04:00
David Ludwig
f5d43cf912
WinRT: added an extra NULL pointer check for SDL_*ScreenSaver() backend code
2016-08-31 12:52:55 -04:00
Brandon Schaefer
ebb058910d
Mir: Add mouse grab support (requires mir 0.24)
2016-08-30 12:58:00 -07:00
Philipp Wiesemann
9581d4a585
Android: Fixed misleading warning in log output (thanks, Sylvain!).
...
Fixes Bugzilla #3418 .
2016-08-30 21:15:18 +02:00
Philipp Wiesemann
cf28727f89
Android: Fixed missing mouse motion events while button down (thanks, Sylvain!).
...
Happened for real mouse if SDL_HINT_ANDROID_SEPARATE_MOUSE_AND_TOUCH was active.
Fixes Bugzilla #3313 .
2016-08-30 21:14:52 +02:00
Philipp Wiesemann
51053a062c
Fixed compiling if filesystem is disabled (thanks, Elias!).
...
Fixes Bugzilla #3414 .
2016-08-30 21:14:13 +02:00
David Ludwig
5020fe8fdb
WinRT: added SDL_*ScreenSaver() support; fixed crash when restoring app from screensaver
2016-08-29 20:27:21 -04:00
Sam Lantinga
651107a118
Fixed sorting and name of XBox wireless controller entry
2016-08-16 12:02:22 -07:00
Sam Lantinga
4c1484784a
Merged Change: 3576099 from rel/streaming_client
...
Description:
SDL - add mapping for xbox one s wireless controller
2016-08-16 12:02:12 -07:00
David Ludwig
b65763c0c2
WinRT: patched to compile
2016-08-29 10:48:56 -04:00
Ryan C. Gordon
5bcf1d256b
cocoa: Fixed incorrect autorelease, noted by static analysis.
2016-08-28 19:06:31 -04:00
Ryan C. Gordon
c9bfcbde6e
nacl: Patched to compile.
2016-08-28 18:52:25 -04:00
Ryan C. Gordon
714aa21136
Patched to compile on Haiku.
2016-08-28 18:24:44 -04:00
Ryan C. Gordon
2da1ec8354
Merge audio capture work back into the mainline.
2016-08-28 13:36:13 -04:00
Ryan C. Gordon
06dcdc7d48
Patched to compile.
2016-08-28 11:56:11 -04:00
Ryan C. Gordon
850da32f30
alsa: Implemented hotplug support, cleaned up device names.
2016-08-28 08:50:26 -07:00
Ryan C. Gordon
35e564a694
ios: patched to compile.
2016-08-26 15:46:29 -04:00
Ryan C. Gordon
cfa95fe68c
alsa: don't enumerate virtual devices, just physical hardware.
2016-08-15 10:09:41 -04:00
Sam Lantinga
ad1bfea5a0
Added SDL_PrivateJoystickAdded() and SDL_PrivateJoystickRemoved()
...
Updated the removal code to iterate over all joystick add messages instead of just the first one.
2016-08-26 12:18:08 -07:00
Sam Lantinga
c69bce6774
commit 1170112da3776fdb06425f62d57b63144c33dc51
...
Author: James Zipperer <james.zipperer@synapse.com>
Date: Sun Aug 21 01:19:19 2016 -0700
bugfix for controller / joystick add / remove being in the event queue at the same time
2016-08-26 11:16:44 -07:00
Philipp Wiesemann
e79f00097a
Emscripten: Fixed crash if closing removed joystick (thanks, Sylvain!).
2016-08-25 22:31:44 +02:00
Philipp Wiesemann
e41e185eab
Android: Fixed crash if closing removed joystick (thanks, Sylvain!).
...
Fixes fix for Bugzilla #3408 .
2016-08-25 22:31:33 +02:00
David Ludwig
5150eb361f
WinRT: fixed bug where Win10 GameBar, when shown + hidden, might not restore a cursor's hidden state
...
The repro steps were this:
1. run an sdl2 winrt/uwp app, on Win10, v10.0.10586.0 or higher
2. hide the cursor, via a call to SDL_ShowCursor(0)
3. make the Win10 game bar appear, by pressing the Windows + G hotkey
4. observe that the mouse cursor appears, in order to interact with the
game bar (this is expected behavior)
5. make the Win10 game bar disappear, either by pressing the Windows + G hotkey
again, or clicking somewhere in the app
EXPECTED RESULT: cursor disappears, as game bar disappears
ACTUAL RESULT: cursor didn't always disappear
2016-08-20 13:46:45 -04:00
Philipp Wiesemann
a128552577
Emscripten: Fixed opening previously closed joystick.
2016-08-17 21:04:50 +02:00
Philipp Wiesemann
c18ff8d253
Android: Fixed opening previously closed joystick (thanks, Sylvain!).
...
Fixes Bugzilla #3408 .
2016-08-17 21:04:32 +02:00
Ryan C. Gordon
d05ae1941c
emscripten: send fake mouse events for touches, like other targets do.
...
(This really should be handled at the higher level and not in the individual
targets, but this fixes the immediate bug.)
2016-08-12 19:59:00 -04:00
Ryan C. Gordon
3b88f5c690
emscripten audio: check for an "undefined" object, remove some console.log().
2016-08-12 00:03:58 -04:00
Ryan C. Gordon
e435659c63
audio: Cleaned up "extern AudioBootStrap" list.
2016-08-11 22:26:58 -04:00
Ryan C. Gordon
6f4bcd2498
audio: Renamed some internal driver symbols in various targets.
2016-08-11 22:22:09 -04:00
Ryan C. Gordon
8f0af77354
android: implement audio capture support.
2016-08-11 22:04:49 -04:00
Ryan C. Gordon
b78ec97496
directsound: Implemented audio capture support.
2016-08-10 16:00:16 -04:00
Ryan C. Gordon
21c7fe0060
windows: directsound should also map audio device GUIDs to proper names.
...
Moved this code from winmm into core so both can use it.
DirectSound (at least on Win10) also returns truncated device names, even
though it's handed in as a string pointer and not a static-sized buffer. :/
2016-08-10 15:34:24 -04:00
Ryan C. Gordon
b879595a2a
audio: Patched to compile on C89 compilers.
2016-08-10 14:14:14 -04:00
Ryan C. Gordon
244d2dbcd5
emscripten audio: fix timer on capture's silence callback.
2016-08-10 14:13:48 -04:00
Ryan C. Gordon
7a8e4cb019
directsound: recalculate audiospec size before creating secondary buffer.
...
I think this was a bug before? Maybe I'm misunderstanding this, but it looks
like it was working because we allocate room for 8 chunks...
2016-08-09 19:35:46 -04:00
Ryan C. Gordon
358a168c9d
emscripten audio: Added audio capture support.
2016-08-09 16:58:32 -04:00
Ryan C. Gordon
5de11a5fc5
Added a FIXME.
2016-08-09 16:58:06 -04:00
Ryan C. Gordon
a05bde2170
audio: Only allocate fake_stream if we're using the standard audio threads.
2016-08-09 00:44:59 -04:00
Ryan C. Gordon
be8d7a46fb
audio: simplifed check for internal callback.
...
Easier to check when it's NULL instead of a list of known internal functions.
2016-08-09 00:44:05 -04:00
Sam Lantinga
8097f272e2
[ OSX ] enables Xbox One S Guide (System Main Menu) button detection. the one possible impact is that since button identifiers on OSX are just their sequence in the HID report descriptor we might change the button order, and any existing/saved mappings may get their order changed.
2016-08-08 12:17:53 -07:00
Ryan C. Gordon
df4985e207
dsp: Implemented audio capture support.
2016-08-07 02:43:20 -04:00
Ryan C. Gordon
a0ff2554c1
winmm: Try to get full device names from the Windows Registry.
2016-08-07 01:48:38 -04:00
Ryan C. Gordon
ff7df7e687
winmm: Added a FIXME for truncated device names.
2016-08-06 23:05:02 -04:00
Ryan C. Gordon
51d1523380
winmm: Implemented audio capture support.
2016-08-06 19:34:32 -04:00
Mikkel Krautz
a21e6af514
Add Xbox One controller GUIDs to the XInput filter in the DirectInput joystick driver.
...
The Windows 10 Anniversary Update (1607) breaks the method uses that SDL uses to
detect XInput devices. That is, on Windows 10 Anniversary Update, it is no longer
possible to query RAWINPUT for HID devices, and check for "IG_" in the device name.
Presumably, this will be fixed in the future.
This patch works around the issue by adding the Xbox One controller series to the
well-known device list.
This skips the more expensive RAWINPUT check for those devices, and causes them to
be detected as XInput devices once again.
2016-08-06 15:09:20 +02:00
Ryan C. Gordon
4499e5bcc6
disk audio: Make default i/o delay match what device is meant to be running at.
2016-08-06 03:45:45 -04:00
Ryan C. Gordon
978df1ad74
disk audio: Implemented "capture" support, cleaned up some things.
2016-08-06 03:39:15 -04:00
Ryan C. Gordon
7315390171
audio: Implemented buffer queueing for capture devices (SDL_DequeueAudio()).
2016-08-06 02:47:27 -04:00
Ryan C. Gordon
e7347a4027
audio: SDL_ClearQueuedAudio() should free everything but two packets.
...
Otherwise, if you had a massive, one-time queue buildup, the memory from that
remains allocated until you close the device. Also, if you are just using a
reasonable amount of space, this would previously cause you to reallocate it
over and over instead of keeping a little bit of memory around.
2016-08-06 02:27:55 -04:00
Ryan C. Gordon
9a33154450
nas: initial shot at audio capture support. Compiles, but not tested.
2016-08-05 04:23:32 -04:00
Ryan C. Gordon
9b2a59ef05
audio: Changed OnlyHasDefaultInputDevice to OnlyHasDefaultCaptureDevice.
2016-08-05 02:04:48 -04:00
Ryan C. Gordon
761a79788c
audio: changed some SDL_memset() calls to SDL_zero(), other minor corrections.
2016-08-05 01:59:06 -04:00
Ryan C. Gordon
979de761c9
audio: Removed internal SDL_audiomem.h and macros.
...
I think this was important for SDL 1.2 because some targets needed
special device memory for DMA buffers or locked memory buffers for use in
hardware interrupts or something, but since it just defines to SDL_malloc
and SDL_free now, I took it out for clarity's sake.
2016-08-05 01:44:15 -04:00
Ryan C. Gordon
9b64772775
audio: Clean up some CloseDevice() interface details.
...
- It's now always called if device->hidden isn't NULL, even if OpenDevice()
failed halfway through. This lets implementation code not have to clean up
itself on every possible failure point; just return an error and SDL will
handle it for you.
- Implementations can assume this->hidden != NULL and not check for it.
- implementations don't have to set this->hidden = NULL when done, because
the caller is always about to free(this).
- Don't reset other fields that are in a block of memory about to be free()'d.
- Implementations all now free things like internal mix buffers last, after
closing devices and such, to guarantee they definitely aren't in use anymore
at the point of deallocation.
2016-08-05 01:44:41 -04:00
Ryan C. Gordon
30a9139bc3
arts: backed out audio capture support.
...
Turns out that libartsc isn't thread-safe, so if we run a capture and playback
device at the same time, it often crashes in arts's internal event loop.
We could throw mutexes around the read/write calls, but these are meant to
block, so one device could cause serious latency and stutter in the other.
Since this audio target isn't in high-demand (Ubuntu hasn't offered a libartsc
package for years), I'm just backing out the capture support. If someone needs
it, they can pull it out of the revision history.
2016-08-04 11:51:17 -04:00
Ryan C. Gordon
20cd5e44ce
dummy audio: Patched to compile.
2016-08-03 16:54:10 -04:00
Philipp Wiesemann
82c94a3f79
PSP: Fixed memory leak if video init failed.
2016-08-03 22:32:20 +02:00
Philipp Wiesemann
9f97ee8a85
WinRT: Removed not needed SDL_zerop() after SDL_calloc().
...
SDL_calloc() already sets memory to zero.
2016-08-03 22:32:02 +02:00
Ryan C. Gordon
17246ba95e
dummy audio: Implemented dummy audio capture support. :)
2016-08-03 02:18:47 -04:00
Ryan C. Gordon
9dd8477a21
bsdaudio: first shot at audio capture support!
...
(untested, uncompiled...for now.)
2016-08-03 01:57:41 -04:00
Ryan C. Gordon
d30a2f5ad8
bsdaudio: this appears to be using the wrong variable...?
...
(We probably never noticed because this is meant to block until it fully
writes a buffer, and would only trigger an issue if we had a short write
that wasn't otherwise an error condition.)
2016-08-03 01:56:58 -04:00
Ryan C. Gordon
ecbd625c4b
arts: Patched to (maybe) compile.
2016-08-03 01:53:59 -04:00
Ryan C. Gordon
a7dddacd99
arts: implemented audio capture support.
...
(completely untested! Not even compiled!!).
2016-08-03 01:01:44 -04:00
Ryan C. Gordon
38f4b68ca7
alsa: capture devices don't need a mixbuf allocated.
2016-08-03 01:00:30 -04:00
Ryan C. Gordon
a9ef240cef
coreaudio: Implemented audio capture for iOS.
2016-08-03 00:30:12 -04:00
Ryan C. Gordon
41e8f9ede4
alsa: Implemented audio capture support!
2016-08-02 15:06:40 -04:00
Ryan C. Gordon
754efd43f4
alsa: Cleaned up the 5.1 swizzle mess a little.
...
Shouldn't this be something ALSA handles for us with channel maps, so we can
just delete this code?
2016-08-02 15:06:05 -04:00
Ryan C. Gordon
6bd1ec6bb0
audio: a little more robustness in the capture device's thread.
2016-08-02 15:04:33 -04:00
Ryan C. Gordon
d662bc04a5
pulseaudio: Implemented audio capture support!
2016-08-02 13:50:58 -04:00
Ryan C. Gordon
0d0f7080a3
audio: implemented higher level infrastructure for running capture devices.
2016-08-02 13:50:21 -04:00
Ryan C. Gordon
6d5c9c1e67
audio: Made some SDL_AudioDevice fields atomic.
...
This makes sure they're properly communicated to the audio threads.
2016-08-02 13:48:52 -04:00
Ryan C. Gordon
67f2538c41
audio: changed some internal ints to be SDL_bools.
2016-08-01 13:32:27 -04:00
Ryan C. Gordon
a94376c72d
nacl: unlock audio thread mutex when done with it.
2016-08-01 11:47:02 -04:00
Ryan C. Gordon
c754662dda
audio: Make SDL_AudioDevice::shutdown an atomic value.
...
Just to make sure this get communicated to the audio thread properly.
2016-08-01 11:45:45 -04:00
Ryan C. Gordon
015dd8dd1d
audio: Implemented capture support for Mac OS X CoreAudio.
...
I don't know what iOS wants yet, so this code might work there, too...?
2016-08-01 00:20:47 -04:00
Ryan C. Gordon
ee09975007
audio: Initial bits to enable audio capture support.
2016-08-01 00:18:56 -04:00
Philipp Wiesemann
4743b55c7a
Linux: Fixed memory leak in haptic implementation (thanks, Martin!).
...
Fixes Bugzilla #3238 .
2016-07-20 21:01:14 +02:00
Philipp Wiesemann
8d6cbdd235
Pandora: Fixed memory leak in video implementation.
2016-07-20 21:00:52 +02:00
Philipp Wiesemann
53ac57128b
Pandora: Fixed compile warnings in video implementation (thanks, Bombo!).
...
Fixes Bugzilla #2734 .
2016-07-20 21:00:36 +02:00
Philipp Wiesemann
427472fe2e
ALSA: Fixed adding wrong status to error message (thanks, romain145!).
...
Fixes Bugzilla #3364 .
2016-07-19 21:02:44 +02:00
Philipp Wiesemann
562926cdda
Pandora: Fixed SDL version in debug output.
2016-07-19 21:02:09 +02:00
Philipp Wiesemann
d478f26ef4
Updated comments in video implementations.
2016-07-18 22:03:47 +02:00
Philipp Wiesemann
c8cd5c559a
Pandora: Fixed compile error in video implementation (thanks, Bombo!).
...
Partially fixes Bugzilla #2734 .
2016-07-18 22:02:17 +02:00
Philipp Wiesemann
58b323f192
Android: Fixed missing export of a JNI function (thanks, Andrii!).
...
Fixes Bugzilla #3393 .
2016-07-17 21:43:12 +02:00
Philipp Wiesemann
6b1d5f4461
Android: Fixed compile warning about a missing prototype (thanks, Sylvain!).
...
Fixes Bugzilla #3351 .
2016-07-17 21:42:53 +02:00
Philipp Wiesemann
de5daaad6a
Fixed compile warnings about evaluating undefined identifiers.
...
Partially fixes Bugzilla #3351 .
2016-07-17 20:32:44 +02:00
Brandon Schaefer
eadb30cd6f
MIR: Fix system cursors. Been broken since custom cursor support was added!
2016-07-13 07:07:08 -07:00
Philipp Wiesemann
495057b04b
Android: Added new key codes from API 24.
2016-07-09 22:06:00 +02:00
Alex Szpakowski
d0bd0e4855
iOS: Fix an OpenGL ES error when rotating the device if MSAA is used (thanks Cole Campbell!)
...
Fixes bug #3378 .
2016-07-02 13:38:31 -03:00
Philipp Wiesemann
6ec5e64056
Fixed freeing strings created by strdup() with SDL_free().
...
This only worked on platforms where SDL_free() wraps free().
2016-06-28 21:08:23 +02:00
Philipp Wiesemann
2f016cf88d
Mac: Fixed crash if SDL_GetDisplayDPI() got NULL pointers for output parameters.
2016-06-26 21:08:57 +02:00
Philipp Wiesemann
f4d33fcbba
Fixed compile warnings in test library about formats strings not being literals.
...
Partially fixes Bugzilla #3375 .
2016-06-25 19:40:44 +02:00
David Ludwig
23af328bb0
Fixed Bug 3147 - Windows: Crash when resizing Window since hg 1f9d57965528
...
Thanks for the fix, Gab!
2016-06-24 22:17:56 -04:00
Brandon Schaefer
4a339a46ec
MIR: Add better error handling for a failed connection
2016-06-08 08:01:21 -07:00
Brandon Schaefer
f0708fc9dd
MIR: Support relative mouse mode
2016-06-07 09:01:23 -07:00
Alex Szpakowski
ea2f5e5930
Windows: Fix other window positions/sizes being changed when exiting exclusive fullscreen (bug #3315 , thanks Simon Hug!)
2016-05-23 15:29:25 -03:00
Alex Szpakowski
0a4085a048
Mac: Fix a crash when SDL is compiled with SDL_MAC_NO_SANDBOX enabled, by increasing the stack size of the mouse tap thread back to OS X' default of 512 KB.
2016-05-21 12:09:23 -03:00
Alex Szpakowski
4a468739f8
Removed Mac OS 10.5 support (bug #3137 ). Also fixed a warning about deprecated Carbon code when using SDL_audio (bug #3127 , thanks Dominik!)
2016-05-21 00:20:52 -03:00
Philipp Wiesemann
d4140ca473
Windows: Fixed missing error message if SDL_GetDisplayDPI() failed.
2016-05-20 22:15:58 +02:00
Philipp Wiesemann
d7b9d321fa
X11: Fixed typos in error messages and source comments.
2016-05-20 22:15:28 +02:00
Philipp Wiesemann
81235118ab
X11: Fixed missing error message if SDL_GetDisplayDPI() failed.
2016-05-20 22:14:40 +02:00
David Ludwig
441359bd5a
WinRT: workaround a possible Windows bug, whereby hiding cursors, disables mouse-moved events
...
This workaround, unfortunately, requires that apps directly link to a set of
Win32-style cursor resource files (that contain a transparent cursor image).
Copies of suitable resource files are in src/core/winrt/, and should be
included directly in an app's MSVC project.
A rough explanation of this workaround/hack, and why it's needed (and
seemingly can't be done through programmatic means), is in this change's code.
2016-05-14 23:29:49 -04:00
Philipp Wiesemann
e964d00f64
X11: Fixed SDL_GL_GetSwapInterval() returning -1 if interval is unknown.
...
It should return 0 as a safe default if the interval can not be determined.
2016-05-11 21:11:12 +02:00
Philipp Wiesemann
748b05289c
EGL: Fixed SDL_GL_GetSwapInterval() returning -1 on error.
...
It should return 0 as a safe default on errors. -1 is returned for late swaps.
2016-05-11 21:10:41 +02:00
Philipp Wiesemann
bf7a76155e
Fixed missing error message if SDL_GetDisplayDPI() is unsupported.
2016-05-10 21:14:36 +02:00
David Ludwig
52fec6aff0
WinRT: allow on-screen keyboard to be shown via SDL APIs, Win10/UWP only
2016-05-07 21:41:59 -04:00
Alex Szpakowski
b15efce277
Cocoa mouse code: Replaced NSPointInRect with NSMouseInRect (thanks Eric Wasylishen!) Fixes bug #3312 .
2016-05-01 21:41:30 -03:00
Alex Szpakowski
d383502657
Mac: replaced a deprecated CGSetLocalEventsSuppressionInterval call that I missed in commit 2f72bdfee9bb
2016-05-01 19:51:10 -03:00
Philipp Wiesemann
31cbb34ec9
Wayland: Removed not needed including and setting of errno.
...
One internal function was setting errno on error but it was not read afterwards.
2016-04-14 21:11:43 +02:00
Philipp Wiesemann
72dc8784b3
PSP: Fixed compile error.
2016-04-14 21:09:45 +02:00
David Ludwig
caf152def7
WinRT: build/link fix
2016-04-13 21:59:50 -04:00
Ryan C. Gordon
c137eb61d7
Patched to compile on Haiku...?
2016-04-12 18:40:44 -04:00
Ryan C. Gordon
9b9ca093c7
windows: created threads' stack sizes should be reserved, not committed.
2016-04-12 18:12:04 -04:00
Ryan C. Gordon
9b4db2b8aa
Patched to compile on various platforms.
2016-04-12 18:11:36 -04:00
Ryan C. Gordon
c61675dc5d
threads: Move SDL's own thread creation to a new internal API.
...
This allows us to set an explicit stack size (overriding the system default
and the global hint an app might have set), and remove all the macro salsa
for dealing with _beginthreadex and such, as internal threads always set those
to NULL anyhow.
I've taken some guesses on reasonable (and tiny!) stack sizes for our
internal threads, but some of these might turn out to be too small in
practice and need an increase. Most of them are simple functions, though.
2016-04-12 16:45:10 -04:00
Ryan C. Gordon
7ae2951fca
threads: Handle SDL_HINT_THREAD_STACK_SIZE at top level, implement elsewhere.
2016-04-12 14:38:50 -04:00
David Ludwig
8b65d225e8
WinRT: bug hack-fix - gamepad detection was failing on Xbox One
...
Win10's 'GamepadAdded' event seems to need to have something registered with it
in order for Xinput-based gamepad detection to work. This 'fix' simply causes
a dummy event-handler to be added for this event, in case an app wants to use
gamepads on Xbox One (most likely).
2016-04-11 00:22:39 -04:00
Alex Szpakowski
34f095e098
iOS: Fixed SDL_GL_CreateContext crashing instead of returning null when a GLES3 context is requested on iOS 6 and older.
2016-04-10 22:07:10 -03:00
Ryan C. Gordon
a581346fae
alsa: Make device enumeration robust against weird results with NULL strings.
2016-04-04 22:49:13 -04:00
Alex Szpakowski
6cfa71a10e
iOS: Also do the Dictation crash workaround before executing the animation callback.
2016-04-02 13:21:01 -03:00
Alex Szpakowski
88372277b7
Add a new hint SDL_HINT_MAC_MOUSE_FOCUS_CLICKTHROUGH, which allows mouse click events to occur when clicking to focus a window in Mac OS X.
...
Fixes bug #3300 .
2016-04-02 11:54:05 -03:00
Alex Szpakowski
5520ed9cc2
iOS: Workaround for a crash after Dictation is used.
2016-04-01 19:18:50 -03:00
Philipp Wiesemann
831597f714
PSP: Fixed returning success from unsupported SDL_RenderReadPixels().
...
This also fixed the missing error message.
2016-04-01 21:13:58 +02:00
Philipp Wiesemann
d1e4814120
PSP: Fixed returning success for unsupported SDL_SetTextureColorMod().
...
Partially fixes Bugzilla #3298 .
2016-04-01 21:12:37 +02:00
Philipp Wiesemann
12c78c5ca5
PSP: Fixed missing error message for unsupported SDL_CreateWindowFrom().
2016-04-01 21:11:31 +02:00
Philipp Wiesemann
a9edc5137e
Wayland: Fixed missing error message if creating a custom cursor failed.
...
SDL_GetError() returned no error message because it was written to stderr only.
2016-03-28 21:03:04 +02:00
Philipp Wiesemann
fd3dd4e515
Fixed comment in gesture source.
2016-03-27 22:22:13 +02:00
Alex Szpakowski
08488e6d34
Mac: avoid calling CGSetLocalEventsSuppressionInterval, it was deprecated in OS X 10.6.
2016-03-20 15:35:34 -03:00
Philipp Wiesemann
35da130828
Wayland: Fixed crash if memory mapping failed while creating a custom cursor.
2016-03-16 22:09:39 +01:00
Philipp Wiesemann
fa77df4e91
Wayland: Fixed storing a theme cursor which is never used in video data.
2016-03-16 22:09:23 +01:00
Sam Lantinga
a29a925d7e
Pick up new display mode information after a mode change (Windows only right now).
2016-03-11 08:33:47 -08:00
Sam Lantinga
5333deab1c
Quick fix for qsort off-by-one error.
2016-03-11 08:30:18 -08:00
Philipp Wiesemann
19f18558ac
Emscripten: Deactivated custom cursor support because it created system cursors.
2016-03-11 22:10:35 +01:00
Philipp Wiesemann
676041aa16
Wayland: Fixed drawing created cursors without transparency.
2016-03-11 22:10:15 +01:00
Philipp Wiesemann
167dd4a1fa
Wayland: Fixed showing created cursors incorrectly before the first redraw.
2016-03-11 22:09:50 +01:00
Philipp Wiesemann
0c923fda0b
WinRT: Removed dead code and fixed memory leak if allocation for driver failed.
2016-03-10 21:00:44 +01:00
Sam Lantinga
6303941ac1
Fixed infinite timeout in SDL_WaitEventTimeout() - thanks ?????????? ????????
2016-03-08 13:55:50 -08:00
Ethan Lee
2a754ca735
Allow mappings to be added before GameControllerInit
2016-03-07 08:22:55 -05:00
Ryan C. Gordon
1e8df9cd60
alsa: Implemented basic device detection.
...
This is kind of nasty, because ALSA reports dozens of "devices" that aren't
really things you'd ever want, or things that should be listed this way, but
the default path still works as before, and it at least allows these devices
to be available to apps.
This does not handle hotplugging yet. You get a device list at init time
and that's it.
2016-03-05 23:25:23 -05:00
Ryan C. Gordon
f647dfe874
x11: Fix a few more XMoveWindow() calls to adjust for border size.
...
Also, fix my inability to do basic math ('+' should have been '-').
2016-03-04 19:41:16 -05:00
Ryan C. Gordon
02f49fdb53
x11: Deal with window borders better.
...
- Cache the _NET_FRAME_EXTENTS data locally, so we don't have to query
the X server for them (instead, we update our cached data when PropertyNotify
events alert us to a change).
- Use our cached extents for X11_GetWindowBordersSize(), so it's a fast call.
- Window position was meant to refer to the client area, not the window
decorations, so adjust appropriately when getting/setting the position.
2016-03-04 18:47:19 -05:00
Philipp Wiesemann
05b6ca3c35
Raspberry: Fixed crash if memory allocation for cursor failed.
2016-03-03 20:12:51 +01:00
Philipp Wiesemann
be34036ed7
Wayland: Fixed fault in event handling which might have caused a crash someday.
...
Found by Cppcheck.
2016-03-02 20:25:23 +01:00
Philipp Wiesemann
ab8be04310
Wayland: Fixed crash if allocating memory for cursor failed.
...
Also added missing error message if first allocation failed.
2016-03-02 20:25:09 +01:00
Jonas ?dahl
3a22321d55
wayland: Add wl_proxy_marshal_constructor_versioned sym
...
wl_proxy_marshal_constructor_versioned was introduce in wayland-client 1.10.
2016-02-17 15:14:20 +08:00
Brandon Schaefer
90ef601d8c
Mir: Do not use opengl to find the valid pixel format if we dont use opengl
2016-02-25 10:06:33 -08:00
Philipp Wiesemann
966aa3721b
Mir: Replaced memcpy() with SDL_memcpy().
2016-02-24 21:07:19 +01:00
Philipp Wiesemann
b4b36122a4
Mir: Fixed comment at conditional compilation macro.
2016-02-24 21:06:46 +01:00
Philipp Wiesemann
92209c260d
Mir: Fixed crash if allocating memory for cursor failed.
2016-02-22 19:00:22 +01:00
bschaefer
3607d3b756
Fix API/ABI breakage in Mir 0.13/0.14.
2016-02-21 15:19:35 -08:00
Ryan C. Gordon
481a21b025
Windows: Just use WaitForSingleObjectEx() everywhere.
...
(It's supported on WinXP, no reason to have an #ifdef here...I think.)
2016-02-21 17:21:29 -05:00
Ryan C. Gordon
9fd4d4dd39
Windows: let threads be named in the debugger.
...
We now only raise the magic exception that names the thread when
IsDebuggerPresent() returns true. In such a case, Visual Studio will
catch the exception, set the thread name, and let the debugged process
continue normally. If the debugger isn't running, we don't raise an exception
at all.
Setting the name is a debugger trick; if the debugger isn't running, the name
won't be set if attached later in any case, so this doesn't lose functionality.
This lets this code work without assembly code, on win32 and win64, and
across various compilers.
The only "gotcha" is that if you have something attached that looks like a
debugger but doesn't respect this magic exception trick, the process will
likely crash, but that's probably a deficiency of the attached program.
Fixes Bugzilla #2089 .
2016-02-21 17:05:25 -05:00
Ryan C. Gordon
32c70cc546
stdlib: Restored previous qsort() implementation; the licensing is resolved.
...
Thanks to Gareth McCaughan for changing his code to the zlib license on
our behalf!
2016-02-21 13:07:14 -05:00
Ryan C. Gordon
2436ca200d
x11: better fix for the previous commit's fullscreen vs maximized issue.
2016-02-20 01:03:39 -05:00
Ryan C. Gordon
a4627c5eda
x11: Don't mess with fullscreen vs maximized window state on unmapped windows.
2016-02-20 00:44:42 -05:00
Ryan C. Gordon
dddd6a5a9a
Android: Restored Philipp's joystick change, lost in the previous merge.
...
This patch, specifically: https://hg.libsdl.org/SDL/rev/c0976de9c332
2016-02-19 00:28:53 -05:00
Ryan C. Gordon
03f9711797
Merge Android C89 fixes from Eric Wing.
2016-02-19 00:24:00 -05:00
Ryan C. Gordon
df4be2f200
x11/wayland/mir: Make the dynamic loading macro salsa a little less messy.
2016-02-18 23:27:58 -05:00
Sam Lantinga
d6699d5541
Added support for the Mad Catz FightStick TE S+ PS3
2016-02-17 14:15:37 -08:00
Sam Lantinga
5c59da2e8f
Added support for the Mad Catz FightStick TE S+ PS4
2016-02-16 13:51:24 -08:00
Sam Lantinga
0682857783
Added support for the Akishop Customs PS360+ v1.66 and MadCatz PC USB Wired Stick 8818
2016-02-16 13:51:15 -08:00
Sam Lantinga
a38d5b480d
Added support for several Mad Catz arcade sticks
2016-02-16 13:48:46 -08:00
Sam Lantinga
1c2beb2180
Allow using the game controller API with arcade sticks and other XInput devices
2016-02-16 13:47:37 -08:00
Philipp Wiesemann
9cd9925cc9
Android: Changed an internal joystick function to return count instead of id.
...
The returned value is currently not used by the caller. The instance id would
also not be needed on Java side and providing it just complicated the function.
Partially fixes Bugzilla #3234 .
2016-02-16 20:32:22 +01:00
Ryan C. Gordon
0e2badc144
x11: Patched to compile with DEBUG_XEVENTS on C89 compilers.
2016-02-12 00:27:21 -05:00
Ryan C. Gordon
45407d0eac
x11: Removed an assert.
...
This assert triggers when run under XMonad. It's safe to pass a zero here
anyhow, as this will still work "well enough" and the original
problem--GNOME printing a warning message--is still fixed because GNOME's
window manager gives us a chance to grab a non-zero user-time value before
this code is run.
2016-02-15 21:49:09 -05:00
Ryan C. Gordon
09ae4df5bf
Another attempt to fix Windows build.
2016-02-15 03:37:01 -05:00
Ryan C. Gordon
18f74c6e15
Patched to compile on Visual Studio.
2016-02-15 03:21:26 -05:00
Ryan C. Gordon
014956ac1d
Replaced SDL_qsort with public domain code from PDCLib: http://pdclib.e43.eu/
2016-02-15 03:16:46 -05:00
Alex Szpakowski
33af421d7b
Windows: make sure SDL_TicksInit has been called before calling Sleep(ms) in SDL_Delay. This ensures the Windows system timer resolution is properly set before Sleep is called.
2016-02-14 21:17:25 -04:00
Philipp Wiesemann
37a5416784
PSP: Deactivated dynamic API.
...
Thanks to Bugzilla #3240 for pointing this out.
2016-02-13 17:35:38 +01:00
Philipp Wiesemann
7da168db0a
Fixed spaces in license comments.
2016-02-10 19:31:23 +01:00
Eric Wing
704298c0c2
Android: C89 cleanup to avoid warnings/errors since the default gcc mode on Android is still pre-C99.
2016-02-09 17:36:42 -08:00
Ryan C. Gordon
5ed63ae317
x11: Updated imKStoUCS.* to latest from x.org.
...
This was a version from XFree86 before now. :) Although not much has
changed.
2016-02-08 01:08:21 -05:00
Alex Szpakowski
8e7cd6b5da
iOS: Implemented clipboard support.
2016-02-03 20:32:55 -04:00
Sam Lantinga
4249f4666c
David Carlier implemented SDL_GetBasePath() for OpenBSD
2016-01-31 21:11:15 -08:00
Sam Lantinga
1fb30db048
Return the full number of events from SDL_PeepEvents() if NULL is passed in with SDL_PEEKEVENT
2016-01-31 11:29:11 -08:00
Alex Szpakowski
325921789a
x11: Fix AltGr generating an invalid keycode (bug #3244 ). Thanks Thomas!
2016-01-31 09:39:42 -04:00
Philipp Wiesemann
9bdd188115
PSP: Removed inlined copy of SDL_CalculateAudioSpec()'s functionality.
2016-01-27 23:20:23 +01:00
Sam Lantinga
67f9fd2bc4
Fixed creating fullscreen windows on Steam Link
2016-01-22 13:12:16 -08:00
Sam Lantinga
e5d575b933
Expose the EGL display and window for Vivante SDL windows
2016-01-16 21:58:49 -08:00
Philipp Wiesemann
0a1999dfd2
Fixed compile warnings about type conversion.
...
Found by buildbot.
2016-01-16 21:25:10 +01:00
Philipp Wiesemann
8d035b1aee
Android: Added mouse initialization to reset state.
...
If the app is launched again then the shared object may be reused (on Android).
2016-01-12 22:23:00 +01:00
Philipp Wiesemann
1560351905
Android: Added mapping of mouse forward button and mouse back button.
2016-01-11 20:02:48 +01:00
Alex Szpakowski
87ea39be84
Removed dead code (caught by Clang's static analyzer).
2016-01-09 17:41:09 -04:00
Ryan C. Gordon
ed62033366
x11: make last mouse coords sane upon window entry (thanks, Cengiz!).
...
(and thanks to Cengiz for many of the previous Unreal-related
patches! They were generically credited to Epic Games, but a large
amount of that work was his contribution.)
Fixes Bugzilla #3067 .
2016-01-07 19:58:00 -05:00
Ryan C. Gordon
73680ab374
Fixed NULL dereference on drop events with no window associated.
...
(such as when dropping a file onto an app's icon to launch.)
This bug caught by Clang's static analyzer.
2016-01-07 16:01:24 -05:00
Ryan C. Gordon
5dcf6bcc32
Updated dynamic API table.
2016-01-07 14:51:22 -05:00
Ethan Lee
167cf14c1f
SDL_RenderSetIntegerScale
2016-01-05 16:39:18 -05:00
Ryan C. Gordon
416d046663
Mac: Implemented SDL_GetDisplayDPI (thanks, Kirill!).
...
Fixes Bugzilla #3223 .
2016-01-07 14:02:37 -05:00
Philipp Wiesemann
1d1ba58f28
Fixed compile warnings about uninitialized variables in test library.
...
Found by buildbot.
2016-01-06 22:39:29 +01:00
Ryan C. Gordon
49e47688b4
Patched to compile on iOS.
2016-01-05 05:38:55 -05:00
Ryan C. Gordon
881ccccbcf
Android: Fixed up drop events for new interface.
2016-01-05 05:31:33 -05:00