Log

Author Commit Date CI Message
Sam Lantinga 10ec4c86 2021-07-24T22:11:22 Added support for the PowerA Nintendo Switch Spectra Controller
Sam Lantinga 3c9559f7 2021-07-24T19:43:56 Don't try to rumble third-party Nintendo Switch Pro controllers Sending rumble to the PowerA Spectra Nintendo Switch controller hangs input reports for a couple of seconds.
Sam Lantinga cc19b13b 2021-07-24T19:21:29 Fixed missing return statement
Cameron Cawley 89bdc6ba 2021-07-24T13:57:59 Fix MSVC builds in paths with spaces
Cameron Cawley b0daa9f1 2021-07-24T13:33:54 Automatically select the default platform toolset for MSVC builds
Sam Lantinga d4ac6b5e 2021-07-24T15:58:33 Detect buffer overflow when getting DirectInput device state This fixes bug https://github.com/libsdl-org/SDL/issues/4528
Sam Lantinga 3b85e3fd 2021-07-24T15:47:11 Fixed internal Windows key state when using Windows+Space or Windows+G shortcuts This fixes bugs: https://github.com/libsdl-org/SDL/issues/4369 https://github.com/libsdl-org/SDL/issues/4500
Sam Lantinga 03c19efb 2021-07-24T15:25:50 Added support for multiple seats with touch input on Wayland This fixes bug https://github.com/libsdl-org/SDL/issues/4517
Sam Lantinga ff1b5e1b 2021-07-24T15:10:57 Implemented the window flash operations for X11
Ryan C. Gordon 5ae0dd4b 2021-07-24T17:44:35 joystick: Split out Linux opening code for reuse by querying code. This prevents an assertion whem LINUX_JoystickGetGamepadMapping tried to open the stick temporarily and messed with global state by doing so. Now the global state is only set in LINUX_JoystickOpen, but the common code is shared by both interfaces. Fixes #4198.
Cameron Cawley 6c92bf54 2021-07-24T15:34:53 Add more filters to the MSVC project
Sam Lantinga f1633127 2021-07-24T13:41:55 Added a window flash operation to be explicit about window flash behavior
Joel Linn db56526f 2021-06-10T13:07:27 audiocvt: Replace divisions Division is expensive and the compiler can not replace it themselves. Though we now we will be ok in terms of floating point edge behaviour.
Joel Linn b2c8d3e9 2021-06-11T22:14:54 audiocvt: 5.1 to Stereo conversion utilizing AVX
Joel Linn 20eea021 2021-06-12T01:25:40 Windows: set HAVE_IMMINTRIN_H for AVX intrinsics
Joel Linn 638befc1 2021-06-10T17:22:39 audiocvt: 5.1 to Stereo conversion utilizing SSE
Sam Lantinga e1c3a250 2021-07-24T12:11:27 Changed SDL_FlashWindow() so it doesn't take a flash count, and added the hint SDL_HINT_WINDOW_FLASH_COUNT to control behavior on Windows
Sam Lantinga 09d1cea7 2021-07-24T11:15:09 Use the new controller type for the Luna and Stadia controllers
Sam Lantinga 2147e7bf 2021-07-24T11:01:58 Sorted the hints alphabetically
Sam Lantinga 808c3ae6 2021-07-24T10:36:56 Allow mapping Android controllers that just have a D-PAD and face buttons This fixes bug https://github.com/libsdl-org/SDL/issues/4327
SDL Wiki Bot 856c87fc 2021-07-24T17:32:05 Sync wiki -> header
Sam Lantinga d89f4b3a 2021-07-24T10:29:34 Note that mouse warping doesn't work over Microsoft Remote Desktop Fixes the documentation portion of bug https://github.com/libsdl-org/SDL/issues/4206
Sam Lantinga 94b7a876 2021-07-24T09:10:18 Added SDL_GameControllerType enumerations for the Amazon Luna and Google Stadia controllers Fixes bug https://github.com/libsdl-org/SDL/issues/4019
Ryan C. Gordon 6956f4aa 2021-07-24T11:06:40 cmake: use CMAKE_INSTALL_LIBDIR instead of hardcoding "lib", etc. These came from HaikuPorts, specifically this patchset: https://github.com/haikuports/haikuports/blob/462947dd4f285a885d8011cade7cd0f7151cfe74/media-libs/libsdl2/patches/libsdl2-2.0.14.patchset This is just the part that is _not_ Haiku-specific. I wanted this in a separate commit though, since I'm not really a CMake expert; if this causes problems and we need to bisect to it, we won't be confused about it being a Haiku issue when we get here. Fixes #4092. (and probably others.)
Ryan C. Gordon 403afdb5 2021-07-24T11:02:27 cmake: Haiku fixes. These came from HaikuPorts, specifically this patchset: https://github.com/haikuports/haikuports/blob/462947dd4f285a885d8011cade7cd0f7151cfe74/media-libs/libsdl2/patches/libsdl2-2.0.14.patchset This is just the Haiku-specific bits; the more general parts about install dirs will be split into a different commit here. Reference issue #4092.
Sam Lantinga 7d8f34cb 2021-07-24T01:19:58 Updated .gitignore from @Zangetsu38 - thanks!
german77 e6e8fe6d 2021-07-23T10:45:03 hidapi_switch: Implement analog rumble
Sam Lantinga 669714ca 2021-07-23T23:51:35 Added the ThrustMaster T.16000M as a flightstick
Sam Lantinga 384d86b5 2021-07-23T23:48:23 Fixed compile warnings with Visual Studio
Sam Lantinga adb75d64 2021-07-23T23:45:18 Fixed hotplug detection not working on UWP or when SDL isn't pumping Windows events This fixes bugs: https://github.com/libsdl-org/SDL/issues/4321 https://github.com/libsdl-org/SDL/issues/4147 Thanks to DJm00n for the suggestion!
Sebastian Krzyszkowiak 7b0092db 2021-07-23T18:58:25 vita: touch: Mark the back panel as an indirect absolute touch device It's not a touchscreen, but an additional touch panel on the back of the device.
Sam Lantinga 422b053b 2021-07-23T16:32:35 Added support for the full line of current PowerA Xbox Series X controllers
SDL Wiki Bot 7edffc57 2021-07-23T18:29:04 Sync wiki -> header
Ryan C. Gordon 9632fb33 2021-07-23T12:48:28 README-dynapi.md: Cleaned up markdown formatting.
SDL Wiki Bot c06448fe 2021-07-23T16:39:05 Sync wiki -> header
SDL Wiki Bot 48993a7f 2021-07-23T16:14:49 Sync wiki -> header
Ozkan Sezer 15ed6653 2021-07-22T20:50:02 Fixes to kmsdrm dynamic loading support. Fixes: https://github.com/libsdl-org/SDL/issues/4520
Jaylon Gowie 48bbe31b 2021-07-20T21:45:21 Add PreSwapCallback for updating SceCommonDialog
Jaylon Gowie 9c1306bc 2021-07-20T21:44:16 Add elgext.h header
meyraud705 4ada14a2 2021-07-21T13:39:10 Replace libc functions to SDL equivalent in wayland video subsystem Wayland video subsystem uses a mix of libc and SDL function. This patch switches libc functions to SDL ones and fixes a mismatch in memory allocation/dealoccation of SDL_Cursor in SDL_waylandmouse.c (calloc on line 201 and SDL_free on line 313) which caused memory corruption if custom memory allocator where provided to SDL.
Ivan Epifanov f806064e 2021-07-19T13:12:10 Remove 'support' for rgb/bgr textures, that was causing issues with them
Niklas Haas d6641d71 2021-07-19T11:52:57 kmsdrm: Explicitly set the surface transform and alpha mode This is required by the specification. Set these to sensible defaults. Fixes a validation layer error that occurs otherwise.
Niklas Haas 76007427 2021-07-19T11:26:54 kmsdrm: Properly zero-initialize CreateInfo structs As written, these contain undefined stack contents, which in practice causes crashes/hangs and/or triggers the validation layers (they complain about `pNext` and `flags` not being NULL).
Cameron Gutman 9170c0c7 2021-07-15T18:35:20 CI: Add Windows ARM64 builds
Ryan C. Gordon 37d4f003 2021-07-14T17:09:05 doxygen: Removed some cruft that accumulated during wiki migration.
Ryan C. Gordon c07e5e99 2021-07-14T17:07:41 wikiheaders.pl: Add --copy-to-header option. ...because I keep mistyping it without the 's' on the end. :/
Ryan C. Gordon c88eb7a8 2021-07-14T17:07:04 Sync wiki -> header.
Ryan C. Gordon f8c1fc49 2021-07-14T14:15:30 doxygen: Fix all the "\returns" so they work as part of complete sentences.
Ryan C. Gordon 8ec9fbdd 2021-07-14T11:58:57 wikiheaders.pl: pull in full sections from headers, fix more whitespace.
Ryan C. Gordon 17b4a67a 2021-07-14T11:45:06 doxygen: We use "\returns" as part of the sentence.
Ryan C. Gordon bab0eb71 2021-07-14T10:03:31 wikiheaders.pl: Fix some wordwrap whitespace issues.
Ryan C. Gordon 04196a46 2021-07-14T09:59:52 doxygen: wrap some game controller code examples in "```c" blocks.
Ryan C. Gordon 7390bc0e 2021-07-14T09:36:07 wikiheaders.pl: Fix \sa tags that (incorrectly!) have "()" appended.
Ryan C. Gordon d115857c 2021-07-14T08:11:18 wikiheaders.pl: A bunch of work on correct wordwrap and (de)wikify.
Ryan C. Gordon 0ac13dc2 2021-07-14T08:01:55 doxygen: Tweak SDL_FlashWindow brief description. So "e.g." doesn't look like the end of the sentence to wikiheaders.pl.
Ryan C. Gordon 1f17bc54 2021-07-13T12:25:23 wikiheaders: look for "c++" before "c" in regular expression.
Ryan C. Gordon 269d0773 2021-07-13T11:11:55 wikiheaders: Ignore doxygen comments that aren't "/**" on a line by itself. Makes this ignore /** single line comments */
Ryan C. Gordon 8130950e 2021-07-13T11:11:33 wikiheaders: trim whitespace at edges after wordwrapping.
Cameron Cawley 0f107945 2021-07-13T23:07:54 Remove outdated comment about SDL_SoftStretch
Ivan Epifanov 817976da 2021-07-13T13:45:28 VITA: Rewrite and fix RenderCopyEx rotation
Sam Lantinga dc6f0443 2021-07-12T17:57:21 Added mapping for the Xbox Series X controller on tvOS
Sam Lantinga 947ad6e1 2021-07-12T17:57:21 Added support for the Xbox Series X controller on iOS and tvOS
Cameron Cawley 297ce148 2021-07-11T17:38:33 CI: Add Android builds to GitHub Actions
Brick 7fe6dbaf 2021-07-11T15:25:24 Reset rawInputEnableCount when RawInput is not supported
scribam 32e736d2 2021-07-10T11:39:51 CI: add github actions for windows x86
Ozkan Sezer 5ac81c75 2021-07-10T10:05:40 fixed typo in previous commit
Ozkan Sezer a809d626 2021-07-10T10:01:40 cmake: set SDL_JOYSTICK_RAWINPUT for windows builds Fixes: https://github.com/libsdl-org/SDL/issues/4412
Sam Lantinga 24059a19 2021-07-09T18:11:42 The RAWINPUT driver is no longer tied to HIDAPI in any way
h5p9sl e52733af 2021-07-09T13:39:05 Use CMAKE_CURRENT_BINARY_DIR instead of CMAKE_BINARY_DIR This allows for building with cmake's add_subdirectory() function.
Sam Lantinga f93e9047 2021-07-08T18:44:50 Implemented the timeout in hid_read_timeout() on Android This fixes detecting PS5 controllers connected over USB
Daniel Gibson e2234ee9 2021-05-16T06:33:29 CMake: Fix SOVERSION/SONAME of non-release versions When building SDL2 from git with CMake, you got libSDL2-2.0.so.1 instead of .0 (as it's the case when building with autotools). This was caused by using LT_REVISION instead of LT_MAJOR for SOVERSION. fixes #4310
Daniel Gibson c20207d7 2021-05-04T10:00:16 SDL2Config.cmake: Clean it up a bit, remove gcc-style SDL2_LIBRARIES The GCC-style SDL2_LIBRARIES were lacking the rpath on Linux, which seems to be implicitly set when linking path/to/libSDL2-2.0.so.0.* and is explicitly set in the SDL2_LIBRARIES in sdl2-config.cmake (from some autotools variable), so I removed that hack and the format remains sth like "path/to/libSDL2main.a;path/to/libSDL2-2.0.so.0.14.1". It's still in the revision history in case it turns out that some platform really needs the "-L/path/to/bla/lib -lSDL2main -lSDL2" format
Daniel Gibson 501fe465 2021-04-21T06:34:46 sdl2-config.cmake.in: Make SDL2::SDL2 work with MinGW, fixes #3665 It didn't work at all because shared libs defined in CMake with add_library() need something like IMPORTED_IMPLIB (pointing to a .dll.a or .lib for th DLLs) set to link on Windows. But even with that it didn't work because the order of the libs is very important: it must be -lmingw32 -lSDL2main -lSDL -mwindows - but with normal add_library(SDL2::SDL2 SHARED IMPORTED) libs, SDL2 itself is always linked first. So I use an "INTERFACE" library (usually used for header-only libs), which doesn't implicitly/automatically link anything so I can specify the whole order of the linked libs. (SDL2::SDL2-static is completely untested)
Daniel Gibson fac6e9f1 2021-04-21T06:27:41 sdl2-config.cmake.in: Use more CMake variables and less autotools ones this makes it easier to create a portable sdl2-config.cmake that doesn't hardcode its path (by replacing the hardcoded prefix with something like "${CMAKE_CURRENT_LIST_DIR}/../../..")
Daniel Gibson c3426961 2021-04-18T17:15:34 Enhanced SDL2Config.cmake to also work on non-Windows tested Linux; I assume most other Unices are similar; I don't have a Mac
Daniel Gibson 3ea11f9a 2021-04-18T06:23:20 Make SDL2Config.cmake export SDL2_LIBRARIES etc (on Windows) still WIP and other platforms than windows still TODO and open questions etc see https://github.com/libsdl-org/SDL/issues/4004
Vladislav Dmitrievich Turbanov f9bf1aeb 2021-07-09T00:51:16 Latest Unifont with OFL is now bundled. (#4268) * * Latest Unifont with OFL is now bundled. * * Added a Unifont license file. Co-authored-by: Vladislav Dmitrievich Turbanov <vladislav@turbanov.ru>
Hanseul Jun 557d0f82 2021-03-11T13:36:56 Commenting a false alarm in WIN_GLES_SetupWindow. When hint SDL_HINT_OPENGL_ES_DRIVER is set to "1" (e.g. for ANGLE support), assertion due to !_this->gl_config.driver_loaded can be causes while EGL is available.
Sam Lantinga d135c076 2021-07-08T13:22:41 Added SDL_GameControllerSendEffect() and SDL_JoystickSendEffect() to allow applications to send custom effects to the PS4 and PS5 controllers See testgamecontroller.c for an example of a custom PS5 trigger effect
Ozkan Sezer 073cbc40 2021-07-08T21:20:02 SDL_platform.h: define TARGET_OS_SIMULATOR as 0 if not already defined. c.f.: https://github.com/libsdl-org/SDL/issues/4475
Ozkan Sezer be41cf2d 2021-07-08T21:20:02 CMake: don't blacklist TARGET_OS_SIMULATOR for Metal configuration https://github.com/libsdl-org/SDL/commit/7fa5e95b6284f2cc7855022c9f0c2b086dcee43f enabled it.
Ozkan Sezer 97d4fe94 2021-07-08T20:55:10 removed extra whitespace.
Ozkan Sezer 3da6d2cd 2021-07-08T20:33:50 WIN_SetErrorFromHRESULT: kill CR/LF that FormatMessage sticks at the end Fixes: https://github.com/libsdl-org/SDL_mixer/issues/320
Dean Herbert 8fb95034 2021-04-02T12:52:21 Avoid warping the cursor to the center of the window when not in relative_warp_mode When relative mode is enabled and not using warp mode, the cursor is being clipped to the window. Therefore there is no reason to restore the cursor position to the center. Avoiding the warp to center simplifies mouse position event flow, as we are no longer potentially receiving mouse events for the automated movement of the cursor and can be (mostly) assured that an incoming event from the windowing system is that of external means.
Dean Herbert 4359a47b 2021-04-02T12:48:16 Simplify ClipCursor behaviour when RelativeMouseMode is enabled The implementation of clip logic for relative mode seemed to unnecessarily limit the usable area to the middle of the window, in a 2x2 pixel region. This has the adverse side effect of moving the operating system cursor to that location, even if it is in a valid location in the window. While in most scenarios this is handled correctly (by storing the original position of the cursor in the window and restoring when leaving relative mode), there are edge cases where this clip operation can cause WM_MOUSEMOVE to fire at a point in time where it counts as a relative delta from SDL's perspective.
Dean Herbert 3720e254 2021-04-02T12:48:02 Trim some stray whitespace
Sam Lantinga 17092427 2021-07-08T09:24:54 Fixed https://github.com/libsdl-org/SDL/issues/4475 -Wundef errors from clang-11.1 when targeting macOS Targeting i386 against 10.8 SDK: In file included from src/SDL_assert.c:21: In file included from src/./SDL_internal.h:52: In file included from include/SDL_config.h:33: include/SDL_platform.h:73:5: error: 'TARGET_OS_TV' is not defined, evaluates to 0 [-Werror,-Wundef-prefix=TARGET_OS_] ^ 1 error generated. src/joystick/iphoneos/SDL_mfijoystick.m:38:5: error: 'TARGET_OS_IOS' is not defined, evaluates to 0 [-Werror,-Wundef-prefix=TARGET_OS_] ^ src/joystick/iphoneos/SDL_mfijoystick.m:460:5: error: 'TARGET_OS_TV' is not defined, evaluates to 0 [-Werror,-Wundef-prefix=TARGET_OS_] ^ 2 errors generated. src/filesystem/cocoa/SDL_sysfilesystem.m:83:6: error: 'TARGET_OS_TV' is not defined, evaluates to 0 [-Werror,-Wundef-prefix=TARGET_OS_] ^ 1 error generated. Targeting x86_64 against 10.12 SDK: src/video/SDL_video.c:1492:25: error: 'TARGET_OS_MACCATALYST' is not defined, evaluates to 0 [-Werror,-Wundef-prefix=TARGET_OS_] ^ 1 error generated.
Austin Shafer 16e3bfe8 2021-06-28T11:29:16 SetDisplayMode: Call XRRSetScreenSize before setting CRTC config X11_SetDisplayMode currently calls X11_XRRSetCrtcConfig alone. This results in the monitor's viewport getting changed, but the underlying screen dimensions stay the same. The spec indicates that RRSetCrtcConfig only changes the crtc mode and has no effect on the screen dimensions, only mentioning that the new crtc must fit entirely within the screen size. For the size to change, RRSetScreenSize also needs to be called. This affects Metro Exodus on Linux, when changing the resolution in the in-game settings Metro gets stuck in a loop waiting for the size of its vulkan surface to change. Because XRRSetScreenSize is not called the screen size is never changed, the vulkan surface dimensions do not change, and Metro hangs forever watching for a surface size update that will never come. This change disables the CRTC, calls XRRSetScreenSize, and then updates the CRTC configuration. This fixes changing the resolution from the Metro settings. Tested with: Metro Exodus, Portal 2
Ozkan Sezer 118480e5 2021-07-08T17:56:14 fix permissions
Sam Lantinga 4a20dd3e 2021-07-08T07:38:18 Removed unnecessary comment, the mic button is in byte 16 on all firmware versions
Sam Lantinga 46f19c31 2021-07-08T07:23:29 Implemented mouse relative mode for iOS 14.1 and newer
Croydon 3433f3c4 2021-07-08T01:18:01 CMake: Small improvement for MinGW This is currently a small patch we have in our Conan package for SDL https://github.com/bincrafters/community/blob/4dc894cc2c4df43aabf39c212aa0a31047d183e1/recipes/sdl2/all/conanfile.py#L184 Introduced in https://github.com/bincrafters/conan-sdl2/commit/9fb93a60446914da2a0fafc692cbd175c2d5db50
Ozkan Sezer 6f0865fe 2021-07-07T23:51:32 updated os2 makefile.
Sam Lantinga 599001d4 2021-07-07T13:30:48 Revert "Removed reference to ant project." This reverts commit 0cad302346f95da770e5e1dc818f585c4ab4530d. The ant directory still exists in source control
Sam Lantinga 75a9f8e2 2021-07-07T13:06:15 Added SDL_hidapi_luna.c to the Xcode project
Sam Lantinga 430bbcb8 2021-07-07T09:49:33 Added HIDAPI support for the Amazon Luna Controller connected over USB in DirectInput mode
Sam Lantinga 863f5669 2021-07-07T08:55:16 Fixed reading thumbstick axes and mic button on the Amazon Luna Controller firmware version 305164320
Dimitriy Ryazantcev 17ed8d80 2021-07-07T16:05:35 Added HIDAPI backend for Amazon Luna Controller Model T28B69 connected via Bluetooth LE (VID:0171, PID:0419). To enter Bluetooth pairing mode hold B and Action (button with circle) buttons for 3 seconds. It works via usual HIDAPI if special filter driver is not installed: https://www.amazon.com/gp/help/customer/display.html?nodeId=GZCT4CTFHXLHEB9T With that driver installed it mimics Xbox One controller and works via XInput under Windows. Under DInput this controller is not usable at all.
Sam Lantinga 00d67620 2021-07-06T11:32:11 Added the SteelSeries manufacturer to the Nimbus+ entry on macOS
Sam Lantinga 0f00f6dd 2021-07-06T10:01:31 Ignore checkkeysthreads