include


Log

Author Commit Date CI Message
Sam Lantinga 7242075b 2021-11-26T08:12:45 Updated version to 2.0.18 for release
Ozkan Sezer eb39e205 2021-11-25T17:00:50 SDL_endian.h: remove aarch64 asm. The asm has been reported broken in at least optimized Apple M1 builds; and besides, the compiler builtins have precedence over the asm anyway. Closes https://github.com/libsdl-org/SDL/issues/3943
Ozkan Sezer 53aa8eec 2021-11-25T17:00:24 minor cleanup for watcom _inline keyword.
SDL Wiki Bot 3c71f893 2021-11-25T13:53:04 Sync wiki -> header
Cameron Gutman 57520cbd 2021-11-25T16:49:57 Improve documentation for input grabbing functions
Ozkan Sezer f8900583 2021-11-23T17:04:40 removed windows winmm joystick driver
Sylvain e5467af7 2021-11-23T09:42:07 Minor change comment
Sam Lantinga c97b7218 2021-11-21T12:18:10 Added SDL_PremultiplyAlpha() to premultiply alpha on a block of SDL_PIXELFORMAT_ARGB8888 pixels
Ryan C. Gordon aeff8748 2021-11-20T13:35:25 configure: Allow building of the "offscreen" video target. It was CMake-only before this.
Ozkan Sezer 990fb668 2021-11-20T01:02:02 tests: several -Wwrite-strings fixes.
Ozkan Sezer 3ed0c626 2021-11-19T01:24:40 SDL_RWsize: updated description
SDL Wiki Bot 0fddda6e 2021-11-18T21:51:05 Sync wiki -> header
SDL Wiki Bot e5268309 2021-11-18T20:58:04 Sync wiki -> header
Ryan C. Gordon 3f978c0f 2021-11-18T15:56:16 include: Improved documentation of SDL_RegisterApp and SDL_UnregisterApp.
Ryan C. Gordon 7f70f6e1 2021-11-18T15:30:36 include: Note that several rwops functions used to be macros before 2.0.10.
SDL Wiki Bot 319d2b3e 2021-11-18T20:29:04 Sync wiki -> header
SDL Wiki Bot 16a1721e 2021-11-18T20:25:05 Sync wiki -> header
hgs3 c2464653 2021-11-17T18:19:49 Remove unnecessary clang-cl check since Clang has __builtin_bswap.
hgs3 6b66542e 2021-11-17T17:04:34 Fixing compilation errors for VS2019 Clang toolset (fixes #4702)
Ozkan Sezer dd6269b1 2021-11-17T17:55:00 SDL_endian.h: added proper version check (VS2005+) to MSVC functionality
Cameron Gutman 43d1b42a 2021-11-16T17:59:38 cmake: Sync build config options with autotools - SDL_CLOCK_GETTIME now defaults to ON to match autotools build - Add detection of float.h and Xdbe - Fix detection of pthread_setname_np() (requires _GNU_SOURCE) - Move SDL_USE_IME definition into SDL_config.h.cmake
Sam Lantinga 66058bbb 2021-11-15T16:52:56 Fixed exception accessing Bluetooth devices on Android 12 Since accessing Bluetooth prompts the user for permission on both Android and iOS, and we only need it for Steam Controller support, we'll leave it off by default. You can enable it by setting the hint SDL_HINT_JOYSTICK_HIDAPI_STEAM to "1" before calling SDL_Init() Fixes https://github.com/libsdl-org/SDL/issues/4952
Sam Lantinga fb6aba19 2021-11-14T15:35:11 Updated SDL_egl.h with the latest Khronos headers https://www.khronos.org/registry/EGL/api/
Ozkan Sezer 8a6e48d4 2021-11-14T04:40:50 constified SDL_RegisterApp()
Ozkan Sezer acb602d6 2021-11-12T07:28:00 minor style adjustment
Misa 3bf7994f 2021-09-27T14:38:12 Add and use `SDL_FALLTHROUGH` for fallthroughs Case fallthrough warnings can be suppressed using the __fallthrough__ compiler attribute. Unfortunately, not all compilers have this attribute, or even have __has_attribute to check if they have the __fallthrough__ attribute. [[fallthrough]] is also available in C++17 and the next C2x, but not everyone uses C++17 or C2x. So define the SDL_FALLTHROUGH macro to deal with those problems - if we are using C++17 or C2x, it expands to [[fallthrough]]; else if the compiler has __has_attribute and has the __fallthrough__ attribute, then it expands to __attribute__((__fallthrough__)); else it expands to an empty statement, with a /* fallthrough */ comment (it's a do {} while (0) statement, because users of this macro need to use a semicolon, because [[fallthrough]] and __attribute__((__fallthrough__)) require a semicolon). Clang before Clang 10 and GCC before GCC 7 have problems with using __attribute__ as a sole statement and warn about a "declaration not declaring anything", so fall back to using the /* fallthrough */ comment if we are using those older compiler versions. Applications using SDL are also free to use this macro (because it is defined in begin_code.h). All existing /* fallthrough */ comments have been replaced with this macro. Some of them were unnecessary because they were the last case in a switch; using SDL_FALLTHROUGH in those cases would result in a compile error on compilers that support __fallthrough__, for having a __attribute__((__fallthrough__)) statement that didn't immediately precede a case label.
Sam Lantinga 9c3bcf8e 2021-11-11T17:31:14 Added SDL_hid_ble_scan() for pairing Steam Controllers on iOS and tvOS
Sam Lantinga abc12a83 2021-11-11T15:58:44 Revert "Add and use `SDL_FALLTHROUGH` for fallthroughs" This reverts commit 66a08aa3914a98667f212e79b4f0b9453203d656. This causes problems with older compilers: https://github.com/libsdl-org/SDL/pull/4791#issuecomment-966630997
SDL Wiki Bot cfbae8b9 2021-11-11T23:12:04 Sync wiki -> header
Cameron Gutman fe09a493 2021-11-11T15:53:11 joystick: Add APIs to query rumble support
Ozkan Sezer 1ba695dc 2021-11-12T02:00:04 whitespace between '#' and 'cmakedefine' does not seem to work.. at least with my version of cmake-3.9.6.
SDL Wiki Bot a3648e26 2021-11-11T21:52:04 Sync wiki -> header
Sam Lantinga b15e880e 2021-11-11T13:50:16 Fixed open functions in the SDL_hidapi.h header
Sam Lantinga 1e159bc6 2021-11-11T13:45:31 Include standard wrapping for SDL public headers in SDL_hidapi.h
SDL Wiki Bot 76e3bb55 2021-11-11T20:48:04 Sync wiki -> header
Sam Lantinga c9ada1c1 2021-11-11T12:45:38 Made HIDAPI device change notifications available via SDL_hid_device_change_count()
Misa 66a08aa3 2021-09-27T14:38:12 Add and use `SDL_FALLTHROUGH` for fallthroughs Case fallthrough warnings can be suppressed using the __fallthrough__ compiler attribute. Unfortunately, not all compilers have this attribute, or even have __has_attribute to check if they have the __fallthrough__ attribute. [[fallthrough]] is also available in C++17 and the next C2x, but not everyone uses C++17 or C2x. So define the SDL_FALLTHROUGH macro to deal with those problems - if we are using C++17 or C2x, it expands to [[fallthrough]]; else if the compiler has __has_attribute and has the __fallthrough__ attribute, then it expands to __attribute__((__fallthrough__)); else it expands to an empty statement, with a /* fallthrough */ comment (it's a do {} while (0) statement, because users of this macro need to use a semicolon, because [[fallthrough]] and __attribute__((__fallthrough__)) require a semicolon). Applications using SDL are also free to use this macro (because it is defined in begin_code.h). All existing /* fallthrough */ comments have been replaced with this macro. Some of them were unnecessary because they were the last case in a switch; using SDL_FALLTHROUGH in those cases would result in a compile error on compilers that support __fallthrough__, for having a __attribute__((__fallthrough__)) statement that didn't immediately precede a case label.
Sam Lantinga 1c78b080 2021-11-10T20:02:25 Added support for /dev/input/js* on Linux Added the hint SDL_HINT_LINUX_JOYSTICK_CLASSIC to control whether /dev/input/js* or /dev/input/event* are used as joystick devices Added the hint SDL_HINT_JOYSTICK_DEVICE to allow the user to specify devices t hat will be opened in addition to the normal joystick detection Fixes https://github.com/libsdl-org/SDL/issues/1314 Fixes https://github.com/libsdl-org/SDL/issues/1727 Fixes https://github.com/libsdl-org/SDL/issues/1981 Closes https://github.com/libsdl-org/SDL/pull/4727
Ryan C. Gordon cb4491ca 2021-11-10T16:05:03 Sync wiki -> header
Ryan C. Gordon b42ae3db 2021-11-10T15:21:01 Sync wiki -> header
Sam Lantinga 6f9909b6 2021-11-09T21:11:19 These functions made it into 2.0.18
Eric Wasylishen 0d987936 2021-11-09T22:03:42 testwm2: Fix video modes menu hit detection when highdpi or logical size used (#4936) * SDLTest_CommonDrawWindowInfo: log SDL_RenderGetScale, SDL_RenderGetLogicalSize * testwm2: fix video modes menu hit detection in High DPI cases - also when logical size is specified, e.g. `--logical 640x480 --resizable --allow-highdpi` * add function to determine logical coordinates of renderer point when given window point * change since to the targeted milestone * fix typo * rename for consistency * Change logical coordinate type to float, since we can render with floating point precision. * add function to convert logical to window coordinates * testwm2: use new SDL_RenderWindowToLogical * SDL_render.c: alternate SDL_RenderWindowToLogical/SDL_RenderLogicalToWindow Co-authored-by: John Blat <johnblat64@protonmail.com> Co-authored-by: John Blat <47202511+johnblat64@users.noreply.github.com>
Ryan C. Gordon 04f42e04 2021-11-09T11:50:49 metal: Deal better with -[CAMetalLayer nextDrawable] returning nil. Fixes #4863.
Sam Lantinga fd79607e 2021-11-08T21:34:48 Added SDL_GetWindowMouseRect() Also guarantee that we won't get mouse movement outside the confining area, even if the OS implementation allows it (e.g. macOS)
Ethan Lee 4b42c05b 2021-11-08T13:52:48 video: Add SDL_SetWindowMouseRect. This API and implementation comes from the Unreal Engine branch of SDL, which originally called this "SDL_ConfineCursor". Some minor cleanup and changes for consistency with the rest of SDL_video, but there are two major changes: 1. The coordinate system has been changed so that `rect` is _window_ relative and not _screen_ relative, making it easier to implement without having global access to the display. 2. The UE version unset all rects when passing `NULL` as a parameter for `window`, this has been removed as it was an unused feature anyhow. Currently this is only implemented for X, but can be supported on Wayland and Windows at minimum too.
Ryan C. Gordon 1a98dcb6 2021-11-08T15:16:18 Revert "include: Updated SDL_config_emscripten.h from emscripten-ports." Apparently we already had the newer version, sorry! This reverts commit 6657cbce8dcea9abe4501c8bbf85f2b40e6c927a. Reference issue #4623.
Ozkan Sezer 84138b77 2021-11-08T21:15:04 minor update to os2 config file.
Sam Lantinga 5dbbc8e6 2021-11-08T09:44:31 Added mouse wheel deltas with floating point precision Fixes https://github.com/libsdl-org/SDL/issues/4888
Sam Lantinga b8327a4a 2021-11-08T07:19:45 Added SDL_HIDAPI_DISABLED so it can be disabled like other SDL subsystems
Ozkan Sezer 2a904aa1 2021-11-08T17:00:28 os2: remove SDL_hidapi duplications in makefile, disable it in config.
Sam Lantinga 5b646cd1 2021-11-07T22:58:44 Build hidapi code into SDL as a new public API This prevents conflicts with hidapi linked with applications, as well as allowing applications to make use of HIDAPI on Android and other platforms that might not normally have an implementation available.
Ryan C. Gordon 6657cbce 2021-11-07T20:43:49 include: Updated SDL_config_emscripten.h from emscripten-ports. Reference issue #4623.
Sam Lantinga 74f35a7c 2021-11-07T14:10:04 Fixed documentation
Sam Lantinga e1435826 2021-11-07T11:16:48 Cleanup sfSymbolName support and add them to the dynamic API functions
Patrick Hogan 149e5c65 2021-10-03T12:49:36 Support returning sfSymbolsName for gamepad controls on macOS / iOS / tvOS
Eric Wasylishen a0e055a7 2021-11-07T02:48:29 testwm2: add mode menu, click on a mode to call SDL_SetWindowDisplayMode
Cameron Gutman 5de72374 2021-11-05T21:06:58 SDL_config_windows.h: detect winsdkver.h using __has_include() __has_include() was added in VS 2017 15.3, so this works out to essentially the same _MSC_VER >= 1911 check we had before for MSVC but works for non-MSVC compilers also.
Kevin Colour 6cbee063 2021-11-05T01:17:29 include: Swap parameter names in atan2 functions
Cameron Gutman d8b53e82 2021-11-03T19:51:18 direct3d11: fix SDK version requirement for non-CMake build The D3D11 renderer requires Direct3D 11.1 (d3d11_1.h), not Direct3D 11.0 (d3d11.h). In terms of SDKs, that's the Windows 8 SDK or later. We should probably rename HAVE_D3D11_H...
Ozkan Sezer 802e17aa 2021-11-03T20:35:20 autotools: added windows.gaming.input.h (and SDL_JOYSTICK_WGI) detection
Cameron Gutman 2371b247 2021-10-31T18:27:51 windows: improve feature detection consistency between CMake and non-CMake builds
Sam Lantinga c948b936 2021-11-02T15:57:24 Added note for Android 12 API level
Frank Praznik 43ddc59f 2021-11-02T16:56:14 Export SDL_LinuxSetThreadPriorityAndPolicy() function (#4877) It's marked as being a public symbol internally, however, it was missing from the header files and not visible in the shared library. This adds it to the necessary headers and to the DynAPI list to expose it for use by applications. Co-authored-by: Frank Praznik <frank.praznik@oh.rr.com>
Ryan C. Gordon 228219dc 2021-10-23T15:30:45 include: Improved SDL_GetTicks*() documentation a little.
Ryan C. Gordon 99c9727d 2021-10-23T15:00:31 timer: Added SDL_GetTicks64(), for a timer that doesn't wrap every ~49 days. Note that this removes the timeGetTime() fallback on Windows; it is a 32-bit counter and SDL2 should never choose to use it, as it only is needed if QueryPerformanceCounter() isn't available, and QPC is _always_ available on Windows XP and later. OS/2 has a similar situation, but since it isn't clear to me that similar promises can be made about DosTmrQueryTime() even in modern times, I decided to leave the fallback in, with some heroic measures added to try to provide a true 64-bit tick counter despite the 49-day wraparound. That approach can migrate to Windows too, if we discover some truly broken install that doesn't have QPC and still depends on timeGetTime(). Fixes #4870.
Cameron Cawley 25c71748 2020-02-13T21:55:08 Add a barebones RISC OS video driver
Ybalrid (Arthur Brainville) 81fe2ccb 2021-10-31T02:54:20 cmake: Add missing SDL_JOYSTICK_WGI in config step SDL_config.h *can* define SDL_JOYSTICK_WGI. On builds with the Windows 10 SDK available, this allow implementing trigger rumbling on Xbox One controllers. The files included in the Visual Studio Solution in VisualC\SDL.sln *do* have this define set. fix #4859
SDL Wiki Bot c7dafb15 2021-10-27T01:36:05 Sync wiki -> header
SDL Wiki Bot 1c641460 2021-10-26T15:30:06 Sync wiki -> header
Ryan C. Gordon dbe55350 2021-10-23T14:38:32 include: Improve doxygen text on SDL_GetRevisionNumber().
Sam Lantinga 8f58bb9c 2021-10-21T20:48:08 Added SDL_USE_BUILTIN_OPENGL_DEFINITIONS to avoid system OpenGL headers
SDL Wiki Bot 6c134cf1 2021-10-22T00:39:04 Sync wiki -> header
Cacodemon345 19dee1cd 2021-10-22T06:37:20 Add SDL_GetWindowICCProfile(). (#4314) * Add SDL_GetWindowICCProfile * Add new SDL display events * Implement ICC profile change event for macOS * Implement ICC profile notification for Windows * Fix SDL_GetWindowICCProfile() for X11 * Fix compile errors
Sylvain 8b1a2fe8 2021-10-17T23:47:59 backout SDL_AndroidSetInputType()
Sylvain ccb12457 2021-10-17T23:17:54 Fixed bug #4843 - Can not get the ime candidatelist like chinese/japaness input method
Ozkan Sezer 7f728f3e 2021-10-15T08:51:02 enabled os2 joystick code (if anyone has actually a use for it...)
SDL Wiki Bot 8a48ce00 2021-10-15T05:28:04 Sync wiki -> header
Brick 8bf32e12 2021-10-15T06:26:10 Improved SDL_PollEvent usage (#4794) * Avoid unnecessary SDL_PumpEvents calls in SDL_WaitEventTimeout * Add a sentinel event to avoid infinite poll loops * Move SDL_POLLSENTINEL to new internal event category * Tweak documentation to indicate SDL_PumpEvents isn't always called * Avoid shadowing event variable * Ignore poll sentinel if more (user) events have been added after Co-authored-by: Sam Lantinga <slouken@libsdl.org>
Sam Lantinga 43da35b5 2021-10-14T22:22:59 Back out documentation changes in favor of https://github.com/libsdl-org/SDL/pull/4794
Sam Lantinga 0dc57b0f 2021-10-14T19:42:36 Remove slightly misleading comment in the example code
Sam Lantinga ddf1d5c5 2021-10-14T19:10:30 Update documentation to reflect that a single SDL_PumpEvents() each frame is the recommended way to handle events
Rémy Tassoux 0789610c 2021-10-14T00:52:05 Add SDL_HINT_WINDOW_NO_ACTIVATION_WHEN_SHOWN
Sam Lantinga 227c33b8 2021-10-13T09:33:57 Add note about SDL_TICKS_PASSED hitting int overflow problems with large timeouts
Cameron Cawley 3db898c5 2020-02-13T22:32:35 riscos: Implement SDL_GetPrefPath()
Ryan C. Gordon 1b49f092 2021-10-08T20:22:48 include: manually ran wikiheaders.pl and cleaned up the obvious issues.
Ryan C. Gordon 194657a2 2021-10-08T15:57:18 include: Fix indentation on SDL_SoftStretch doxygen comment. Otherwise wikiheaders.pl doesn't think it's valid.
Ryan C. Gordon 2f93fbbb 2021-09-30T10:04:09 include: Fix markdown in a doxygen comment.
SDL Wiki Bot 8b23029d 2021-09-28T17:03:06 Sync wiki -> header
Cacodemon345 b592e78f 2021-09-25T12:55:41 wayland: Expose xdg_toplevel to SysWM
SDL Wiki Bot 7a1690eb 2021-09-26T02:32:05 Sync wiki -> header
SDL Wiki Bot 7becc414 2021-09-25T17:36:04 Sync wiki -> header
Cameron Cawley 25a614bc 2021-09-14T20:37:35 Add SDL_asprintf and SDL_vasprintf
Sam Lantinga b687c0ff 2021-09-21T18:15:10 Integrate fix for Source 2's Win32 build that does '#define __i386__ 1' which causes it to hit the __i386__ case instead of the _MSC_VER case.
Ryan C. Gordon f5e636a6 2021-09-20T20:43:39 config: Try to use stdint.h with Borland C. (This probably isn't right on truly ancient versions of Borland C, but it should cover things from the last decade or so, I hope.) (possibly) Fixes #1673.
Ryan C. Gordon 478f9eed 2021-09-20T10:20:04 x11: Don't include X11/extensions/extutil.h We don't use it, it was a leftover from 1.2, I think, and it doesn't exist on Solaris, so this should hopefully fix the build there. This also means we don't need the configure/cmake checks for SDL_VIDEO_DRIVER_X11_CONST_PARAM_XEXTADDDISPLAY, so that was removed also. Fixes #1666.
Ryan C. Gordon b8da02e6 2021-09-18T10:44:32 include: Fix triggering of Clang's -Wexpansion-to-defined in SDL_endian.h It doesn't like #if statements that uses a macro that uses defined(x).
Ryan C. Gordon 8f414123 2021-09-18T10:35:36 cmake: Patched to compile. Too fast on the git push!!
Ryan C. Gordon bf1d7a3a 2021-09-18T10:31:37 cmake: Don't trust the HAVE_IMMINTRIN_H check on Apple targets. Otherwise universal builds might try to include an Intel-specific header on ARM builds, etc. Fixes #4753.
SDL Wiki Bot ba9e2299 2021-09-18T14:19:04 Sync wiki -> header
Cameron Cawley 2d44bf7d 2021-09-17T20:24:10 Update description of SDL_SetWindowAlwaysOnTop