Commit Graph

6594 Commits

Author SHA1 Message Date
Sam Lantinga adf31f6ec0 Updated to version 2.26.3 for release 2023-02-06 14:08:14 -08:00
happyharryh c816300615 Fixed the hat_map to avoid segmentation fault
(cherry picked from commit 57e78f4cf53b0fc84900a047120263c3c71e721c)
(cherry picked from commit 2cb422360cef4763d16fdd1f753de55ebe858b7a)
2023-01-12 07:01:17 -08:00
Sam Lantinga ce67788629 Fixed centering the D-pad on some joysticks
Fixes https://github.com/libsdl-org/SDL/issues/6767

(cherry picked from commit d1b4810542183a415e42b11b516bf8d5b0a6d58c)
2023-01-12 07:01:17 -08:00
Sam Lantinga 05b03032f1 Updated copyright for 2023 2023-01-09 09:52:59 -08:00
Sam Lantinga 3c72e2de4d Fixed infinite loop shutting down WGI controllers
We are guaranteed that the lock will be held during shutdown, so if we are in InvokeRemoved(), it's because we're shutting down controllers and need to remove them from our internal list.

Fixes https://github.com/libsdl-org/SDL/issues/7016

(cherry picked from commit ac99db9fc8d528a79abb98a5641e0fd94aa20a9e)
(cherry picked from commit ebc2fb411f178c806119b57ae3c18553d7391a13)
2023-01-08 09:36:17 -08:00
Sam Lantinga f070c83a60 Updated to version 2.26.2 for release 2023-01-03 06:45:18 -08:00
Sam Lantinga d992d4f23e Fixed keyboard scancode mapping for parenthesis
(thanks to @meyraud705 for tracking down the root cause!)

Fixes https://github.com/libsdl-org/SDL/issues/6787
Closes https://github.com/libsdl-org/SDL/pull/6937

(cherry picked from commit e1bd5bd071d066e7009261f96c896423f6fd8fd0)
(cherry picked from commit 74229d4a41fd807b152427883fc8738844b64bb2)
2022-12-29 14:56:14 -08:00
Sam Lantinga 81975cc2d0 Fixed getting the VID/PID of a virtual joystick
(cherry picked from commit e40a96155fc488feaeeeb79f947eb43399faa481)
(cherry picked from commit 29a4c5ebc2523f2d9cde1601405dbdafb847c559)
2022-12-28 12:53:07 -08:00
Sam Lantinga 278c78e34c Make sure we match the same way when adding a mapping and looking up a mapping
Fixes https://github.com/libsdl-org/SDL/issues/6898

(cherry picked from commit 3db9112ef4cbb936b11f941f8a98c1704e37e140)
2022-12-28 10:00:00 +03:00
Sam Lantinga 690e2f21f2 Don't send Razer devices the Sony third-party query feature report
Some of them lock up or reset, and the vast majority of devices are not actually game controllers.

Fixes https://github.com/libsdl-org/SDL/issues/6733

(cherry picked from commit 83b29f9ce1fe6caa06769544c3b5f6c10ea97a0f)
2022-12-20 00:28:00 +03:00
Sylvain Becker 52176e25e1
DBus: add a reference to the connection
Fixed bug #6712
2022-12-14 17:58:57 +01:00
Ryan C. Gordon 40698ee33c wasapi: Fixed incorrect assertions.
Fixes #6795.
(cherry-picked from commit 12486e144be0e7a37abd87b8bf90547a992ff66b)
2022-12-13 14:00:20 +03:00
Sam Lantinga 6b5610752b Don't try to open the Razer Huntsman Elite keyboard as a controller
(cherry picked from commit 817454cfe6db826f6cf6688952e28ee07b27a89a)
2022-12-13 01:20:11 -08:00
Sam Lantinga f17058b562 Updated to version 2.26.1 for release 2022-12-01 11:54:51 -08:00
Sam Lantinga 2879f2aeba Fixed crash if GetRectDisplayIndex() is called before SDL_VideoInit()
(cherry picked from commit d87048fd5a7dff55c4cb205dd29e527c9cc51225)
2022-11-30 14:49:39 -08:00
Markus Mittendrein 79373c5a5c
SDL_ResampleAudio: Fix float accumulation error
While 78f97108f9 reduced the accumulation error, it was still big enough to cause distortions.
Fixes #6196.

