Simple Directmedia Layer
Go to file
Sam Lantinga 157c3f8097 [SDL] Minimize number of system calls when handling WM_INPUT raw input messages.
Details:
Currently doing 4 system calls per WM_INPUT message, which can cause the thread handling the message loop to be swapped out several times:
* GetProp - to get window data from the window handle
* GetRawInputData - to retrieve the raw input data
* 2 calls to GetMessageExtraInfo - to ignore synthetic mouse events generated for touchscreens

In this change:
* Replaced GetProp by iterating the list of windows maintained by SDL (with a fallback to GetProp). Note that this will affect all messages and not just WM_INPUT
* only calling GetMessageExtraInfo if a touchscreen has been detected

Fix for https://jira.valve.org/browse/CSGO-4855
@saml
2021-05-21 09:45:08 -07:00
.github Delete gh-pages.yml 2021-04-01 16:36:06 -04:00
VisualC Added Stadia controller source file to Visual Studio and Xcode projects 2021-01-24 00:51:26 -05:00
VisualC-WinRT Add SDL_cond implementation using Windows Condition Variables 2020-12-28 11:43:11 -08:00
Xcode minor watcom build fixes. 2021-05-15 00:22:50 +03:00
Xcode-iOS Added weak linking to hidapi framework 2020-11-17 10:29:36 -08:00
acinclude acinclude/libtool.m4: Apply macos11 patch from libtool bug #44605 2021-01-09 00:11:20 +03:00
android-project Enable TV game mode by default on Android 2021-05-07 12:43:35 -07:00
android-project-ant Added the old ant Android build project structure 2017-10-28 12:11:25 -07:00
build-scripts [SDL] Minimize number of system calls when handling WM_INPUT raw input messages. 2021-05-21 09:45:08 -07:00
cmake CMake: fixes to pthreads detection. 2021-04-25 01:28:03 +03:00
debian debian: Align to debian packaging scheme 2021-04-07 13:57:23 -07:00
docs KMSDRM on Dragonfly BSD doesn't work without being root 2021-05-12 09:26:23 -07:00
include include: Document timing issue with SDL_GetWindowBordersSize 2021-05-04 13:16:13 -04:00
src [SDL] Minimize number of system calls when handling WM_INPUT raw input messages. 2021-05-21 09:45:08 -07:00
test minor watcom build fixes. 2021-05-15 00:22:50 +03:00
visualtest fix permissions of a few files 2021-02-22 15:44:32 +03:00
wayland-protocols wayland: Drop support for kwin specific decoration management 2021-04-07 13:54:07 -07:00
.gitignore git: Ignore debian generated files 2021-04-05 15:38:32 -04:00
Android.mk minor watcom build fixes. 2021-05-15 00:22:50 +03:00
BUGS.txt Cleaned up a few more Bugzilla mentions. 2021-02-12 14:46:49 -05:00
CMakeLists.txt Remove gles2 vita render 2021-04-24 14:13:09 -07:00
CREDITS.txt Fixed crash if initialization of EGL failed but was tried again later. 2015-06-21 17:33:46 +02:00
INSTALL.txt Fixed up legacy MoinMoin URLs at wiki.libsdl.org 2021-04-01 12:20:33 -04:00
LICENSE.txt license: Fixing the license file to be correctly scooped up by Github automation 2021-02-17 13:08:13 -05:00
Makefile.in SDL: Updated patches for HAIKU 2021-03-13 18:36:01 -08:00
Makefile.minimal Added a dummy sensor driver 2018-08-21 13:29:21 -07:00
Makefile.os2 minor update to os2 makefile. (binary output doesn't change.) 2021-05-15 00:50:20 +03:00
Makefile.pandora Added a dummy sensor driver 2018-08-21 13:29:21 -07:00
Makefile.psp added SDL_strtokr() as a replacement for POSIX strtok_r (bug #4046.) 2019-11-20 20:40:50 +03:00
Makefile.wiz Added a dummy sensor driver 2018-08-21 13:29:21 -07:00
README-SDL.txt More HTTPS changes in the documentation. 2017-02-16 16:52:03 -05:00
README.md Update and rename README.txt to README.md 2021-03-20 18:46:37 -04:00
SDL2.spec.in license: Fixed references to COPYING.txt that are now LICENSE.txt. 2021-02-18 11:07:26 -05:00
SDL2Config.cmake Fixed bug 3651 - CMake build does not install CMake package configuration 2017-08-09 19:03:10 -07:00
TODO.txt Fixed up legacy MoinMoin URLs at wiki.libsdl.org 2021-04-01 12:20:33 -04:00
WhatsNew.txt Fixed the name of the PS5 hint 2020-12-09 10:39:36 -08:00
autogen.sh bump minimum required autoconf version and revise autogen.sh 2021-04-14 23:20:40 +03:00
cmake_uninstall.cmake.in Fixed bug 3867 - Can't find install_manifest.txt when running 'uninstall' target 2017-10-12 08:44:45 -07:00
configure Generic check for desktop GL and EGL on Linux systems 2021-05-05 15:19:55 -07:00
configure.ac Generic check for desktop GL and EGL on Linux systems 2021-05-05 15:19:55 -07:00
sdl2-config-version.cmake.in cmake: Forgot to add this file to revision control. 2020-02-25 14:52:03 -05:00
sdl2-config.cmake.in build: Merge pkg-config Libs.private into Libs for static-only builds 2020-04-11 23:38:34 +01:00
sdl2-config.in build: Don't duplicate Libs in Libs.private in pkg-config file 2020-04-12 13:24:36 +01:00
sdl2.m4 acinclude & sdl2.m4 updates: 2020-12-22 17:00:28 +03:00
sdl2.pc.in rename PKG_CONFIG_LIBS_PRIV to PKGCONFIG_LIBS_PRIV 2021-04-14 21:40:50 +03:00

README.md

Simple DirectMedia Layer (SDL) Version 2.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

Enjoy!

Sam Lantinga (slouken@libsdl.org)