Go to file
Christoph Reichenbach 1b284cd415 X11 pen detection: fix misclassification due to improper init
xinput2_device_is_pen() was testing against default-zero values
in the X11 Atom cache on at least the first round of
detections, leading to imprecise detection.

The patch fixes two aspects of initialisation:

1. Ensure that the selector cache is always initialised in
xinput2_device_is_pen().

2. Ensure that all X11 Atoms used in SDL_x11pen.c are instantiated if
missing. This ensures that they are never None and avoids potential
failures to detect hot-plugged tablet devices.

Acknowledgements: @tilman3 for narrowing down the issue and an
initial fix
2023-11-26 14:10:04 +03:00
.github ci: do 'brew update' & don't run dependent checks on installed things 2023-11-26 06:01:26 +01:00
VisualC Removed the window shape API for SDL 3.0 2023-11-22 14:11:10 -08:00
VisualC-GDK Removed the window shape API for SDL 3.0 2023-11-22 14:11:10 -08:00
VisualC-WinRT Removed the window shape API for SDL 3.0 2023-11-22 14:11:10 -08:00
Xcode Removed the window shape API for SDL 3.0 2023-11-22 14:11:10 -08:00
android-project Add cursors for X11/Wayland window resizing 2023-11-21 08:34:13 -08:00
build-scripts SDL_migration.cocci: Added a thing for SDL_Vulkan_CreateSurface. 2023-11-06 19:16:38 -05:00
cmake SDL_hidapi requires libusb >= 1.0.16 2023-11-24 21:31:59 +01:00
docs render: Batching is always enabled now! 2023-11-23 20:37:52 -05:00
include render: Batching is always enabled now! 2023-11-23 20:37:52 -05:00
mingw/pkg-support/cmake build: don't add SDL3 subfolder to include path for external projects 2022-11-27 14:33:13 -08:00
src X11 pen detection: fix misclassification due to improper init 2023-11-26 14:10:04 +03:00
test x11: Deal with difference in GLX_EXT_swap_control_tear behavior. 2023-11-23 13:56:51 -05:00
wayland-protocols Add and event and flag to report when a window has been occluded 2023-07-18 16:42:05 -04:00
.clang-format Commented out syntax that causes Visual Studio 2019 to complain on every edit 2022-12-02 00:43:01 -08:00
.clang-tidy Fix size of memcpy in SDL_AudioDeviceFormatChangedAlreadyLocked 2023-08-05 14:14:45 -04:00
.editorconfig Fixed formatting for Haiku cc files 2023-01-25 03:03:41 -08:00
.gitignore Add VS code directory to gitignore 2023-07-25 23:36:14 -07:00
.wikiheaders-options sdlwiki: SDL3 advises users to include through 'SDL3/SDL.h' 2023-03-21 02:19:19 +01:00
Android.mk Always provide an implementation for all SDL3 symbols 2023-10-12 14:00:47 +02:00
BUGS.txt Cleaned up a few more Bugzilla mentions. 2021-02-12 14:46:49 -05:00
CMakeLists.txt cmake: fixed iconv detection test program 2023-11-26 01:55:28 +03:00
CREDITS.txt Use Apple's nomenclature for macOS and iOS 2022-11-25 16:00:06 -08:00
INSTALL.txt Use Apple's nomenclature for macOS and iOS 2022-11-25 16:00:06 -08:00
LICENSE.txt Updated copyright for 2023 2023-01-09 09:41:41 -08:00
README-SDL.txt More HTTPS changes in the documentation. 2017-02-16 16:52:03 -05:00
README.md Fixed typo 2023-08-31 09:32:39 -07:00
WhatsNew.txt Removed patch note for change already in SDL 2.x 2023-07-08 09:35:42 -07:00

README.md

Simple DirectMedia Layer (SDL) Version 3.0

https://www.libsdl.org/

Simple DirectMedia Layer is a cross-platform development library designed to provide low level access to audio, keyboard, mouse, joystick, and graphics hardware via OpenGL and Direct3D. It is used by video playback software, emulators, and popular games including Valve's award winning catalog and many Humble Bundle games.

More extensive documentation is available in the docs directory, starting with README.md. If you are migrating to SDL 3.0 from SDL 2.0, the changes are extensively documented in README-migration.md.

Enjoy!

Sam Lantinga (slouken@libsdl.org)