Simple DirectMedia Layer https://libsdl.org
Find a file
Frank Praznik 152ba829a1 video: Try to reconfigure the window for OpenGL without destroying it
When attaching a renderer (GL based specifically) to a window that was not created with the appropriate flags, the window would be destroyed and recreated to configure it for the desired rendering backend. While most of the issues with this have been mitigated over time, there can still be some undesirable side effects from doing so on certain platforms.

If the window was just created and was never configured for any graphics context, it is possible that the reconfiguration can be done without destroying the window first.

The Wayland implementation fixes an issue when creating a window with the fullscreen flag on wlroots based Wayland compositors, and can likely be extended to other platforms to avoid unnecessarily destroying/recreating a window in the very common case where a window is created, followed immediately by attaching a renderer.
2025-08-27 12:10:48 -04:00
.github Update NDK version to 28 (#13729) 2025-08-12 07:45:57 -07:00
android-project Fixed bug #13794: prevent to use the onBackPressed callback API that is enabled on API36 2025-08-27 11:39:00 +02:00
build-scripts wikiheaders: Don't autolink things that are already linked. 2025-08-26 14:43:59 -04:00
cmake Improve CMake for IDE Projects (Visual Studio) (#13704) 2025-08-14 08:19:14 -07:00
docs docs: Update Wayland documentation 2025-08-27 11:26:43 -04:00
examples Small fix for snake example (#13790) 2025-08-27 05:16:24 -07:00
include Allow building the tray subsystem without the video subsystem 2025-08-27 08:15:24 -07:00
src video: Try to reconfigure the window for OpenGL without destroying it 2025-08-27 12:10:48 -04:00
test Fixed bug #13794: prevent to use the onBackPressed callback API that is enabled on API36 2025-08-27 11:39:00 +02:00
VisualC Allow building the tray subsystem without the video subsystem 2025-08-27 08:15:24 -07:00
VisualC-GDK Allow building the tray subsystem without the video subsystem 2025-08-27 08:15:24 -07:00
wayland-protocols wayland: Add support for the key repeat event (seat v10) 2025-07-06 11:28:04 -04:00
Xcode Implement SInput Device Support (#13343) 2025-07-15 18:35:47 -07:00
.clang-format Add 'wl_list_for_each_safe' to the clang-format macro list 2024-03-14 10:22:23 -04:00
.clang-tidy Fix size of memcpy in SDL_AudioDeviceFormatChangedAlreadyLocked 2023-08-05 14:14:45 -04:00
.editorconfig .editorconfig: Remove excess apostrophe at *.cocci 2024-06-16 09:18:17 -07:00
.gitignore Allow in-tree build 2024-10-30 00:04:17 +01:00
.wikiheaders-options wikiheaders: Let each subproject specify how to find their property symbols. 2025-06-17 16:41:24 -04:00
Android.mk Revert "Support Google Play 16 KB Page Size Requirement (#13470)" 2025-08-07 11:44:45 -07:00
BUGS.txt Added a Discord link to BUGS.txt 2025-01-13 16:42:50 -08:00
CMakeLists.txt Allow building the tray subsystem without the video subsystem 2025-08-27 08:15:24 -07:00
CREDITS.md Updated the credits for SDL 3.0 2025-01-13 16:42:50 -08:00
INSTALL.md Add a link to docs/INTRO-mingw.md 2025-03-06 16:25:17 -08:00
LICENSE.txt Updated copyright for 2025 2025-01-01 07:45:52 -08:00
README.md Updating documentation for the 3.2.0 release 2025-01-15 20:38:16 -08:00
WhatsNew.txt Added SDL_HINT_VIDEO_X11_EXTERNAL_WINDOW_INPUT 2025-03-05 09:07:05 -08:00

Simple DirectMedia Layer (SDL for short) is a cross-platform library designed to make it easy to write multi-media software, such as games and emulators.

You can find the latest release and additional information at: https://www.libsdl.org/

Installation instructions and a quick introduction is available in INSTALL.md

This library is distributed under the terms of the zlib license, available in LICENSE.txt.

Enjoy!

Sam Lantinga (slouken@libsdl.org)