|
f0566702
|
2022-05-19T16:58:11
|
|
Fix enabling SDL_DYNAMIC_API in OpenWatcom builds
|
|
3d52d049
|
2022-05-19T15:38:35
|
|
Remove the '_' prefix from symbol names in Windows OpenWatcom builds
|
|
9dfa000b
|
2022-05-18T20:20:03
|
|
Initial support for building for Windows with OpenWatcom
|
|
5669743a
|
2022-05-19T09:45:57
|
|
Make sure SDL_CaptureMouse() is only called on the main thread
Windows handles mouse capture on a per-thread basis, and capture must be done on the thread used to create a window.
Fixes https://github.com/libsdl-org/SDL/issues/5577
|
|
15781a69
|
2022-05-19T18:55:02
|
|
dynapi: fix SDL_DYNAPI_PROC for SDL_iPhoneSetAnimationCallback()
|
|
f5cf0e37
|
2022-05-19T14:51:25
|
|
Remove unused and duplicate defines from SDL_dynapi_overrides.h
|
|
03ebc439
|
2022-05-19T14:01:10
|
|
dynapi: add missing SDLCALL for SDL_TLSSet's dtor param.
|
|
501a4991
|
2022-05-05T18:44:32
|
|
Add clang-format on/off comments where necessary.
Comments were added in places where INDENT-ON/OFF comments are. Places
like stdlib's asm don't need it as clang-format doesn't try to indent it.
|
|
0e6d4baa
|
2022-05-19T01:23:24
|
|
Fixed compile warning on gcc 11
|
|
c7dff3a2
|
2022-05-19T00:35:22
|
|
Attempt to get the X1 and X2 button state on X11 by using the current event state instead of direct X11 query.
|
|
57130b75
|
2022-05-19T00:31:20
|
|
Revert "x11: get x1/x2 button state in GetGlobalMouseState"
This reverts commit 3fcc2cb500a752698687ad0c8bb14778e6cb84c3.
Button4 and Button5 are for the scrollwheel, not the extended buttons.
I don't know of a way to query the state of the extended buttons using X11.
|
|
47f1cb55
|
2022-05-18T23:48:15
|
|
Fixed picking up the correct mapping for virtual controllers on Android
Fixes https://github.com/libsdl-org/SDL/issues/5662
|
|
f7b774a7
|
2022-05-18T17:59:17
|
|
Fixed build error on Linux if HAVE_INOTIFY isn't defined
Fixes https://github.com/libsdl-org/SDL/issues/5682
|
|
f9a9d3c8
|
2022-05-18T17:23:49
|
|
Also restore previous capture window if CaptureMouse() fails
|
|
7044452d
|
2022-05-18T17:15:10
|
|
Handle recursion in SDL_UpdateMouseCapture()
Fixes https://github.com/libsdl-org/SDL/pull/5608
|
|
dbd54dd7
|
2022-05-19T03:00:04
|
|
adjust dynapi after commit 0cca71a changes for SDL_qsort and SDL_bsearch
|
|
e19a9a79
|
2022-05-18T15:29:59
|
|
Fixed a message box getting the mouse capture state out of sync
|
|
622311c0
|
2022-05-18T22:51:58
|
|
Add extra XInput structures and defines for older SDKs
|
|
c8eea020
|
2022-05-18T21:14:20
|
|
Fix C89 build errors in Windows builds
|
|
0cca71a8
|
2022-05-18T22:12:05
|
|
Use SDLCALL for callbacks in public APIs
|
|
ffab9f46
|
2022-05-18T21:07:33
|
|
Avoid clashing with system headers when redefining standard library functions
|
|
06aca7ed
|
2022-05-18T10:09:24
|
|
Fixed warping back into the window when gaining focus with warp relative mode enabled
|
|
b44241ab
|
2022-05-18T08:50:59
|
|
Don't send mouse events when warping in relative mode
This fixes games which set relative mode and then did mouse warping at the same time
Reference https://github.com/libsdl-org/SDL/issues/5609
|
|
8c5bda6a
|
2022-05-18T17:58:35
|
|
Vita: remove Vita-specific RWOps code
|
|
aa6ea607
|
2022-05-18T06:57:28
|
|
Fixed whitespace
Whitespace inconsistencies reported in https://github.com/libsdl-org/SDL/pull/5673
|
|
56665e1d
|
2022-05-17T12:50:13
|
|
cocoa: Try to use better system cursors.
These try to pull from the .pdf files that are installed with
macOS, which fit our needs better, and fall back to the most
reasonable defaults available from NSCursor if we can't load
them.
Since these are installed under /System, they should be sandbox
accessible, and if this totally fails, it should still go on,
albeit with a less good cursor.
Reference Issue #2123.
|
|
e9c7b519
|
2022-05-16T21:03:41
|
|
macOS: Fix reference counts of internal window data.
Fixes crashes when destroying or recreating a window (#5664).
|
|
a4800495
|
2022-05-17T01:33:20
|
|
disable dynapi for os/2, at least for now. (see bugs #5667 and #5669.)
|
|
ec1a0f62
|
2022-05-17T01:33:02
|
|
SDL_malloc.c: workaround calling convention issues for real_xxx procs.
|
|
1f2a2416
|
2022-05-16T09:02:35
|
|
Add new virtual joysticks to the end of the list
This guarantees that the device index that's returned is stable, as long as no joystick hotplug events occur.
|
|
3c3ccb1d
|
2022-05-16T08:55:54
|
|
Fixed crash if a virtual joystick was disconnected
|
|
2317a96c
|
2022-05-16T10:50:13
|
|
x11: Use XC_top_left_corner/XC_top_right_corner instead of XC_fleur.
On Gnome (and hopefully others!), this produces something that actually
matches SDL_SYSTEM_CURSOR_SIZENWSE/SDL_SYSTEM_CURSOR_SIZENESW. On
other desktop enviroments, it probably fits the spirit better than
XC_fleur in any case.
Reference Issue #2123.
|
|
48b6cd8b
|
2022-05-16T07:23:30
|
|
Fixed whitespace
|
|
f0bc5c9c
|
2022-05-16T07:21:28
|
|
Added effects support for virtual controllers
|
|
b3a18706
|
2022-05-16T06:37:38
|
|
Removed unused variables
|
|
7e005bd8
|
2022-05-16T06:22:18
|
|
Fixed mapping the paddle buttons with the virtual controller
|
|
bfac54b5
|
2022-05-15T20:33:28
|
|
Added the ability to specify which buttons and axes are present for virtual controllers
|
|
94eeb587
|
2022-05-15T20:01:12
|
|
First pass at extending virtual controller functionality
Added the ability to specify a name and the product VID/PID for a virtual controller
Also added a test case to testgamecontroller, if you pass --virtual as a parameter
|
|
7ad15c5b
|
2022-05-15T09:35:52
|
|
Added game controller support for virtual joysticks
Fixes https://github.com/libsdl-org/SDL/issues/5662
|
|
996b3dc3
|
2022-05-15T09:33:28
|
|
Fixed warning building with Visual Studio
|
|
e4bb3c86
|
2022-05-11T18:13:44
|
|
wayland: Fix build for configs without libdecor
|
|
6222bd31
|
2022-05-11T16:26:43
|
|
wayland: Don't create a new libdecor context if one already exists
|
|
6f88cbe4
|
2022-05-11T16:04:34
|
|
wayland: Support xdg_decoration requesting client-side decorations.
Don't be fooled by the diff size - this ended up being a big refactor of the
shell surface management, masked only by some helper macros I wrote for the
popup support.
This change makes it so when xdg_decoration is supported, but CSD is requested,
the system bails on xdg support entirely and resets all the windows to use
libdecor instead. This transition isn't pretty, but once it's done it will be
smooth if decorations are an OS toggle since libdecor will take things from
there.
In hindsight, we really should have designed libdecor to be passed a toplevel,
having it manage that for us keeps causing major refactors for _every_ change.
|
|
d7866ffa
|
2022-05-11T19:39:30
|
|
assert: Check for integer overflow.
Move rendering of the assert message into a separate
function so we can remove the ugly loop construction.
Changes the logic such that allocation failure no longer
immediately returns SDL_ASSERTION_ABORT, instead we
fall back to the truncated message.
If an error is indicated from SDL_snprintf, then we do
abort with SDL_ASSERTION_ABORT.
|
|
9b75fa01
|
2022-05-11T18:31:34
|
|
N-Gage port: add changes from code reviews, overall cleanup (#5618)
* Add changes from code review by @ccawley2011, #5597, overall cleanup
* Update N-Gage README, minor cleanup and rephrasing
* Call SDL_SetMainReady() before calling SDL_main, return SDL_main instead of main
|
|
6da99d4a
|
2022-05-11T08:40:17
|
|
Don't use SDL_SIMDFree() if the pixels haven't been allocated with SDL_SIMDAlloc()
|
|
2f924020
|
2022-05-05T20:12:07
|
|
Add SDL_SCANCODE_CALL and SDL_SCANCODE_ENDCALL
|
|
2bc37362
|
2022-05-05T13:31:26
|
|
Add SDL_SCANCODE_SOFTLEFT and SDL_SCANCODE_SOFTRIGHT
|
|
f871c178
|
2022-05-10T17:32:24
|
|
macOS: remove dead code for supporting 10.6 at runtime.
|
|
f7280dce
|
2022-05-10T14:52:14
|
|
log: Check for integer overflow.
|
|
ec8fa577
|
2022-05-07T21:57:23
|
|
macOS: always use Objective-C ARC (automatic ref counting).
Change Cocoa SDL_VideoData and SDL_WindowData implementations from C structs to Objective-C objects, since bridging between C and ObjC is easier that way.
|
|
2a794801
|
2022-05-09T14:58:51
|
|
cpuinfo: Check for overflow in SIMD allocation
If the size to be allocated is very large and untrusted, then adding
the padding etc. might be enough to cause unsigned overflow, after
which a very small amount of memory will be allocated.
Signed-off-by: Simon McVittie <smcv@collabora.com>
|
|
cf1daafa
|
2022-05-09T18:48:46
|
|
cpuinfo: Set padding to 0 if none is needed
It'll be simpler to use overflow detection after this refactor.
Signed-off-by: Simon McVittie <smcv@collabora.com>
|
|
0e63b514
|
2022-05-07T14:52:35
|
|
Don't define memcpy(), memset() when using static VC runtime.
The linker will complain about duplicated symbols otherwise
(see #3662, #5156).
|
|
8cd908e0
|
2022-05-06T10:51:55
|
|
Fixed building with Visual Studio 2013
Added SDL_vacopy.h since it needs to be included after Windows headers
|
|
a3c1ca1f
|
2022-05-06T09:07:36
|
|
Added support for the Backbone One guide button
The guide button is activated on a long press (> 400ms)
|
|
fff97c95
|
2022-05-04T16:40:11
|
|
build: Mechanically generate ABI versions from version number
If we're strict about applying something resembling semantic versioning
to the "marketing" version number, then we can mechanically generate
the ABI version from it.
This limits the range of valid micro versions (patchlevels) to 0-99.
Signed-off-by: Simon McVittie <smcv@collabora.com>
|
|
cd7c2f1d
|
2022-05-03T15:16:11
|
|
Switch versioning scheme to be the same as GLib and Flatpak
For stable releases, this gives us the ability to make bugfix-only point
releases such as 2.24.1 if we want to, and distinguish between them
programmatically. For example, this ability could have been useful after
2.0.16 to fix Xwayland regressions, and after 2.0.18 to fix event loop
regressions.
For development releases, this gives us the ability to make multiple
prereleases during the same feature cycle, and distinguish between them
programmatically. For example, this would have been useful during 2.0.22
development, which went through three prereleases before reaching the
final release.
Signed-off-by: Simon McVittie <smcv@collabora.com>
|
|
63814ec7
|
2022-05-03T14:39:00
|
|
Add static assertions that the version number is consistent
Signed-off-by: Simon McVittie <smcv@collabora.com>
|
|
d4b82bfa
|
2022-05-03T13:17:59
|
|
Add static assertions for version numbers' limits
Signed-off-by: Simon McVittie <smcv@collabora.com>
|
|
b398a847
|
2022-05-03T23:21:10
|
|
Add SDL_FLOATWORDORDER for older ARM toolchains
|
|
adac3bd1
|
2022-05-03T12:31:50
|
|
video: restore ability to disable fb accel via hint
Somewhere in code refactoring between .20 and .22 this check
was lost, and so the hint had no effect anymore.
|
|
3f813cf1
|
2022-05-04T10:05:56
|
|
SDL_rawinputjoystick.c: fixed -Werror=declaration-after-statement
|
|
0b8e796e
|
2022-01-12T22:00:46
|
|
added hueristic to differentiate digital vs analog 'hat' input axes and expose the latter as regular axes; added automatic deadzones to hat outputs, in case analog axes are still mapped to digital hats; updated automatic gamepad control mapping to more completely follow the spec
|
|
db9e14e5
|
2022-01-31T13:55:37
|
|
disabled linux joystick debugging outputs and reverted unnecessary comment edit
|
|
3b53555b
|
2022-01-28T14:53:28
|
|
copied default Steam Controller mapping for wired and wireless-dongle USB pids
|
|
13b1bf4f
|
2022-01-28T13:31:08
|
|
added default gamepad mapping for Steam Controller with new GUID (possibly caused by the firmware update to enable BLE?)
|
|
f7a19f9e
|
2022-01-14T13:14:42
|
|
relaxed the digital hat deadzone slightly, and fixed typo in DEBUG_GAMEPAD_MAPPING define
|
|
3696e23d
|
2022-01-14T10:45:16
|
|
added hints SDL_HINT_LINUX_DIGITAL_HATS and SDL_HINT_LINUX_HAT_DEADZONES to control the new Linux hat handling; added define DEBUG_GAMEPAD_MAPPINGS to log messages when generating default gamepad mapings for Linux joysticks
|
|
fbd230bb
|
2022-05-03T17:51:49
|
|
Add support for the Nokia N-Gage (#5597)
* Add initial support for the Nokia N-Gage
* N-Gage: disable clipping for the time being, issue needs to be resolved later
* Move va_copy definition to SDL_internal.h
* Move stdlib.h include to SDL_config_ngage.h, much cleaner this way
* Remove redundant include, add HAVE_STDLIB_H
* Revert "N-Gage: disable clipping for the time being, issue needs to be resolved later"
This reverts commit 4f5f0fc36cc7f34fad05e45671dfa7b8dc32fd51.
* N-Gage: fix clipping issue by providing proper math functions
|
|
3fcc2cb5
|
2022-05-03T11:19:39
|
|
x11: get x1/x2 button state in GetGlobalMouseState
|
|
6150245d
|
2022-05-03T00:11:44
|
|
Add new verbosity level for logging of `SDL_SysWMEvent`s
Now logged only if SDL_HINT_EVENT_LOGGING is set to "3" or above.
|
|
d1a3981b
|
2022-05-02T15:22:46
|
|
Fix crash when reading background events for MFi controllers on macOS
Enabling GCController.shouldMonitorBackgroundEvents to read background events
for MFi controllers before receiving the first GCControllerDidConnectNotification
is apparently a no-go on macOS (12.3.1 for me), and would crash on attempt.
Apple's documentation is... not great, and doesn't point this out.
This waits for IOS_AddMFIJoystickDevice() to get called down the chain from GCControllerDidConnectNotification, and enables GCController.shouldMonitorBackgroundEvents
if it hadn't been already.
On iOS and tvOS, GCController.shouldMonitorBackgroundEvents is ignored, so
there's no need to check their versions.
|
|
bb0b6dd4
|
2022-05-02T20:12:13
|
|
Fixed using WGI without XInput
|
|
5394238c
|
2022-04-30T11:40:26
|
|
Don't include the internal header for a file intended for use by applications
|
|
9e5cbf03
|
2022-04-29T22:36:12
|
|
Disallow non-positive allocation.
Ensure that we're not trying to call SDL_small_alloc()
with a count of zero.
Transforming the code like this fixes a
-Wmaybe-uninitialized warning from GCC 12.0.1
|
|
6c2928b4
|
2022-04-29T19:30:47
|
|
Switch uses of MIN() to SDL_min()
We're excluding files in src/hidapi to minimize the
diff against the upstream project.
|
|
ca26df34
|
2022-04-29T16:44:32
|
|
assert: Allow messages of any length.
Messages are no longer truncated to SDL_MAX_LOG_MESSAGE.
|
|
88889924
|
2022-04-29T16:30:30
|
|
log: Allow log messages of any length.
Log messages are no longer truncated to SDL_MAX_LOG_MESSAGE.
|
|
645db217
|
2022-04-29T14:06:05
|
|
log: Use malloc for long messages.
For short messages, use a stack buffer that is
significantly smaller than SDL_MAX_LOG_MESSAGE.
The rationale for this is that we don't want to risk
blowing the stack, while at the same time we would
like to not put pressure on the memory allocator unless
absolutely necessary.
|
|
73448fe2
|
2022-04-29T14:05:15
|
|
assert: Remove use of alloca()
For short messages, use a stack buffer that is
significantly smaller than SDL_MAX_LOG_MESSAGE.
For larger messages, fall back to allocation.
|
|
97774cdf
|
2022-04-29T14:01:03
|
|
Move in va_copy() define block from stdlib.
|
|
7e636b03
|
2022-04-29T10:16:14
|
|
Removed log message length limitation for Apple platforms
This works in conjunction with https://github.com/libsdl-org/SDL/pull/5584
|
|
2ccb0dfd
|
2022-04-13T15:39:29
|
|
Check for macOS 10.16 to support apps built with older macOS SDKs
|
|
a0cdc1fc
|
2022-04-28T15:01:34
|
|
Added declaration of SDL_LogInit() and SDL_LogQuit()
Fixes compile warning on Android
|
|
29694869
|
2022-04-28T15:56:52
|
|
audio: Revert one of the resampler optimizations.
This is the one that splits the "left wing" into two for loops to
bubble out the conditional that decides if it should read from the
left padding or the input buffer.
I still believe the optimization is good, but the basic logic of it
was incorrect, and needs to be reexamined and fixed before going
back into revision control.
|
|
0f45a4e3
|
2022-04-27T12:22:37
|
|
log: Don't try to SDL_free the static array. :)
I shouldn't be allowed near computers, I swear.
|
|
31e83cd1
|
2022-04-27T12:13:44
|
|
log: Fixed build (sorry!)
|
|
fde9a708
|
2022-04-27T12:05:07
|
|
log: Make the message buffer static.
Now we don't have to worry about allocation failure, or performance
issues or changes to the allocation layout when trying to track down
subtle bugs.
|
|
c4141bc1
|
2022-04-27T09:39:24
|
|
log: Wrap the call to the logging implementation in a mutex.
Fixes #2463.
|
|
2a429522
|
2022-04-27T08:06:28
|
|
log: Don't stack-allocate the message buffer.
It's 4 kilobytes, so I could see this failing if you have a thread with
a tiny stack that unexpectedly logs something.
|
|
12f15aaa
|
2022-04-27T10:03:32
|
|
fix build
|
|
05bd225a
|
2022-04-26T23:14:44
|
|
x11: If XRandR isn't available, add a generic display.
We can get _some_ of the info we need out of standard Xlib and report a
single display (which might actually be multiple physical displays mushed
into a single desktop). This is better than nothing, but you should really
just build with XRandR support and get a better X server. :)
|
|
ccc70e64
|
2022-04-26T23:14:21
|
|
x11: Fixed some compiler warnings.
|
|
7d7ec9c9
|
2022-04-26T16:41:28
|
|
x11: Remove XVidMode and Xinerama support.
Fixes #1782.
|
|
e551384a
|
2022-04-26T14:54:14
|
|
Added functions to get the platform dependent name for a joystick or game controller
|
|
b293888c
|
2022-04-26T19:44:34
|
|
Fixes an issue introduced via #5573 when building for i686
|
|
5066910b
|
2022-04-10T13:44:01
|
|
audio: Make pregenerated resampler kaiser filter more precise.
|
|
111c3add
|
2022-04-10T13:23:51
|
|
audio: Resampler optimizations.
- Calculate `j * RESAMPLER_SAMPLES_PER_ZERO_CROSSING` once per loop
iteration since we use it multiple times.
- Do the left-wing loop in two sections: while `srcframe < 0` and then
the remaining calculations when `srcframe >= 0`. This bubbles a conditional
out of every iteration of a tight loop, giving us a boost. We could
_probably_ do this to the right-wing loop too, but it's less straightforward
there.
- The real win: Use floats instead of doubles. This almost doubles the speed
of the entire function on Intel CPUs, and for embedded things without
hardware-level support for doubles, the speedup is enormous. This in
theory might reduce audio quality, though, and I had to put a check in
place to avoid a division-by-zero that we avoided at higher precision, but
this is likely to be worth keeping for at least the Sony PSP and other
smaller platforms, if not everyone.
|
|
de019568
|
2022-04-09T23:43:57
|
|
audio: Prebake the resampler's kaiser table instead of doing it at runtime.
|