SDL Wiki Bot
ceccf24519
Sync SDL3 wiki -> header
2024-01-24 01:20:29 +00:00
Sam Lantinga
7cd914593f
Added HDR surface properties and tone mapping from HDR to SDR
...
This currently only supports PQ, but can be expanded in the future
2024-01-23 17:19:41 -08:00
SDL Wiki Bot
6fb188eb35
Sync SDL3 wiki -> header
2024-01-23 03:24:26 +00:00
Sam Lantinga
cd231a65f6
Added SDL_GetJoystickCaps() and SDL_GetGamepadCaps() to get the capabilities of controllers
...
Also added SDL_GAMEPAD_CAP_PLAYER_LED to let the application know if the controller has a visible player LED
2024-01-22 19:23:42 -08:00
Sam Lantinga
a28a42cfc6
Fixed declaration of SDL_HapticRumbleSupported
2024-01-21 11:36:38 -08:00
Sam Lantinga
052b958bf2
Made SDL_HapticEffect const in the API
...
Also added some additional parameter validation to haptic effect functions
2024-01-21 11:29:40 -08:00
Sam Lantinga
5e70ee29cc
Build SDL with the static C runtime on Visual Studio
2024-01-21 06:55:29 -08:00
Sam Lantinga
e2f35a16c2
Added <string.h> for declaration of memset() and memcpy()
2024-01-21 06:55:29 -08:00
Sam Lantinga
7a069cc4b0
Allow optimizing memcpy and memset where possible
...
Modern C runtimes have well optimized memset and memcpy, so use those instead of dispatching into SDL's versions. In addition, some compilers can analyze memset and memcpy calls and directly turn them into optimized assembly.
2024-01-21 06:55:29 -08:00
SDL Wiki Bot
4d6e2d8b73
Sync SDL3 wiki -> header
2024-01-20 14:33:19 +00:00
Sam Lantinga
308906ba25
Added SDL_FlipSurface() to flip a surface vertically or horizontally
...
Fixes https://github.com/libsdl-org/SDL/issues/8857
2024-01-20 06:31:37 -08:00
Sam Lantinga
a31dc6dfcb
Switched SDL_TouchID and SDL_FingerID to be Uint64 with 0 being an invalid value
2024-01-18 10:55:24 -08:00
Edoardo Lolletti
b384973936
Remove no longer needed hint
2024-01-18 10:19:18 -08:00
Sam Lantinga
cda2bffeee
Re-add SDL_HAPTIC_SQUARE for SDL 3.0
...
Fixes https://github.com/libsdl-org/SDL/issues/8753
Closes https://github.com/libsdl-org/SDL/pull/8831
Closes https://github.com/libsdl-org/SDL/pull/8783
2024-01-18 09:24:03 -08:00
Sam Lantinga
df4b855af5
Updated SDL_TLSID to use the same type as other IDs in SDL
2024-01-18 08:18:37 -08:00
Sam Lantinga
fc0c774976
Renamed SDL_ThreadID() to SDL_GetCurrentThreadID()
...
Also renamed SDL_threadID to SDL_ThreadID and made it Uint64 for consistency with other ID types
2024-01-18 08:18:37 -08:00
Sam Lantinga
d6a41f8f31
Updated SDL_TimerID to use the same type as other IDs in SDL
2024-01-18 07:08:15 -08:00
SDL Wiki Bot
bc3a71d400
Sync SDL3 wiki -> header
2024-01-18 15:01:21 +00:00
Sam Lantinga
464f4d19fe
Removed obsolete XInput mapping hint
2024-01-18 07:00:21 -08:00
Sam Lantinga
f8dfee01bb
Made SDL_ReadSurfacePixel a public function
...
Fixes https://github.com/libsdl-org/SDL/issues/8320
2024-01-18 07:00:10 -08:00
Sam Lantinga
c540c77756
Removed SDL_INIT_EVERYTHING
...
Fixes https://github.com/libsdl-org/SDL/issues/8709
2024-01-18 06:17:58 -08:00
Sam Lantinga
26996e2c02
We've decided to keep separate functions for creating a thread with and without stack size specified.
...
Fixes https://github.com/libsdl-org/SDL/issues/6652
2024-01-18 06:11:55 -08:00
Sam Lantinga
a2665f54c8
Updated the atomic API for SDL 3.0 naming conventions
...
Fixes https://github.com/libsdl-org/SDL/issues/7388
2024-01-18 04:41:34 -08:00
SDL Wiki Bot
4e60fc9b2b
Sync SDL3 wiki -> header
2024-01-18 12:07:19 +00:00
Sam Lantinga
fb898d6df0
Clarify that desktop mode is the non-exclusive borderless fullscreen mode
...
Fixes https://github.com/libsdl-org/SDL/issues/8413
2024-01-18 04:06:32 -08:00
SDL Wiki Bot
b5bcf45a65
Sync SDL3 wiki -> header
2024-01-18 12:02:08 +00:00
Sam Lantinga
4fee6cb274
Added documentation for custom event cleanup in SDL_FlushEvent()
2024-01-18 04:00:48 -08:00
SDL Wiki Bot
20e8411b12
Sync SDL3 wiki -> header
2024-01-18 11:27:24 +00:00
Sam Lantinga
f224af5ac5
Updated Haptic API for SDL 3.0 conventions
...
Also removed the XInput haptic support since using the haptic API for rumble is no longer supported.
2024-01-18 03:26:11 -08:00
Sam Lantinga
75dd7e1658
Note that we only allow disabling major subsystems
2024-01-17 09:24:04 -08:00
Sam Lantinga
130b361904
Removed SDL_MISC_DISABLED
2024-01-17 09:24:04 -08:00
Sam Lantinga
20fa5e6ad0
Removed SDL_LOCALE_DISABLED
2024-01-17 09:24:04 -08:00
Sam Lantinga
6efadfdb77
Removed SDL_FILESYSTEM_DISABLED
2024-01-17 09:24:04 -08:00
Sam Lantinga
3d951134a3
Removed SDL_FILE_DISABLED
...
This didn't actually do anything except break functionality on Apple platforms
2024-01-17 09:24:04 -08:00
Sam Lantinga
31f34e9504
Removed SDL_ATOMIC_DISABLED
...
It turns out that because we redefine SDL functions internally, it is safe to call SDL mutex functions while initializing the jump table
2024-01-17 09:24:04 -08:00
Sam Lantinga
6e1b11368d
Removed SDL_CPUINFO_DISABLED
...
CPU info is a core part of the SDL API, and shouldn't be disabled
2024-01-17 09:24:04 -08:00
Sam Lantinga
52d6587084
Removed SDL_EVENTS_DISABLED
...
Events are a core part of the SDL API, and shouldn't be disabled
2024-01-17 09:24:04 -08:00
Sam Lantinga
ba02722755
Removed SDL_LOADSO_DISABLED
...
Loading shared libraries is core functionality on platforms that support it.
2024-01-17 09:24:04 -08:00
Sam Lantinga
0d7df16812
Timers are a required platform feature
...
Many SDL subsystems depend on being able to see time passing. If you are porting to a new platform, you'll need to fill in a timer implementation as part of the initial port.
Fixes https://github.com/libsdl-org/SDL/issues/8850
2024-01-16 20:50:08 -08:00
SDL Wiki Bot
3ca8cee874
Sync SDL3 wiki -> header
2024-01-16 20:27:25 +00:00
Ryan C. Gordon
8bf74280e0
docs: Note SDL_UpdateWindowSurfaceRects can update beyond specified areas.
...
Reference Issue #8825 .
2024-01-16 15:26:13 -05:00
SDL Wiki Bot
464a41411e
Sync SDL3 wiki -> header
2024-01-15 18:55:24 +00:00
Frank Praznik
4f3d4bd110
wayland: Add the ability to import and wrap external surfaces
...
Add the ability to import and wrap external surfaces from external toolkits such as Qt and GTK.
Wayland surfaces and windows are more intrinsically tied to the client library than other windowing systems, so it is necessary to provide a way to initialize SDL with an existing wl_display object, which needs to be set prior to video system initialization, or export the internal SDL wl_display object for use by external applications or toolkits. For this, the global property SDL_PROPERTY_GLOBAL_VIDEO_WAYLAND_WL_DISPLAY_POINTER is used.
A Wayland example was added to testnative, and a basic example of Qt 6 interoperation is provided in the Wayland readme to demonstrate the use of external windows with both SDL owning the wl_display, and an external toolkit owning it.
2024-01-15 13:54:35 -05:00
Sam Lantinga
9a77813df0
WinMain is specified by the Win32 API as having extern "C" linkage
...
Fixes https://github.com/libsdl-org/SDL/issues/8814
2024-01-10 06:25:49 -08:00
Frank Praznik
4b6df89238
wayland: Add a property to allow creation of a wl_egl_window object even if OpenGL is not enabled
...
Useful if the application handles OpenGL outside of SDL and wants to use the window without having to pull in Wayland as a dependency.
2024-01-08 14:54:47 -05:00
Frank Praznik
f7dd0f9491
wayland: Allow the creation of roleless window surfaces for custom application use
...
Allow for the creation of SDL windows with a roleless surface that applications can use for their own purposes, such as with a windowing protocol other than XDG toplevel.
The property `wayland.surface_role_custom` will create a window with a surface that SDL can render to and handles input for, but is not associated with a toplevel window, so applications can use it for their own, custom purposes (e.g. wlr_layer_shell).
A test/minimal example is included in tests/testwaylandcustom.c
2024-01-08 14:54:47 -05:00
Frank Praznik
4417250d0d
wayland: Remove the registry from the window properties
...
A Wayland registry object can only have one listener attached at a time, so an application attempting to use the backend SDL registry object for its own purposes will just result in an error. Remove this property, as it is of no use to applications and will only result in errors.
If an application needs the registry, it needs to get the wl_display object via `SDL.window.wayland.display` and use wl_display_get_registry() to create a new registry object that it can attach its own listeners to.
2024-01-08 14:54:47 -05:00
Ryan C. Gordon
82f2c4d581
render: Renamed SDL_GetTextureRenderer to SDL_GetRendererFromTexture.
2024-01-08 14:16:16 -05:00
SDL Wiki Bot
95066ce2a0
Sync SDL3 wiki -> header
2024-01-08 19:10:31 +00:00
Ryan C. Gordon
df438a3170
opengl: OpenGL renderers need to support texture target in properties.
...
Otherwise this has to become an awkward heuristic in sdl2-compat.
2024-01-08 14:08:35 -05:00