Log

Author Commit Date CI Message
Sam Lantinga f5e9c5b7 2021-02-21T11:03:25 Chromebooks support relative mouse motion now
David Gow db58166e 2021-02-21T17:28:08 joystick: hidapi: Properly include <unistd.h> when inotify not available In the extremely unlikely event that inotify is not available (and, therefore, HAVE_INOTIFY is not #defined), SDL will no-longer build. This is because <unistd.h> is only included when HAVE_INOTIFY is defined, and PR #4098 adds a call to access(…, F_OK), which requires <unistd.h>. (Note that the F_OK symbol is the only one which actually prevented SDL from compiling, but both access() and close() fell back to implicit definitions, which is a bit concerning.) Fixes: 8d43f45a7b ("Don't use udev for joystick enumeration if running in a container")
Amir 5696582e 2021-02-19T14:22:31 add SDL_AndroidShowToast for https://developer.android.com/reference/android/widget/Toast
Amir 1a924bc0 2021-02-19T12:54:57 add SDL_AndroidShowToast for https://developer.android.com/reference/android/widget/Toast
Amir 360740ac 2021-02-19T18:07:53 correct dynapi
Ludovico de Nittis b17242bf 2021-02-16T11:50:20 Allow libudev for HIDAPI joystick to be disabled at runtime As already explained in the previous commit "joystick: Allow libudev to be disabled at runtime" (13e7d1a9), libudev can fail in a container. To make it easier to experiment with, we add a new environment variable "SDL_HIDAPI_JOYSTICK_DISABLE_UDEV" that disables udev and let it fallback to the device enumeration using polling. Signed-off-by: Ludovico de Nittis <ludovico.denittis@collabora.com>
Ludovico de Nittis 8d43f45a 2021-02-16T14:13:30 Don't use udev for joystick enumeration if running in a container If we are running in a container, like Flatpak[1] or pressure-vessel[2], it's likely that we are using user namespaces, therefore udev event notification via netlink won't work reliably. Use their filesystem API to detect them and automatically fallback to the inotify-based enumeration. [1] <https://flatpak.org/> [2] <https://gitlab.steamos.cloud/steamrt/steam-runtime-tools/-/tree/master/pressure-vessel> Signed-off-by: Ludovico de Nittis <ludovico.denittis@collabora.com>
Ludovico de Nittis 2c326915 2021-02-16T12:39:48 Use inotify for HIDAPI joystick enumeration if not using udev This improves SDL's ability to detect HIDAPI joystick hotplug in a container environment because we cannot reliably receive events from udev in a container. For a more detailed explanation of why this issue happens with containers, please check the previous commit "joystick: Use inotify to detect joystick unplug if not using udev" (b0eba1c5). Signed-off-by: Ludovico de Nittis <ludovico.denittis@collabora.com>
Jay 0052339b 2021-02-20T19:53:44 Move handleURLEvent setEventHandler to init
Sam Lantinga 42607909 2021-02-20T22:51:57 Remove devices from the list after they've been disconnected due to read errors. This fixes problems with controllers not being re-detected when a computer goes to sleep and a controller is removed and plugged back in while it's asleep.
Oschowa 08547adb 2021-02-20T09:28:03 pulseaudio: Add "zerocopy" playback path
Ozkan Sezer a29fe292 2021-02-18T20:10:50 configury: replace host checks against *-*-mingw32* with *-*-mingw*
Ryan C. Gordon c4b7e485 2021-02-18T11:09:52 docs: README.md points to Discourse instead of the mailing list now.
Ryan C. Gordon abe2c0f1 2021-02-18T11:06:44 license: Fixed references to COPYING.txt that are now LICENSE.txt. Fixes #4108
Romain Roffé ef85ed93 2021-02-17T20:53:35 pulseaudio: Initialize fragsize to fix mic recording fragsize wasn't initialized, and it is used for recording. If the value was 0 or -1, pulseaudio configures it itself. But sometimes we can get a random (and large) value that makes pulseaudio give us large sample at a very low frequency. https://gitlab.freedesktop.org/pulseaudio/pulseaudio/-/blob/master/src/pulse/def.h#L453 https://gitlab.freedesktop.org/pulseaudio/pulseaudio/-/blob/v13.0/src/pulsecore/protocol-native.c#L409
Cacodemon345 0a58010c 2021-02-16T10:41:33 Fix README-kmsbsd.md Markdown display
Erik Yuzwa ffce58a3 2021-02-17T11:08:13 license: Fixing the license file to be correctly scooped up by Github automation Renamed COPYING.txt to LICENSE.txt, and ensured the copyright year is the first line in the license file. This causes GitHub to correctly identify the zlib license and report it on SDL's project page.
Vanfanel e4a81a98 2021-02-17T12:06:29 [KMSDRM] Correct indentation.
Cameron Cawley d79bc001 2021-02-16T22:36:07 Update the .gitignore file
Cameron Cawley 9323cd51 2021-02-16T18:14:13 Check for ARM SIMD in testplatform
Cameron Cawley 98bf79cf 2021-02-16T18:13:15 Minor improvements for CPU detection on ARM
Matt Borgerson 4aa2e748 2021-02-16T10:20:29 Add Xbox Controller S entry to gamecontrollerdb
Cacodemon345 350e0ae1 2021-02-15T23:49:57 Add documentation for KMSDRM on *BSDs
Ozkan Sezer f2a2d0c6 2021-02-15T22:56:20 SDL_render_d3d.c: fix build with SDL_LEAN_AND_MEAN
Ozkan Sezer bd4277ee 2021-02-15T20:10:50 fixed make dist (VisualC.html went bye bye..)
Alex Szpakowski 09231c42 2021-02-15T11:51:00 Fix flags check in test code
Alex Szpakowski 9b9d0d48 2021-02-15T11:49:09 mac/iOS: allow Metal in windows created without an explicit backend Fixes SDL_CreateWindowAndRenderer (and similar situations) not choosing a Metal backend. See #3991. Passing an explicit backend into CreateWindow, eg SDL_WINDOW_OPENGL or SDL_WINDOW_METAL, will still prevent the window from being used with other backend types.
erik yuzwa 9c1871c1 2021-02-14T19:17:58 update path to visualc README
erik yuzwa 92506462 2021-02-14T17:12:39 update some copy
erik yuzwa be17004e 2021-02-14T17:03:14 updated some notes around using a newer IDE
erik yuzwa 7f1b8333 2021-02-14T16:48:29 initial work
Ozkan Sezer a2fbc452 2021-02-15T03:02:32 replace i386 checks with __i386__
Cacodemon345 cf15faae 2021-02-14T14:24:38 Change "memset" to "SDL_zero"
Cacodemon345 c5f9e061 2021-02-14T13:13:34 Disable FreeBSD console mouse when initializing evdev input Enable it again after quitting evdev input.
Alex Szpakowski d4d32833 2021-02-14T11:30:22 macOS: Fix Xcode project when deployment target is > 10.7 SDL_mfijoystick.m requires ARC, but the Xcode project's macOS targets weren't compiling the file with ARC enabled.
Ozkan Sezer b34d92bf 2021-02-14T11:56:40 further .gitignore updates
Ozkan Sezer 0d92507d 2021-02-14T11:55:50 regenerated configure
Ozkan Sezer 2faa4783 2021-02-14T11:55:24 further .gitignore updates
Ryan C. Gordon a6388cf2 2021-02-13T23:02:26 Add the usual "vi" comment to the end of pre-push-hook.
Misa 3da58b47 2021-02-13T15:11:40 Fix errors with fallback impls of SDL_isxdigit() and SDL_ispunct() SDL_isxdigit() should only accept A-Fa-f, not A-Za-z (it shouldn't use SDL_isalpha()). SDL_ispunct() shouldn't accept spaces (it should use SDL_isgraph() instead).
Joshua Saxby fe6f62e6 2021-02-10T15:17:02 Add ALIAS targets to all installed SDL2 targets This provides a linking interface that matches the one available when `find_package()` is used, by aliasing all of SDL's public targets into the SDL2:: namespace. Thus, dependees link to the same-named targets regardless of how SDL was acquired. This approach permits the use of wrappers around CMake's FetchContent API such as https://github.com/cpm-cmake/CPM.cmake
Misa dfe219ec 2021-02-13T11:21:19 Add all missing "is characteristic" stdlib functions SDL has been missing a bunch of these 'isX' functions for some time, where X is some characteristic of a given character. This commit adds the rest of them to the SDL stdlib, so now we have: - SDL_isalpha() - SDL_isalnum() - SDL_isblank() - SDL_iscntrl() - SDL_isxdigit() - SDL_ispunct() - SDL_isprint() - SDL_isgraph()
Cacodemon345 88f1c2c1 2021-02-14T00:42:37 Replace "echo -en" with "printf" in autoconf script Fixes summary output on FreeBSD.
Ozkan Sezer 67a9d6ba 2021-02-13T20:50:24 updates to .gitignore
erik yuzwa 3937eefc 2021-02-12T19:43:32 a draft for a pull_request template
Charlie Birks 1a48ca66 2021-02-04T16:20:54 emscripten: Create directory recursively in GetPrefPath
Stephan Vedder fa367cdd 2020-11-24T10:56:50 emscripten: Fix alt key being a nav key
Alon Zakai 20be1d63 2020-07-15T09:13:03 emscripten: Automatically resume audio contexts This uses the mechanism added in emscripten-core/emscripten#10843 which was applied to SDL1 and OpenAL. This adds the same for SDL2. This also reverts commit 865eaddffed50dbd13e6564c3f73902472cf74e8 which did something similar, but the new mechanism is more effective.
Charlie Birks edaf3f9c 2020-04-21T15:02:06 emscripten: Extend the "nav key" blacklist Add the F keys and Ctrl/Alt+*. Consistent with other naviagtion disabling. Also, none of these generate keypress events anyway.
Erik Yuzwa 82a96afa 2021-02-13T09:49:31 Update wiki.libsdl.org urls to libsdl-org/SDL/wiki (#4069)
erik yuzwa 5cbe62ea 2021-02-12T19:28:57 ignore vs2019 meta folder
Cameron Cawley 9f71a809 2021-02-12T22:01:29 Rename .hgignore to .gitignore
Ethan Lee a99eec77 2021-02-12T14:31:43 wayland: Minor whitespace fix
Ryan C. Gordon 0e9fd0f8 2021-02-12T17:12:56 Added a script that can be used to show commit URLs during a `git push`. Just symlink/copy it to .git/hooks/pre-push and make sure it's executable!
Ryan C. Gordon 65fbf36c 2021-02-12T14:46:49 Cleaned up a few more Bugzilla mentions.
Ryan C. Gordon 60a99b0b 2021-02-12T14:41:11 BUGS.txt now points to GitHub Issues instead of bugzilla.libsdl.org.
Ryan C. Gordon 4ff51d29 2021-02-12T14:15:29 Deprecate SDL_GetRevisionNumber and update things for git instead of hg. Fixes #4063
Sam Lantinga ee25a1e6 2021-02-12T08:54:08 The revision defaults to the empty string
Sam Lantinga 9deffcd3 2021-02-12T08:50:16 Updated the revision header with git revision
soredake 39153f81 2021-02-11T09:37:58 add Linux mapping for Ipega PG-9087S, closes #3783
Jay Petacat f443a6fc 2021-02-11T02:05:02 Fix format string warnings for width-based integers The DJGPP compiler emits many warnings for conflicts between print format specifiers and argument types. To fix the warnings, I added `SDL_PRIx32` macros for use with `Sint32` and `Uint32` types. The macros alias those found in <inttypes.h> or fallback to a reasonable default. As an alternative, print arguments could be cast to plain old integers. I opted slightly for the current solution as it felt more technically correct, despite making the format strings more verbose.
Sam Lantinga 5427f486 2021-02-11T17:28:07 Added support for trigger rumble for all Microsoft Xbox One controllers
Sam Lantinga 1f7ec3fa 2021-02-11T17:27:22 Added support for the PowerA Xbox One Series X Wired Controller
Ryan C. Gordon f9046b4c 2021-02-11T17:35:42 We're in Git now! Updated docs.
Ethan Lee cad67082 2021-02-04T19:04:56 wayland: Check for both _WAYLAND_CLIENT_H and WAYLAND_CLIENT_H
Vladislav Dmitrievich Turbanov 31e8a462 2021-02-10T20:54:15 * Fixed closing the test window.
Sam Lantinga ef52560a 2021-02-09T15:10:06 Fixed bug 5539 - Clang 11 fails to compile a CMake build with conflicting types for _m_prefetchw vladius In SDL_cpuinfo.h it seems like <intrin.h> is not included when __clang__ is defined, as the comment in the file explicitly reads: "Many of the intrinsics SDL uses are not implemented by clang with Visual Studio" However, the SDL_endian.h header does include <intrin.h> without any precautions like: >#ifdef _MSC_VER >#include <intrin.h> >#endif Maybe it should be changed to something like: >#ifdef _MSC_VER >#ifndef __clang__ >#include <intrin.h> >#endif >#endif
Sam Lantinga 629334f2 2021-02-09T15:02:55 Fixed bug 5543 - Wayland: Fix waylandvideo.h warnings wahil1976 This patch fixes the warnings seen when compiling the Wayland backend. This will also be required in the future to avoid issues with compilation.
Cameron Gutman f70e1973 2021-02-08T18:31:08 Fix waiting on condition variables with the SRW lock implmentation When SleepConditionVariableSRW() releases the SRW lock internally, it causes our SDL_mutex_srw state to become inconsistent. The lock is unowned yet inside, the owner is still the sleeping thread and more importantly the owner count is still 1. The next time someone acquires the lock, they will bump the owner count from 1 to 2. At that point, the lock is hosed. From the internal lock state, it looks to us like that owner has acquired the lock recursively, even though they have not. When they call SDL_UnlockMutex(), it will see the owner count > 0 and not call ReleaseSRWLockExclusive(). Now when someone calls SDL_CondSignal(), SleepConditionVariableSRW() will start the wakeup process by attempting to re-acquire the SRW lock. This will deadlock because the lock was never released after the other thread had used it. The thread waiting on the condition variable will never be able to wake up, even if the SDL_CondWaitTimeout() function is used and the timeout expires.
Sam Lantinga d9ba2044 2021-02-08T16:55:01 Backed out changeset 852a7bdbdf4b This causes a use-after-free memory error
Christian Rauch 4183211a 2021-02-08T16:01:37 free the 'display' after it was added to global list
Manuel Alfayate Corchete 005e2c59 2021-02-09T00:57:25 [KMS/DRM] Bugfix number #5535: Improve reliability, by wahil1976.
Christian Rauch 2170c7bf 2021-02-08T23:55:50 make AddressSanitizer optional and disabled by default
Christian Rauch 5045d299 2021-02-08T20:50:00 enable AddressSanitizer only for GCC 5 onwards (bug #5533)
Christian Rauch 066960c2 2021-02-08T02:15:50 add '-shared-libasan' to debug flags (bug #5533)
Ozkan Sezer dc45a228 2021-02-08T00:20:56 avoid some pedantic warnings in array initializers
Sam Lantinga 9c3aa7f0 2021-02-06T15:43:17 SDL: fix packet handling for original version of Stadia FW
Ozkan Sezer bb9e049d 2021-02-07T00:37:00 minor updates to libc function checks
Manuel Alfayate Corchete 19fa85d8 2021-02-06T16:05:55 [KMS/DRM] Fix build warning.
Manuel Alfayate Corchete 6ee53258 2021-02-06T14:03:53 [KMS/DRM] Replace indent tabs with spaces, as intended.
Manuel Alfayate Corchete 59cd46c2 2021-02-05T22:16:50 [KMS/DRM] Merge patch for bug #5532: No need to correct cursor position now that all windows are fullscreen. Link: https://bugzilla.libsdl.org/show_bug.cgi?id=5519.
Manuel Alfayate Corchete 538f7ad6 2021-02-05T00:27:11 [KMS/DRM] Remove redundant SDL_SendWindowEvent() call.
Manuel Alfayate Corchete 7beba050 2021-02-04T23:35:52 [KMS/DRM] Restore all-windows-are-fullscreen functionality, since there is no window manager in KMSDRM.
Cameron Gutman f4d58689 2021-02-03T18:00:22 Fix Xbox Series X controller on macOS There were two different implementations of IsBluetoothXboxOneController(), one in SDL_hidapi_xbox360.c and one in SDL_hidapi_xboxone.c. The latter had been updated to include USB_PRODUCT_XBOX_ONE_SERIES_X_BLUETOOTH while the former had not. This mismatch led to the Xbox Series X failing on macOS only. We have special code for handling the 360Controller driver for macOS which requires us to use the Xbox 360 driver for wired Xbox One controllers, and the SDL_hidapi_xbox360 version of IsBluetoothXboxOneController() was used to determine which devices were wired. In addition to adding the missing USB_PRODUCT_XBOX_ONE_SERIES_X_BLUETOOTH, this change moves IsBluetoothXboxOneController() into a single shared function which will ensure this bug won't happen again.
Sam Lantinga 525196dd 2021-02-04T10:47:16 Updated runtime dependency on libudev
Sam Lantinga ff297753 2021-02-04T10:46:34 Fixed compiler warning
Sam Lantinga a60af1e4 2021-02-04T07:00:06 Backed out changeset 1cde3dd0f44d - this breaks windows which are created and then set to FULLSCREEN_DESKTOP
Sylvain Becker d74779b7 2021-02-04T13:50:56 Android: documention update
Sam Lantinga e404b525 2021-02-03T21:31:50 KMSDRM doesn't have a window manager, so all windows are fullscreen
Sylvain Becker 549bc133 2021-02-03T09:51:42 SDL_vulkan_utils: minor code clean-up
Sylvain Becker c0166a29 2021-02-03T09:32:09 SDL_ConvertColorkeyToAlpha: remove and clarify a FIXME This function doesn't handle bpp 1 or 3 case, because those formats never have an alpha channel
Sam Lantinga 85235985 2021-02-02T11:53:31 Fixed detecting the paddles on the Xbox Elite Series 1 controller
Sam Lantinga 69e9b2ac 2021-02-01T22:35:46 Fixed bug 5471 - Creating a fullscreen desktop window goes windowed temporarily This is caused by the Metal renderer recreating the window because by default we create an OpenGL window on macOS. It turns out that at least on macOS 10.15, a window that has been initialized for OpenGL can also be used with Metal. So we'll skip recreating the window in that case.
Sam Lantinga ef2f13e1 2021-02-01T22:30:31 Added test command line options to force different window types
Sam Lantinga 2426949a 2021-02-01T21:56:56 Removed support for clock_gettime_nsec_np() SDL_GetTicks() was broken and it's not adding any real value here.
Christian Rauch 42798cec 2021-02-01T20:25:24 cmake: enable AddressSanitizer in Debug builds if supported
Sam Lantinga fadfa510 2021-02-01T09:21:11 Don't uncorrelate while rumble is active and stay correlated longer in case raw input messages are lagging a bit.
Sebastian Krzyszkowiak e862856e 2021-02-01T08:57:39 wayland: Don't crash when the properties of already existing wl_output change
Sam Lantinga cef198c9 2021-02-01T08:55:48 Fixed bug 5524 - Pass NSString to NSLog() Hiroyuki Iwatsuki If you pass the C string directly to NSLog(), it will be garbled with Japanese and probably other language strings, or no log will be output at all. NSLog("Hello, World!"); // => "Hello, World!" NSLog("こんにちは、世界!"); // => No output... Therefore, you need to convert the string to an NSString before passing it to NSLog(). NSString *str = [NSString stringWithUTF8String:"こんにちは、世界!"]; NSLog(@"%@", str); // => "こんにちは、世界!" Thank you.
Sam Lantinga b7f711cd 2021-01-31T19:11:49 Don't enable address sanitize flags without checking compiler first