Mathieu Eyraud
fe46569cce
Fix potential memory leak in SDL_AddHintCallback
2022-05-21 09:47:34 -07:00
Ivan Le Lann
e4b5afa576
fix unused variable depending on YUV format
2022-05-21 09:46:46 -07:00
Christian Rauch
e59cba95a0
add libdecor_dispatch
2022-05-21 09:40:26 -07:00
Ryan C. Gordon
dc62fec5e9
audio: Fix locking in backends that manage their own callback threads.
...
Otherwise you might get a race where an app pauses the device, but
the audio callback still manages to run after the pause is in place.
2022-05-20 21:08:29 -04:00
Sam Lantinga
b1cf322971
Fixed HIDAPI PS4 controller being picked up when running under Steam
...
Input with PS4 configuration enabled
2022-05-19 16:50:59 -07:00
Ryan C. Gordon
9edd411a83
x11: send move/resize events when waiting on fullscreen change.
...
Otherwise we ignore the Configure/etc events when they come in because
the window is already in an identical state as far as SDL is concerned.
Fixes #5593 .
May also fix:
Issue #5572 .
Issue #5595 .
2022-05-19 17:19:52 -04:00
Cameron Cawley
b798e49c92
Fix build warning with MSVC
2022-05-19 23:55:24 +03:00
Cameron Cawley
f0566702c5
Fix enabling SDL_DYNAMIC_API in OpenWatcom builds
2022-05-19 20:11:10 +03:00
Cameron Cawley
3d52d04977
Remove the '_' prefix from symbol names in Windows OpenWatcom builds
2022-05-19 20:11:10 +03:00
Cameron Cawley
9dfa000bc0
Initial support for building for Windows with OpenWatcom
2022-05-19 20:11:10 +03:00
Sam Lantinga
5669743a43
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
2022-05-19 09:52:47 -07:00
Ozkan Sezer
15781a6986
dynapi: fix SDL_DYNAPI_PROC for SDL_iPhoneSetAnimationCallback()
2022-05-19 18:55:02 +03:00
Cameron Cawley
f5cf0e37f7
Remove unused and duplicate defines from SDL_dynapi_overrides.h
2022-05-19 17:23:24 +03:00
Ozkan Sezer
03ebc4397f
dynapi: add missing SDLCALL for SDL_TLSSet's dtor param.
2022-05-19 14:01:10 +03:00
Pierre Wendling
501a499180
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.
2022-05-19 01:31:29 -07:00
Sam Lantinga
0e6d4baa6b
Fixed compile warning on gcc 11
2022-05-19 01:23:24 -07:00
Sam Lantinga
c7dff3a22e
Attempt to get the X1 and X2 button state on X11 by using the current event state instead of direct X11 query.
2022-05-19 00:35:22 -07:00
Sam Lantinga
57130b75a9
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.
2022-05-19 00:31:20 -07:00
Sam Lantinga
47f1cb550d
Fixed picking up the correct mapping for virtual controllers on Android
...
Fixes https://github.com/libsdl-org/SDL/issues/5662
2022-05-18 23:48:15 -07:00
Sam Lantinga
f7b774a7e0
Fixed build error on Linux if HAVE_INOTIFY isn't defined
...
Fixes https://github.com/libsdl-org/SDL/issues/5682
2022-05-18 17:59:17 -07:00
Sam Lantinga
f9a9d3c8d4
Also restore previous capture window if CaptureMouse() fails
2022-05-18 17:23:49 -07:00
Sam Lantinga
7044452dd6
Handle recursion in SDL_UpdateMouseCapture()
...
Fixes https://github.com/libsdl-org/SDL/pull/5608
2022-05-18 17:15:45 -07:00
Ozkan Sezer
dbd54dd708
adjust dynapi after commit 0cca71a changes for SDL_qsort and SDL_bsearch
2022-05-19 03:00:04 +03:00
Sam Lantinga
e19a9a7931
Fixed a message box getting the mouse capture state out of sync
2022-05-18 15:34:07 -07:00
Cameron Cawley
622311c016
Add extra XInput structures and defines for older SDKs
2022-05-18 15:04:42 -07:00
Cameron Cawley
c8eea02071
Fix C89 build errors in Windows builds
2022-05-18 15:03:15 -07:00
Cameron Cawley
0cca71a846
Use SDLCALL for callbacks in public APIs
2022-05-18 15:01:27 -07:00
Cameron Cawley
ffab9f46b5
Avoid clashing with system headers when redefining standard library functions
2022-05-18 16:44:17 -04:00
Sam Lantinga
06aca7edaa
Fixed warping back into the window when gaining focus with warp relative mode enabled
2022-05-18 10:10:51 -07:00
Sam Lantinga
b44241ab2f
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
2022-05-18 08:56:09 -07:00
Ivan Epifanov
8c5bda6acd
Vita: remove Vita-specific RWOps code
2022-05-18 08:29:25 -07:00
Sam Lantinga
aa6ea607d9
Fixed whitespace
...
Whitespace inconsistencies reported in https://github.com/libsdl-org/SDL/pull/5673
2022-05-18 06:58:14 -07:00
Ryan C. Gordon
56665e1d9d
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 .
2022-05-17 12:51:08 -04:00
Alex Szpakowski
e9c7b5191c
macOS: Fix reference counts of internal window data.
...
Fixes crashes when destroying or recreating a window (#5664 ).
2022-05-16 18:17:27 -07:00
Ozkan Sezer
a48004952d
disable dynapi for os/2, at least for now. (see bugs #5667 and #5669.)
2022-05-17 01:33:20 +03:00
Ozkan Sezer
ec1a0f62dd
SDL_malloc.c: workaround calling convention issues for real_xxx procs.
2022-05-17 01:33:02 +03:00
Sam Lantinga
1f2a241688
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.
2022-05-16 09:02:35 -07:00
Sam Lantinga
3c3ccb1d48
Fixed crash if a virtual joystick was disconnected
2022-05-16 08:56:17 -07:00
Ryan C. Gordon
2317a96c8e
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 .
2022-05-16 10:53:01 -04:00
Sam Lantinga
48b6cd8bc2
Fixed whitespace
2022-05-16 07:23:30 -07:00
Sam Lantinga
f0bc5c9cbf
Added effects support for virtual controllers
2022-05-16 07:21:28 -07:00
Sam Lantinga
b3a18706ee
Removed unused variables
2022-05-16 06:37:38 -07:00
Sam Lantinga
7e005bd843
Fixed mapping the paddle buttons with the virtual controller
2022-05-16 06:22:18 -07:00
Sam Lantinga
bfac54b59c
Added the ability to specify which buttons and axes are present for virtual controllers
2022-05-15 20:34:44 -07:00
Sam Lantinga
94eeb587c1
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
2022-05-15 20:01:12 -07:00
Sam Lantinga
7ad15c5b8f
Added game controller support for virtual joysticks
...
Fixes https://github.com/libsdl-org/SDL/issues/5662
2022-05-15 09:35:52 -07:00
Sam Lantinga
996b3dc37a
Fixed warning building with Visual Studio
2022-05-15 09:33:28 -07:00
Ethan Lee
e4bb3c8649
wayland: Fix build for configs without libdecor
2022-05-11 18:13:44 -04:00
Ethan Lee
6222bd3143
wayland: Don't create a new libdecor context if one already exists
2022-05-11 16:26:43 -04:00
Ethan Lee
6f88cbe4c9
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.
2022-05-11 13:13:59 -07:00