src

Branch


Log

Author Commit Date CI Message
Thomas de Grivel ac7374c8 2023-12-08T20:27:56 fix pthread
Sam Lantinga 15ead9a4 2023-11-02T10:00:33 Updated to version 2.28.5 for release
Sam Lantinga 7ebfaa0e 2023-11-02T08:33:15 Check to make sure the Windows joystick device has buttons and axes This reverts commit e5a15f94e2f1a8fbbffb25ea9932cda9679a68fd. It turns out removing this check allows mice like the ROG PUGIO II to show up as game controllers. We need to find a different way to differentiate between gaming mice and pedals. Since these mice show up as controllers, and potentially causing games to use them instead of real controllers, we'll go ahead revert this change for now. Reopens https://github.com/libsdl-org/SDL/issues/8227 (cherry picked from commit ad0af488837e44cbea0f0eab3b2f73b50a74bff4) (cherry picked from commit 20ecd2afcb6a4ef6acb39505d307d42390e6a345)
Frank Praznik 746d74b1 2023-10-29T14:23:14 wayland: Sanity check pointers and protocols before confining (cherry picked from commit 875e45e70b4086ca8cdff405231fc616f06cda7e) (cherry picked from commit 60e8ff16dc147780c7ffee030adc870b9e6042d1)
Frank Praznik 7d9595b1 2023-10-29T14:12:38 wayland: Check the relative pointer handle before destroying If the relative protocol is unsupported, this will always be null and the destroy function won't be called. (cherry picked from commit 0e87b71d08c75af8c4b02808038825d3b16bf854) (cherry picked from commit 19c3e125ba71e4667743316f606872cc39f25a81)
Sam Lantinga 63d259ed 2023-10-26T17:07:40 Fixed making the EGL context current when resuming on Android Make sure that we don't have the context cached as current on the current thread. (cherry picked from commit 8b6da3c7017935932357a0decee84dc6167ace17) (cherry picked from commit 832afa81a17098ec011cf3df14fdc9457ec8f36b)
Sam Lantinga 74b3959e 2023-10-25T09:00:26 Added support for the HP HyperX Clutch Gladiate controller (cherry picked from commit f52b330ed84c477a94094302aa6a3baaca87019d) (cherry picked from commit 1db0bd3fc053c5a444977cc1409cb5106e555252)
Sam Lantinga a5df4851 2023-10-24T16:41:19 Added support for "%[]" sscanf syntax Fixes https://github.com/libsdl-org/SDL/issues/8423 (cherry picked from commit 39a961ba41430788774f1b8c0e6d63f7308116e7) (cherry picked from commit 4194a902e8d038fb5285d92dbaa72683a28cb31e)
Sam Lantinga 78d5fbf3 2023-10-23T10:42:36 SDL_IsJoystickProductWheel() returns SDL_TRUE for Asetek wheelbases (thanks @IOBYTE!) (cherry picked from commit e07f6c0a17fbf60eca96152036b2494d0cfafecd) (cherry picked from commit d47c286b12eccee479ba57c8897092c6277ef962)
Sam Lantinga 5d66429c 2023-10-23T08:27:24 Add missing error reporting in Android_JNI_FileOpen() Fixes https://github.com/libsdl-org/SDL/issues/8427 (cherry picked from commit a844d909426153985136433f28ee5621affce97e) (cherry picked from commit 259009a7ea3a8ec05d0e8f59b7909bb234e00f85)
Sam Lantinga 2ca041d2 2023-10-22T09:10:14 Revert "Check to make sure the Windows joystick device has buttons and axes" This reverts commit 642504bc5993a6acd4d9c1d4c1314c6b1cf6e4e1. We have SDL_HINT_JOYSTICK_ROG_CHAKRAM to ignore or allow the ROG Chakram X mouse to be used as a joystick. Fixes https://github.com/libsdl-org/SDL/issues/8227 (cherry picked from commit e5a15f94e2f1a8fbbffb25ea9932cda9679a68fd) (cherry picked from commit e3e41b69a1060d87dfe635a35ed56cba23574aaa)
Cameron Gutman b3f19b14 2023-10-17T21:41:30 Check for device disconnection in HIDAPI_JoystickOpen() HIDAPI joystick drivers may call HIDAPI_JoystickDisconnected() in their UpdateDevice() function during HIDAPI_JoystickOpen(). If they do this today, the opened joystick will end up partially initialized (no name, path, mapping GUID, etc.) because HIDAPI_GetDeviceByIndex() will no longer be able to find the SDL_HIDAPI_Device for the removed joystick. Worse still, joystick->hwdata->device becomes a dangling freed pointer the next time HIDAPI_UpdateDeviceList() is called. This leads to a UAF when the application or SDL calls SDL_JoystickClose() on this joystick. Fix all this by checking if the device no longer has any associated joysticks after calling UpdateDevice() and failing the open call if so. (cherry picked from commit 435e7ce663b7e568086c5dc0fb1bb889e41a3ed1) (cherry picked from commit 4aab2342e9aabc7e506952dbe5e021f3d3604929)
Sylvain a85cf62c 2023-03-21T12:24:45 Fix sdltest_randomAsciiStringWithMaximumLength() where it requests a string a size 0 seen with: ./testautomation --seed MILAFAP2AKVP3V4G --filter sdltest_randomAsciiStringWithMaximumLength
Ryan C. Gordon 5be746ac 2023-10-11T00:50:53 x11: Properly check for XInput2 support before using it. This specifically fixes a crash in X11_WarpMouseInternal if XInput2 was missing at runtime, but also cleans up a few other existing checks. Fixes #8378. (cherry picked from commit 82f54af6177f3d50be1db42a528027ada6ea0a20) (cherry picked from commit 2849ca404e040245e90fdf7b81e3878aa31204b5)
Ozkan Sezer 6fc17b0e 2023-10-10T10:40:00 artsaudio: revert bad arts_init return code check from commit ce5da5d.
Frank Praznik 1f7ec57d 2023-03-18T12:03:08 wayland: Unref the libdecor window when hiding Hiding the decorations while not unreferencing the frame was a workaround for an internal libdecor use-after-free bug that was fixed some time ago. Revert to unreferencing the window when hiding to ensure that it is properly destroyed. Reverts dd2e318
Anonymous Maarten 36eb4845 2023-10-05T13:40:09 triangle: don't read destination pixel when you're going to discard it anyways
Anonymous Maarten d5ba5bb0 2023-10-04T21:17:13 blit_slow: don't read destination pixel when you're going to discard it anyways (cherry picked from commit 4cd0c13823551cce279c9ff3d284c41c28deb3d8) (cherry picked from commit 2d5c05a69cca65e0eb01b4bae23737fe970f7bb1)
Sam Lantinga cc016b00 2023-10-01T12:05:05 Updated to version 2.28.4 for release
Anonymous Maarten 8c3fd5ae 2023-09-30T16:33:56 snd_pcm_plugin_flush was removed in QNX 7.1 and later Co-authored-by: elahav <elahav@users.noreply.github.com>
Anonymous Maarten 145ad48c 2023-09-29T19:09:09 Allow the use of posix_spawn() instead of vfork/execlp() Backport of #7041 Co-authored-by: elahav <elahav@users.noreply.github.com>
Simon McVittie fd495bb5 2023-09-29T14:23:36 SDLTest_CompareSurfaces: Decode pixels correctly on big-endian platforms Previously, if acting on a surface with less than 32 bits per pixel, this code was placing the pixel value from the surface in the first few bytes of the Uint32 to be decoded, and unrelated data from a subsequent pixel in the remaining bytes. Because SDL_GetRGBA takes the bits to be decoded from the least-significant bits of the given value, ignoring the higher-order bits if any, this happened to be correct on little-endian platforms, where the first few bytes store the least-significant bits of an integer. However, it was incorrect on big-endian, where the first few bytes are the most-significant bits of an integer. The previous implementation also assumed that unaligned access to a 32-bit quantity is possible, which is not the case on all CPUs (but happens to be true on x86). These issues were not discovered until now because SDLTest_CompareSurfaces() is only used in testautomation, which until recently was not being run routinely at build-time, because it contained other assumptions that can fail in an autobuilder or CI environment. Resolves: https://github.com/libsdl-org/SDL/issues/8315 Signed-off-by: Simon McVittie <smcv@collabora.com> (cherry picked from commit d95d2d7051e23271db7cec43134582834fb3ac8b) (cherry picked from commit 6b5eadb10f02b51b400e710e2c95e9f0c2cb579c)
Sam Lantinga d58fa94e 2023-09-24T17:27:23 SDL_iconv_string() defaults to UTF-8 Fixes https://github.com/libsdl-org/SDL/issues/8287 (cherry picked from commit 1375d2049d9fd17cb0d9a47a0e256a42c3188f76) (cherry picked from commit 9772d0512c8a0bb1841244ef9043e598ba0c0ff7)
Sam Lantinga d6910106 2023-09-24T17:17:49 Check for NULL before dereferencing newly allocated memory Fixes https://github.com/libsdl-org/SDL/issues/8289 (cherry picked from commit 70a1bc69739016884a22abe6bf86f8a5deba29ef) (cherry picked from commit 27f2df2292cceab64ff25f94efca5ec8bc5f1478)
Ryan C. Gordon b93a8a86 2023-09-20T14:32:41 emscripten: Restore compatibility with existing emsdk releases. (cherry picked from commit 5008521538ffe7931ecd0d11c4a5e75a05f54b5b)
Jaswant Panchumarti 536f625b 2023-09-19T10:45:50 Use EM_ASM_PTR when the return value is a pointer - closes https://github.com/libsdl-org/SDL/issues/8241 (cherry picked from commit 953b55dd6da1dd9fb937f3c67a18c5cab2988599)
Sam Lantinga cc4973ea 2023-09-18T12:55:43 Fixed sensor timestamp units for third-party PS5 controllers (cherry picked from commit a72dfa6a5fe8d8901175db852de8686b83487522) (cherry picked from commit 37dee79b74723b7021ccaa946e31872f0539df4a)
Sam Lantinga 8114bd91 2023-09-18T12:19:18 Fixed error: array subscript 2 is above array bounds of ‘const Uint8[2]’ Smart compilers don't like dereferencing off the end of arrays (cherry picked from commit f6756047a4190d9c82222e4ec378bdb14a72f8d7) (cherry picked from commit 62e7049a4f6eedc75d7ffb9cffc435f491f1577c)
Sam Lantinga 495fca15 2023-09-18T11:50:56 Fixed sensor timestamp calculation for third-party PS5 controllers (cherry picked from commit 7059a55ccca04b75145c3d23a317fbe1eb77039e) (cherry picked from commit fff3c2573a46b685f73646dc01937a88c35b3be6)
Sam Clegg 7d80e208 2023-07-05T13:52:37 emscripten: Add JS library dependencies using EM_JS_DEPS macro See https://github.com/emscripten-core/emscripten/pull/19780 (cherry picked from commit 042243471fb7ecf6ba5e53f0ba35e825a8bb066a)
Guldoman f3847c15 2023-09-15T02:01:08 x11: Always update clipboard owner This allows utilities like clipboard managers to keep track of the changes. (cherry picked from commit 65aaf3a9ab9ec2be2973084060c2df5321b5acaa) (cherry picked from commit 70a2ac2f1c1ce6509252ae588ba54fff31063f32)
Max Bachmann b576e29d 2023-09-13T00:24:47 detect fanatec steering wheels (cherry picked from commit fd1c54a004250d844d82bb20ddfe75029585f53a) (cherry picked from commit a8b9414697c3dece1605b2d1c146649c634eba54)
Simon McVittie d710e0be 2023-09-09T14:36:21 render: Enable clipping for zero-sized rectangles Battle for Wesnoth apparently relies on being able to disable rendering of UI elements by setting the clip rectangle to be empty. Resolves: https://github.com/libsdl-org/SDL/issues/6896 Fixes: 00f05dcf "render: only enable clipping when the rectangle is valid" Signed-off-by: Simon McVittie <smcv@collabora.com> (cherry picked from commit 8ad043fc38f09e5a88aca266ae6b70f572d66a1f)
Makarenko Oleg e9ab663c 2023-09-04T22:11:13 Detect Simagic wheel bases as wheels (#8198) Simagic DirectDrive wheel bases have the same vendor + product id's (cherry picked from commit a2c1984d371e86e97bd6ffb176e835925e6afb3a) (cherry picked from commit 1d495351a0944c598e78c130b635f9447b5bc871)
Oleg c8d1de1a 2023-09-04T20:26:24 Detect Logitech G923 Playstation as wheel G923 have two different versions - Xbox version is already present in the wheel list, but not the PS version. (cherry picked from commit 266b91d2fd2b3362d1828f8a6b58589bdaa4f75d) (cherry picked from commit 365a36386ac18a2636c0d7b9597edb3644df0735)
Oleg bf8c9cd6 2023-09-04T20:46:09 Detect Logitech PRO Racing Wheel for Xbox (PC mode) as wheel Logitech PRO Racing Wheel have two different versions - for Playstation and Xbox. Vendor + Product ID for Playstation version already present in SDL sources, but not an Xbox version (cherry picked from commit cde67ea49ad812088bd5c8cfd67ef090ac1c1d86) (cherry picked from commit 242b25aba47871a571457bc6e71ff4c89bbafc3b)
Sam Lantinga 8a5ba43d 2023-09-01T11:22:07 Updated to version 2.28.3 for release
Jeremy Demeule c25a49c4 2023-08-31T10:23:45 metal: Add hint to select low power device instead of the default one (#8182) On some system like MacBook Pro Intel with AMD card, asking for the default device will always return the AMD GPU. This is not an issue for 99% of the case when the renderer context is here to provide the maximum performance level like for game. However, for video application using GPU for 1 quad and 1 texture, using the discrete GPU for that lead to an important power consumption (4 to 8W), heat increase, and fan noise. With this patch, I successfully amend ffplay to only use the integrated GPU (i.e. the Intel one), instead of the discrete GPU (i.e. the AMD one). (cherry picked from commit aa7ba629784ebf4a253cf78d85c286c310ad0cb5)
Anonymous Maarten d46fdfa3 2023-08-30T23:03:03 wayland: add SDL_VIDEO_DRIVER_WAYLAND_DYNAMIC_EGL
Anonymous Maarten 787d3392 2023-08-30T19:28:11 wayland: don't define SDL_VIDEO_DRIVER_WAYLAND_DYNAMIC_* macro's They mess with #ifdef conditional in headers.
Sam Lantinga 874f6fea 2023-08-24T11:37:50 Fixed the report format for the Razer Wolverine V2 Pro (cherry picked from commit 69aec8c915b5cddae2bb6171d7d5404f4d779db3) (cherry picked from commit 6ff48dddcb34736a3550ba94f8ef3f3ce3e79de5)
Sam Lantinga ae72cd57 2023-08-13T13:53:13 Quiet spurious warning Fixes https://github.com/libsdl-org/SDL/issues/8112 (cherry picked from commit 0b9d8e679a26ee98bb055efd244c703b7dda8727)
Anonymous Maarten 5bfdb6e0 2023-08-10T23:43:58 Fix overflow when doing SDL_sscanf("%hd", ...) An overflow occured in the stdlib_sscanf test, when using msys2 clang32 toolchain. (cherry picked from commit 342ec5113171214154cb197bb3e0e3a0056ea2ad) (cherry picked from commit 10135b2d7bbed6ea0cba24410ebc12887d92968d)
Mathieu Eyraud 739d3ec1 2023-08-10T15:05:29 Fix out of bound read of 'has_hat' array (cherry picked from commit 94b3f78c440bfd52182848adf39db71325861e9c) (cherry picked from commit f348370e1b3416f70e3fd1e5668a385b661b4a48)
Sam Lantinga e0a34570 2023-07-19T09:22:01 The Flydigi Vader and Apex series controllers all have the same VID, PID, and name (cherry picked from commit 58e3084477afe344bae42ab352d56eba25b4a36b) (cherry picked from commit 0f753d97940d0a5ba01f0274ac742ee427263bd5)
Sam Lantinga 9fba3651 2023-07-14T18:40:10 Removed Flydigi Vader 2 mappings Many of the Flydigi controllers use the same VID/PID and have different mappings, so let's revisit this once we have more data. (cherry picked from commit 5388edd5494030b8c43b2f79e3f5c9b71f57a703) (cherry picked from commit 805fc29ae8aead9fba8e0fa2b155dd3a9f6618f2)
Sam Lantinga 2ccb311c 2023-08-02T14:35:39 Added a gamepad mapping for the G-Shark GS-GP702 Fixes https://github.com/libsdl-org/SDL/issues/8068 (cherry picked from commit 06bea1eb5544e778c1258d3d7f47f6d06110c379) (cherry picked from commit 2304b4e86a05cbf418b96055b72fc4eaf874531f)
Ozkan Sezer 45fb778f 2023-08-02T20:40:24 adjusted coding style in SDL_os2_joystick.c to match rest of SDL better (cherry picked from commit 57f3c41b9727d8cfb701401bc539be45285a0399)
Sam Lantinga 031912c4 2023-08-02T08:31:19 Updated to version 2.28.2 for release
Ozkan Sezer 348cc05b 2023-08-02T17:10:28 minor os/2 stuff merged from the bitwiseworks' fork (cosmetics only.) (cherry picked from commit b58557a3a60de6e945536c41147061afa8468286)
Ozkan Sezer e2e87a53 2023-08-02T17:00:10 SDL_video.c: move ngage video before offscreen. Reference issue: https://github.com/libsdl-org/SDL/pull/8069.
Ozkan Sezer 66d5ad19 2023-08-02T14:05:55 SDL_video.c: move os2 video before offscreen. as offscreen is enabled in CMakeLists.txt, we get a blanks window otherwise. From a patch by Silvan Scherrer, at Bitwiseworks' fork.
Sam Lantinga 94e945cc 2023-08-02T01:37:05 Fixed build (cherry picked from commit ebf2c49b505b67838f8fb00c0b2ed0ce03856f38)
Sam Lantinga 3f93f56b 2023-08-02T01:08:00 Fixed duplicate key press/release events on iOS When a hardware keyboard is attached, it can take over 100 ms for the keyboard event to generate text input. In that case we want to record that we recently received a keyboard event so we don't synthesize duplicate virtual key press/release events for the input text. (cherry picked from commit 648de4f9b8ebcf9e794aba2ec2955d129167c48b) (cherry picked from commit 38c63afd64450cab8166485c7f93f2cf6c0fa038)
Sam Lantinga ed5ef8fe 2023-08-01T23:56:04 Synchronize on-screen keyboard state with text input active state When a hardware keyboard is attached to an iPad, you can easily trigger a set of on-screen keyboard transitions that will take place over time, and we need to track whether we're currently showing or hiding the keyboard and make sure we don't clobber the existing state during those transitions. Testing: * Connected a hardware keyboard to an iPad * Launched checkkeys * Noted the keyboard bar was active at the bottom of the screen and text input was active * Tapped with both fingers to quickly toggle text input off and back on * Noted the keyboard bar slid down and then back up, and text input was active * Tapped on the keyboard bar to bring up the full on-screen keyboard and then closed it so the keyboard bar was still active, and text input was still active * Tapped on the screen to turn text input off, noted the keyboard bar slid down * Tapped with both fingers to quickly toggle text input on and back off * Noted that the keyboard bar slid up and then back down, and text input was inactive * Tapped on the screen to turn text input on, tapped on the keyboard bar to bring up the full on-screen keyboard, and text input was active * Pressed a key on the physical keyboard, the on-screen keyboard closed, the key press and release was delivered (with no text input) and then the keyboard bar slid up, and text input was active again Fixes https://github.com/libsdl-org/SDL/issues/7979 (cherry picked from commit c3288d113e434b20d2f0dda73210d3a52504d199) (cherry picked from commit 030bb7282a8c93caf15fd023e02de888def7f582)
Sam Lantinga 39781eef 2023-08-02T00:19:57 Only pass keypresses up the responder chain when text input is active This is another attempt to make sure we don't cause beeps from unhandled key presses while still allowing full text input functionalty. If this isn't selective enough, we might need to go up the responder chain to see what's going to handle the event before passing it along. Fixes https://github.com/libsdl-org/SDL/pull/6962 (cherry picked from commit a8abe612ed5597cbaabb903c0121b5b48baee91d) (cherry picked from commit 335e9c769a5d49fe023b528c48a45c8ce3ed60d0)
Sam Lantinga 34361248 2023-08-01T20:38:45 Revert "Stop beep when running iOS apps on ARM-based Macs" This reverts commit bbf38bbbc334bc0ee90d3eec228a968d8fc1689e, which prevented text input from working when a hardware keyboard was connected, since key strokes don't get to the text input field. Fixes https://github.com/libsdl-org/SDL/issues/7958 (cherry picked from commit f5ea6ae18d860796184b9b31a2005957cb7e30a2) (cherry picked from commit 5e9320f6b5f4492fea026f1d9c14a4b9787f7a22)
Sam Lantinga 9267a903 2023-08-01T18:58:21 Fixed build (cherry picked from commit e2afc1f37a2f0b38716e71147e41737e24ed4be7)
Sam Lantinga 02be870c 2023-08-01T18:28:55 Fixed crash if a display is enumerated twice This can happen if a monitor is in the process of becoming primary because another monitor was disconnected. (cherry picked from commit 07578fde3dad2dadd605f5b18399c8d021f6ae5d) (cherry picked from commit 2468fccf7fa7fa315d6652c7babf85f2d09f035b)
Ryan C. Gordon 84ad5316 2023-08-01T18:34:03 cocoa: Ignore first mouse motion event after enabling relative mode. Fixes #7918. (cherry picked from commit dc5dda0f311ea596a5152ec2f8f062f9309eb1d9)
Ryan C. Gordon e73a81b2 2023-08-01T13:55:04 x11: Blocking for window maximization should wait 100 ms, not 1000. Reference Issue #7070. (cherry picked from commit 3030fd815c4d05b5286f7cb9c8a8a2b42cff7bb1)
Ryan C. Gordon 133ad191 2023-08-01T12:10:52 Revert "x11: check if window size/position has changed during SDL_ShowWindow." This reverts commit aa536217b3e1a9ea4a5de9944cadbd79b134a41a. (cherry picked from commit 5c3df60ec913f5b0fd04835af56f3afd42694893)
Sam Lantinga 5733f42c 2023-07-31T14:38:48 Fall back to Xlib if XRandR isn't available This fixes video initialization on headless systems with VNC Fixes https://github.com/libsdl-org/SDL/issues/8054 (cherry picked from commit 71099149b8fc062ea0ece232ccdd9f0ee9b3588b) (cherry picked from commit 8825fbf71391631f1a7ee7ca224a2f4e01cd8814)
Mathieu Eyraud dda97183 2023-07-29T15:56:00 Add missing break (cherry picked from commit 0500fca00c141cc4ab9be15ce5ddb7bc8c5c17b2)
Ozkan Sezer 38a5aed9 2023-07-28T23:55:50 minor os/2 stuff merged from the bitwiseworks' fork
Sam Lantinga 301f2278 2023-07-27T12:48:15 Sorted controller list (cherry picked from commit 3174d0b97025376e4a7b6e881501a43472238e0e) (cherry picked from commit 507be6c3f819ad24b08eb3d28e7e14c9aeb6b60a)
Max Maisel 2ca4c023 2023-07-26T20:49:21 Add Steam Deck controller mapping to database. This adds support for the back paddles, and the "..." key which are not automatically detected. * "Back" is mapped to the top left "two windows" key. * "Start" is mapped to the top right "hambuger menu" key. * "Guide" is mapped to the "Steam" key. * The "..." key is just a generic button. When looking at the screen, paddles are number * P1: Top right * P2: Top left * P3: Bottom right * P4: Botom Left The new controller mapping was created with the SDL3 gamepadmap tool. (cherry picked from commit 27b8abb0562f46e64337d5d799b877c357001254) (cherry picked from commit f4561db69a6c534e9e041f890cc06e42bdbdec4d)
Ozkan Sezer e3f90c60 2023-07-17T00:10:50 remove unused vulkan/*.hpp files. (cherry picked from commit 611b3dd1fd7aec30ba9c830c7c5f8a0cdbaf9ff5)
Ozkan Sezer b4d87654 2023-07-25T11:40:02 os2 audio refactoring and capture support - Fixed audio device detection and usage. - Implemented audio capture support - Refactored buffer handling to separate pointers to fill and drain buffers. Based on patches by josch1710 and Lars Erdmann: https://github.com/bitwiseworks/SDL2-os2/pull/7 (cherry picked from commit 890bee64a4494b8575c53c68adfaf7c594d07c27)
Weng Xuetian 2eb73e24 2023-07-20T12:04:01 Remove the unimplemented CloseIC in fcitx module This call is actually a left-over when porting from fcitx4 service to the new org.freedesktop.portal.Fcitx supported by both fcitx4/fcitx5. CloseIC is actually never a part of the new interface on org.freedesktop.portal.Fcitx. It cause any issue user visible effect.
Sam Lantinga fb57ba76 2023-07-17T17:08:17 Fixed LED pending check failing when the controller timestamp is very large In this case we know the controller has been on for a while and the Bluetooth connection LED cycle is complete. Also fixed the timestamp being zero the first time it is checked (cherry picked from commit bd4f155bbbdc4be34505535e4bd936ae12671925) (cherry picked from commit f7dc8c0eaa66cf33dcacb31cc3d09dee197bacbe)
Sam Lantinga 63a98d0d 2023-07-17T16:45:31 Don't send k_EPS5FeatureReportIdCapabilities to Sony PS5 controllers This report is for third party controllers only. (cherry picked from commit 16dd5f0da4ee950e9f998a757dcb4789463e67e2) (cherry picked from commit bb036ef5441f6e0374eed6a02adb9dc66273c629)
Sam Lantinga 78f11e05 2023-07-17T16:42:58 Don't tickle Bluetooth PS5 controllers in simple mode with an effects packet That will put the PS5 controller into enhanced mode, which breaks DirectInput games (cherry picked from commit 2fef0be2f646ae048e239aa6694e632081c85238) (cherry picked from commit 910dad505af1684d1a6ebce3a8a371830fd3e50b)
Sam Lantinga ff4fd93f 2023-07-14T10:01:04 Fixed getting the CRC of virtual joysticks without a VID/PID (cherry picked from commit b40fb5c51e2a5350ba00fbf4db86b4ae1066db92) (cherry picked from commit 6089b35706171b950f55a010bc9df2114cd7a783)
Frank Praznik 52a14998 2023-07-10T11:48:14 wayland/video: Validate the returned window display pointer before dereferencing it If, in the case where all displays has been disconnected, and some window state change occurs before an active display is re-added and finalized, the pointer returned by SDL_GetDisplayForWindow() will be null necessitating that the returned pointer be checked for validity before dereferencing it. (cherry picked from commit a999100858c10e82a397adf8d37306a4232edb32)
Sam Lantinga cb4b41dd 2023-07-11T10:50:43 RAWINPUT_RegisterNotifications() should return int, for consistency (cherry picked from commit 1903d7b1bf6c73ef23e4d6934c9fec5246dd0b2e) (cherry picked from commit e8b6edd5a081d0b45c2ac39ab690e584a6b95a84)
Sam Lantinga 5a2d165b 2023-07-11T07:56:07 Improved RAWINPUT <-> XInput/WGI device correlation If there is only one controller slot available, assume that's the one matching new RAWINPUt devices. This will be right most of the time, and uncorrelation will fix any bad guesses. (cherry picked from commit 41882a1acb6054dc7a56fd5ff7f0a279ba1144c0) (cherry picked from commit 34c5bde3554d2a78d14eb73c14d971cee20f3108)
Sam Lantinga 11022c23 2023-07-11T10:17:02 Fixed crash if RAWINPUT is not initialized We shouldn't be doing any of this work in that case (cherry picked from commit dfc5e6964eca0a0813768518d08cf1c80136e896) (cherry picked from commit 9117b2e3000da4d9066dd5f2cfb1c9cbbbee6861)
Sam Lantinga b7c93a2d 2023-07-10T09:15:02 Don't send k_ePS4FeatureReportIdCapabilities to Sony PS4 controllers This report is for third party controllers only, and might be causing issues with fake PS4 controllers. Reference https://github.com/libsdl-org/SDL/issues/7960 (cherry picked from commit 092a4b780ca464de71b89ffa5dc655ce256ce350) (cherry picked from commit 6bf5f5a221f971a5804062e365a281c30668dd9c)
Christopher Wellons 078e817c 2023-07-09T20:05:32 Unaligned stacks on i686-w64-mingw32, may lead to crashes (#7607) Co-authored-by: Ozkan Sezer <sezeroz@gmail.com>(cherry picked from commit 8231278817faabdff4a232770f798684bd2e12df)
Ozkan Sezer aba2be82 2023-07-10T00:15:56 SDL_RWFromMem, SDL_RWFromConstMem: reject negative size parameters. (cherry picked from commit 0ad822eb700e64f219c1a681da2f2d0ea4c64a93)
Sam Lantinga 0dbeec44 2023-07-09T09:49:09 Re-added mappings for older Xbox One controllers on Linux The xpad kernel driver doesn't know about these controllers and ends up using BTN_C and BTN_Z and the automatic mapping doesn't work correctly. It turns out VID 0x045e and PID 0x02e0 is used by the 8BitDo SN30 Pro when connecting via Bluetooth in XInput mode. Fixes https://github.com/libsdl-org/SDL/issues/7925 (cherry picked from commit 80e1c75e1c6d330318478c1549a97aedb09e58bc) (cherry picked from commit 156c7badf542d1e83a836ef4a8e6df3909d833da)
Sam Lantinga a614d8f8 2023-07-08T18:18:22 Fixed mapping BTN_TR2 to right trigger (cherry picked from commit ea60da5b94ed8ec69aad69ca46e81567ab99ed2a) (cherry picked from commit 4b1dd54a56236a41e647f129c6018c78499975b3)
Sam Lantinga bb3997d8 2023-07-08T10:24:00 Added WGI gamepad added/removed listeners for RAWINPUT This fixes WGI correlation on startup when the WGI gamepad list isn't populated yet (cherry picked from commit f047e178b610c6888212c3096c10eb3f64f31a15) (cherry picked from commit f8a0135edfb07ebe7201b764fd0aba42d600b99c)
Sam Lantinga 03512104 2023-07-07T15:55:40 Don't tickle Bluetooth PS4 controllers in simple mode with an effects packet That will put the PS4 controller into enhanced mode, which breaks DirectInput games (cherry picked from commit efed24850af2994802c28f7a257ea17c9ec97d0a) (cherry picked from commit 1f7bc08884f93ede9775cdec5ae1582796fb947c)
Sam Lantinga f2d016e3 2023-07-07T14:43:57 Lazily initialize the WGI gamepad support Initializing "Windows.Gaming.Input.Gamepad" will put Bluetooth PS4 controllers into enhanced report mode, which breaks any game using DirectInput. Let's wait to do this until absolutely necessary. (cherry picked from commit 785f57eb9102206e74ac7f9b363a37cbf037cf9d) (cherry picked from commit de849d5e6f23a7621471befb69f1b036bc346f5e)
Sam Lantinga b8582428 2023-07-08T09:32:24 Added the hint SDL_HINT_JOYSTICK_WGI to control whether to use Windows.Gaming.Input for controllers (cherry picked from commit a6228e7aafb66075fe8f4aaf411314fc92340499)
Sam Lantinga 46927b13 2023-07-07T09:47:03 Prefer using XInput for rumble over WGI, as it allows rumble in the background (cherry picked from commit e16a83d393ae1784040519f42c482e2641b971a2)
Sam Lantinga 3bee5cf5 2023-07-07T09:33:53 Continue running XInput detection while RAWINPUT is active This allows us to re-enable XInput correlation for RAWINPUT devices without reintroducing the controller shutdown bug for controllers using the wireless adapter in https://github.com/libsdl-org/SDL/issues/3468. Fixes https://github.com/libsdl-org/SDL/issues/7940 (cherry picked from commit a0a3957eb65e22721a124476072af0f6f5a7ca18)
Takase 03dcee17 2023-07-07T08:53:00 video(wayland): use both --icon and --icon-name for Zenity (#7897) video(wayland): use both --icon and --icon-name for Zenity Many distros ship an older version of Zenity that supports GTK3, while some distros ship newer version of Zenity which uses libadwaita. This command tries to use --icon and fall back to --icon-name when it fails. (cherry picked from commit b90343e512bb7e8a026b3f78947c67693c63ff0c)
Sam Lantinga fdcc1d59 2022-12-26T09:49:36 Fixed crash if mutex functions are used before any mutex has been created (cherry picked from commit cc49f1e279b7ef0edf30d8eeaee9e05fd079bf82) (cherry picked from commit 488a91eb401c2642f80373bfe029b4e1db275d01)
Sam Lantinga 116a5344 2023-07-03T17:39:29 Fixed resource leak and crash at exit in the D3D11 renderer Also, for some reason ID3D11DeviceContext_OMGetRenderTargets() was failing in the second read pixels call in the "testautomation --filter render_testViewport" test. We already know the target view, so just use that. (cherry picked from commit 619f65af0c390dd10bc0e6bf9dc1227e7ecee54d) (cherry picked from commit 61808b03b5c5e2efe9b37d6c699c133d47448ea9)
Sam Lantinga f3436bc1 2023-07-03T17:09:49 The clip rect is defined in terms of the current viewport Don't use the viewport offset when setting the clip rect in the D3D12 renderer. This fixes "testautomation --filter render_testViewport" on Windows (cherry picked from commit 304d425f99b3b62e5f77ef869731bb702810a572) (cherry picked from commit bf277eb808103cb86a5af235495e866d33f87b0a)
Ozkan Sezer 5e215713 2023-07-04T02:24:28 fixed windows build after commit 7e8be3f
Sam Lantinga 699f8697 2023-07-03T16:06:59 Retry to open the clipboard in case another application has it open This fixes 'testautomation --filter clipboard_testClipboardTextFunctions' on Windows (cherry picked from commit c24496727cdd40d5c0ffdf7b6a61085ec3a2766d) (cherry picked from commit 7e8be3f2804b8dfca1ede2a4e463f8a0b2b352d5)
Sam Lantinga 4761467b 2023-07-01T09:56:20 Updated to version 2.28.1 for release
Ryan C. Gordon cd662ceb 2023-07-01T00:30:23 rwops: Use SetFilePointerEx on Windows for appending writes. Fixes #7900. (cherry picked from commit 769bf2ebcca8f0cbcde4ec50008942f4eda57f4a)
Sam Lantinga 7207f515 2023-06-29T16:10:55 Added Linux mapping for the Logitech Chillstream Fixes https://github.com/libsdl-org/SDL/issues/7829 (cherry picked from commit 675fc8c38f3f5685d177f0ecf7f43d57a109992e) (cherry picked from commit fc0854651becb207de28f926e0b84aedbfff8b7b)
Anonymous Maarten 5d9013be 2023-05-26T23:00:56 wayland: don't use libdecor_frame_get_* functions when header doesn't have it and we're statically linking to the library. This fixes building SDL with -DSDL_WAYLAND_SHARED=OFF (cherry picked from commit 5b5b67df203e9f8391e7e53aa5de54abf14c482e) (cherry picked from commit e6f635ca172027f57542b715787ac5b50f3f6d33)
Sam Lantinga 4af1f6ed 2023-06-29T11:25:54 Fixed build (cherry picked from commit 099e53f3a51d17155063977d5f4b40d0f07f73a2)