(cherry picked from commit 8145212103264b04c20cdb50b430f3c99b44e9b4)
2022-11-27 21:15:38 -05:00
Joshua Root f4080637c4 Fix build with Xcode < 7
The _Nullable attribute is not available in older versions.

(cherry picked from commit 9a64aa6f95298bf459f8b9dca583df7064956cd9)
2022-11-26 20:37:12 -08:00
Sam Lantinga 92057e683e Temporary hack to address performance issues in https://github.com/libsdl-org/SDL/issues/6581#issuecomment-1327987916 (thanks @icculus!)
(cherry picked from commit 9c8369e097b229997875c0aeb4dc9cfdcde0e2b2)
2022-11-26 13:11:41 -08:00
Ryan C. Gordon 5edd6846db cocoa: Patched to compile on macOS SDK < 10.10.
Fixes #6586.

(cherry picked from commit fa5adcafd52303fde86c64094462303404259d75)
2022-11-26 14:00:59 -05:00
Michael Fitzmayer 859cb13ef8 Add bitdraw.h, remove non-working stub class
(cherry picked from commit 67f31a19a8eb06ee80bccb9ec8cc8c34aa635b3d)
2022-11-24 13:13:34 -08:00
Sylvain Becker c76a31341c SDL_mfijoystick.m: remove VLA, so that projects can be built with error on vla 2022-11-24 16:08:38 +01:00
Frank Praznik 00731eb011 wayland: Fix build when not using the shared Wayland libraries
Explicitly include the Wayland protocol headers when statically linking against the Wayland libraries or older system headers might be used instead of the local versions.

(cherry picked from commit 836eb224428aca3bdab2a6bf56d347262e475b15)
2022-11-24 03:01:49 -08:00
Joshua Root bf70a37606 vulkan_metal.h: Make compatible with ObjC ARC
Fixes #6598

(cherry picked from commit 239423e205496997a387b4f265b1cdaf5acd18cb)
2022-11-23 17:39:41 -08:00
Frank Praznik da1bddd27c wayland: Fix libdecor_dispatch signature
The function returns an int, not a bool.

(cherry picked from commit f47169fcba8a27bb0740b6b4993989ff9262c21f)
2022-11-23 15:18:06 -08:00
Joshua Root 9925ee52d7 SDL_mfijoystick.m: fix build with Xcode < 9
Fixes #6601.

(cherry picked from commit 53ca1f77029289a58f1a9963a00b637b903f494d)
2022-11-23 12:48:34 -08:00
Joshua Root 66620bd108 Check build-time SDK in LoadMainMenuNibIfAvailable
Fixes building against OS X 10.7 SDK.

(cherry picked from commit f8cebeea599ae65f36d388257a9d9a8ed8ada576)
2022-11-23 12:28:57 -08:00
Joshua Root 72823dd0cd SDL_cocoaopengl.h: ensure CVDisplayLinkRef is defined
The typedef seems to be pulled in coincidentally with newer SDKs, but
older ones need to import the header explicitly.

(cherry picked from commit d2910904fb4062c313636c7595e971f1bf248075)
2022-11-23 12:22:55 -08:00
Sam Lantinga 479e972e56 Removed G29 from controller_type.c
We don't want the G29 to show up as a gamepad, Steam will create a virtual Xbox controller for it, which breaks racing games.

(cherry picked from commit dce6ed56d72b436f15c044b05097ddebbc166701)
2022-11-22 10:58:01 -08:00
Sam Lantinga 3bf150e900 Revert "Added Linux mappings for the Logitech G29 in PS3 and PS4 modes"
This reverts commit 33a68f575f.

We don't want the G29 to show up as a gamepad, Steam will create a virtual Xbox controller for it, which breaks racing games.

(cherry picked from commit e3d430b83eb7c754c789fb23184feb745c2b99a8)
2022-11-22 10:57:58 -08:00
Sam Lantinga 0bfeed061b Updated to version 2.26.0 for release 2022-11-21 16:15:58 -08:00
Sam Lantinga d167cd6715 Added the Gunfighter Mk.III ‘Space Combat Edition’ as a flight stick 2022-11-21 09:02:10 -08:00
Sam Lantinga 8b20b568b0 Don't report battery level for disconnected batteries
Fixes https://github.com/libsdl-org/SDL/issues/6536
2022-11-21 07:42:14 -08:00
Frank Praznik fe396e306e wayland: Use the cached window size when switching from non-floating to floating window state
When changing the window state from non-floating to floating (e.g. leaving fullscreen), libdecor can send bogus content sizes that are +/- the height of the window title bar and start 'walking' the window height in one direction or the other with every transition.

