Simple Directmedia Layer
Go to file
Ethan Lee a28f426acb render: Only update size/scale/viewport when moving to a new display, rather than all window movement.
We really only care about DPI changes here, so this both reduces work and also avoids weird cases where viewport state can be corrupted by trivial window events. This doesn't _completely_ get rid of the issue but this is somewhat intentional, since apps will definitely want to do a full reset when changing displays anyhow (otherwise DPI/adapter changes will screw things up, and that's out of our control as long as both window size and drawable size are exposed at the same time.

Note that OpenGL still captures window events because of weird platform-specific issues like macOS and viewport stretching!

Fixes #5949
2022-08-12 16:13:24 -04:00
.github Create dummy PS2 Video driver 2022-08-02 11:40:31 -07:00
VisualC add SDL_crc16.c to msvc and watcom builds 2022-08-11 20:11:32 +03:00
VisualC-GDK add SDL_crc16.c to msvc and watcom builds 2022-08-11 20:11:32 +03:00
VisualC-WinRT add SDL_crc16.c to msvc and watcom builds 2022-08-11 20:11:32 +03:00
Xcode Added SDL_crc16.c to the Xcode project 2022-08-11 13:20:17 -07:00
Xcode-iOS Updated iOS build instructions 2021-11-30 12:19:26 -08:00
acinclude autoconf: use ax_compute_relative_paths 2022-07-27 21:06:31 +02:00
android-project Added support for the 8BitDo Ultimate Wired Controller for Xbox 2022-07-20 11:05:55 -07:00
android-project-ant Added the old ant Android build project structure 2017-10-28 12:11:25 -07:00
build-scripts build-scripts: Removed winrtbuild.*, no longer used. 2022-08-09 16:17:28 -04:00
cmake cmake: enable disabing hidapi 2022-08-05 13:06:51 -07:00
docs build-scripts: Removed winrtbuild.*, no longer used. 2022-08-09 16:17:28 -04:00
include Sync SDL wiki -> header 2022-08-11 21:11:11 +00:00
mingw/pkg-support/cmake Fix MinGW SDK redist: sdl2-config.cmake needs to set SDL2_FOUND 2022-06-03 21:05:55 -07:00
src render: Only update size/scale/viewport when moving to a new display, rather than all window movement. 2022-08-12 16:13:24 -04:00
test Don't run the stdio automated tests if libc isn't available 2022-08-10 09:05:55 -07:00
visualtest remove all unnecessary stuff from visualtest configury. 2021-12-21 20:01:02 +03:00
wayland-protocols video: wayland: Use wp-viewporter for fullscreen with non-native resolutions 2022-03-28 13:18:26 -04:00
.clang-format Disable formatting not supported by Visual Studio 2019 2022-05-27 15:29:21 -07:00
.editorconfig Separated controller type data into a C file 2022-06-03 15:03:08 -07:00
.gitignore Xbox GDKX support (#5869) 2022-07-01 13:59:14 -07:00
.wikiheaders-options wikiheaders.pl: changes to make this usable with external projects. 2022-06-15 23:26:24 -04:00
Android.mk mark Android.mk as non-executable 2021-11-12 12:55:28 +03:00
BUGS.txt Cleaned up a few more Bugzilla mentions. 2021-02-12 14:46:49 -05:00
CMakeLists.txt Disable declaration-after-statement warning on Android 2022-08-08 08:31:40 -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 INSTALL.txt: Say "macOS" instead of "Mac OS X" in modern times. 2022-03-15 13:07:55 -04:00
LICENSE.txt Updated copyright for 2022 2022-01-03 09:40:21 -08:00
Makefile.in We want to ship the CMake input file, not the generated file 2022-07-11 08:55:49 -07:00
Makefile.minimal build libSDL2_test too with Makefile.minimal 2021-11-14 01:10:32 +03:00
Makefile.os2 add SDL_crc16.c to msvc and watcom builds 2022-08-11 20:11:32 +03:00
Makefile.pandora more fixes to standalone makefiles. 2021-11-13 21:56:20 +03:00
Makefile.w32 add SDL_crc16.c to msvc and watcom builds 2022-08-11 20:11:32 +03: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.in ci: Test cmake build script on Android 2022-06-15 11:11:49 -07:00
TODO.txt Fixed up legacy MoinMoin URLs at wiki.libsdl.org 2021-04-01 12:20:33 -04:00
WhatsNew.txt Added the hint SDL_HINT_MOUSE_RELATIVE_WARP_MOTION 2022-08-11 14:02:03 -07:00
autogen.sh Simplified autogen.sh, thanks to @smcv for the tip 2022-05-05 11:54:24 -07: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 Allow emscripten platform to build without threads 2022-08-01 09:51:21 -07:00
configure.ac Allow emscripten platform to build without threads 2022-08-01 09:51:21 -07:00
sdl2-config-version.cmake.in Add documentation to autotoo'ls sdl2-config-version.cmake.in 2022-05-31 00:10:55 +02:00
sdl2-config.cmake.in Expand CMake documentation a bit (#5961) 2022-08-09 13:05:03 -07:00
sdl2-config.in cmake+ci: fix+test sdl2-config + sdl2.pc for all supported platforms 2022-06-23 14:17:38 +02:00
sdl2.m4 acinclude & sdl2.m4 updates: 2020-12-22 17:00:28 +03:00
sdl2.pc.in Compatible with including as <SDL2/SDL.h> 2022-07-28 20:34:34 -07: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)