The floating window size is known, so use the cached value instead of the size reported by libdecor when restoring the floating state.
2022-11-19 09:15:27 -08:00
Sam Lantinga 509939b1b6 Disable the third party PS3 HIDAPI driver by default, the L3/R3 buttons are unknown 2022-11-18 18:20:53 -08:00
Sam Lantinga ff99e56d3a Fixed KMSDRM window creation failing if OpenGL libraries are not available, but GLES 2.0 libraries are 2022-11-18 12:54:55 -08:00
Sam Lantinga da9ba3a2a1 If a CRTC doesn't have a mode configured, use the preferred or largest mode as the default mode
Fixes https://github.com/libsdl-org/SDL/issues/6421
2022-11-18 12:17:27 -08:00
Sam Lantinga ea4ea27a59 Don't trigger an error if we try to delete a touch device after shutting down the touch system
This can happen on Raspberry Pi if the display system fails to initialize.
2022-11-18 11:14:14 -08:00
David Gow 81479d8784 wayland: keyboard: Cache text input parameters.
Some applications (and embarrassingly, testime is one of them) call
SDL_StartTextInput() or SDL_SetTextInputRect() every frame. On KDE/KWin
with fcitx5, this causes there to be several preedit events every frame
(particularly given some of the workarounds in Wayland_StartTextInput),
which slows testime down to an unusable crawl.

Instead, make SDL_StartTextInput() a no-op if text input is already
enabled, and cache the input rect, only changing it when the new rect is
actually different.

With these changes, we only get preedit events (and hence
SDL_TEXTEDITING events) when the preedit string actually changes. This
matches the behaviour under XWayland, and works very smoothly.
2022-11-18 07:18:36 -08:00
Ozkan Sezer 6dc96aa745 SDL_UDEV_DelCallback: return early if _this is NULL
Fixes https://github.com/libsdl-org/SDL/issues/6548
2022-11-18 18:02:10 +03:00
Sylvain 16824865c2 Cleanup of SDL_SetError that already return -1 value 2022-11-18 06:59:10 -08:00
Sylvain 3e70553c48 Unneed test before calling SDL_FreeSurface 2022-11-18 06:58:34 -08:00
Sam Lantinga 78ea6af2cd Updated to version 2.25.1 for release candidate 2022-11-17 09:01:35 -08:00
Sylvain 89572af6a8
Fixed bug #6537 - AIX: use PAUDIO_WaitDevice 2022-11-17 11:43:46 +01:00
Sylvain cd0d5a5fc5
Don't compare pointer against '0', but NULL 2022-11-17 11:23:15 +01:00
Sylvain ddad901c0d
Remove unneeded semicolon 2022-11-17 10:43:45 +01:00
Sylvain 60c6cd554d
Fixed bug #6533 - PS2_JoystickUpdate: some invalid condition 2022-11-17 09:34:27 +01:00
Sam Lantinga 77bcd269be Allow creating an empty surface with pitch 0
This fixes Maelstrom, which creates an empty staging surface and then uses it for transfer to texture
2022-11-16 22:23:16 -08:00
Ryan C. Gordon a1702d463c
ibus: Try to use org.freedesktop.portal.IBus first if available.
This should fix apps that want ibus support inside sandboxed environments
like FlatPak or Snaps.

Fixes #4706.
2022-11-16 23:39:41 -05:00
Ryan C. Gordon bb0b8adacc mac: Fix handling of deprecated symbol.
This needs to check what our deployment target is, not what SDK
is available, since this is a linker symbol and not an enum
value or whatever.

Also removed a copy/paste error that mentioned CoreAudio in
the haptic subsystem.

Fixes #6534.
2022-11-16 22:04:04 -05:00
Sam Lantinga 913e403f2a Fixed error message when trying to create an OpenGLES2 renderer on macOS
Testing: testsprite2 --renderer opengles2

OpenGLES2 isn't available by default, and we want to see the error "Could not load EGL library"
2022-11-16 18:03:29 -08:00