Sam Lantinga
aafbbe4ebc
Fixed warning C4090: 'function': different 'const' qualifiers
2024-07-19 15:38:41 -07:00
Sam Lantinga
02dceed760
Simpler pointer arithmetic
2024-07-19 13:06:54 -07:00
Sam Lantinga
b80784fced
SDL_GetGamepadBindings() follows the SDL_GetStringRule
2024-07-19 13:06:54 -07:00
Sam Lantinga
0079b6d45f
SDL_GetTouchFingers() follows the SDL_GetStringRule
2024-07-19 13:06:54 -07:00
Sam Lantinga
a340de6196
The candidates in SDL_EVENT_TEXT_EDITING_CANDIDATES should be a single allocation
2024-07-19 12:22:03 -07:00
Sam Lantinga
bebde1c4c9
Make sure we're not trying to add temporary memory twice
2024-07-19 12:22:03 -07:00
Sam Lantinga
68322ac851
Ensure that all functions that follow the SDL_GetStringRule return temporary memory
2024-07-19 12:22:03 -07:00
Sam Lantinga
fd9fe1bb7b
Renamed event memory to temporary memory, since it's not just used for events
2024-07-19 12:22:03 -07:00
Sam Lantinga
c4eac60000
SDL_GetClipboardData() follows the SDL_GetStringRule
2024-07-19 12:22:03 -07:00
Sam Lantinga
61a7a0e579
SDL_GUIDToString() follows the SDL_GetStringRule
...
Also removed the distinction between SDL_GUID and SDL_JoystickGUID
2024-07-19 12:22:03 -07:00
Sam Lantinga
892df4bf4b
SDL_GetWindowICCProfile() follows the SDL_GetStringRule
2024-07-19 12:22:03 -07:00
Sam Lantinga
eb22fcce35
SDL_GetTouchDevices() follows the SDL_GetStringRule
2024-07-19 12:22:03 -07:00
Sam Lantinga
856d598d6e
SDL_GetSensors() follows the SDL_GetStringRule
2024-07-19 12:22:03 -07:00
Sam Lantinga
4f8c348402
SDL_GetPreferredLocales() follows the SDL_GetStringRule
2024-07-19 12:22:03 -07:00
Sam Lantinga
9be73ed7c5
SDL_GetMice() follows the SDL_GetStringRule
2024-07-19 12:22:03 -07:00
Sam Lantinga
6ca18ed0e5
SDL_GetKeyboards() follows the SDL_GetStringRule
2024-07-19 12:22:03 -07:00
Sam Lantinga
5ce0aacaa4
SDL_GetGamepads() follows the SDL_GetStringRule
2024-07-19 12:22:03 -07:00
Sam Lantinga
4961af4569
SDL_GetJoysticks() follows the SDL_GetStringRule
2024-07-19 12:22:03 -07:00
Sam Lantinga
b32c9615a7
SDL_GetHaptics() follows the SDL_GetStringRule
2024-07-19 12:22:03 -07:00
Sam Lantinga
9de8cb888a
SDL_GetFullscreenDisplayModes() follows the SDL_GetStringRule
2024-07-19 12:22:03 -07:00
Sam Lantinga
9758e102bc
SDL_GetDisplays() follows the SDL_GetStringRule
2024-07-19 12:22:03 -07:00
Sam Lantinga
01199469de
SDL_GetCameras() follows the SDL_GetStringRule
2024-07-19 12:22:03 -07:00
Sam Lantinga
0fe6603747
SDL_GetCameraSupportedFormats() follows the SDL_GetStringRule
...
Also changed the function to return an array of pointers and added example usage to testcamera
2024-07-19 12:22:03 -07:00
Sam Lantinga
bdafc8e212
SDL_GetWindows() follows the SDL_GetStringRule
2024-07-19 12:22:03 -07:00
Sam Lantinga
8ca6caeda5
SDL_GetAudioPlaybackDevices() and SDL_GetAudioRecordingDevices() follow the SDL_GetStringRule
2024-07-19 12:22:03 -07:00
Sam Lantinga
bb96320cc4
Make sure we always copy the data returned using SDL_GetStringRule
...
This prevents race conditions where calling an API from one thread returns the data and it's freed by updates on another thread
2024-07-19 12:22:03 -07:00
Sam Lantinga
ef884c8aa6
Transfer event memory between the local pool and the event queue
...
This allows threads to free memory from their local pool without affecting events that are queued, and to transfer memory ownership cleanly between threads that are queuing and dequeuing events.
2024-07-19 12:22:03 -07:00
Sam Lantinga
f95ecac300
Added SDL_ClaimEventMemory()
2024-07-19 12:22:03 -07:00
Sam Lantinga
2816745f48
Allow passing a pointer to SDL_FreeEventMemory()
...
Also clarify in the documentation that you should not call SDL_FreeEventMemory(NULL) from your main thread.
2024-07-19 12:22:03 -07:00
Frank Praznik
0d24b6e9f3
wayland: Use the compositor provided size during state transitions
...
Always use the size sent by the compositor when transitioning back to the floating state on the xdg-toplevel path, unless the client explicitly requested a new floating size while the window was in a fixed-size state.
If a window is requested to be maximized or made fullscreen while an uncommitted size request is pending, the surface will first be committed so that the compositor will set the new size when the window is restored.
Fixes the window being wrongly resized when leaving the maximized state in KDE.
2024-07-19 14:15:36 -04:00
Charlie Birks
25559faaea
emscripten: restore key event prevent default behaviour
...
This restores the behaviour before 9221548114 where we only preventDefault the event if:
- the key is recognised
- the event is enabled
- the event is not filtered
(ignoring the KEYPRESS special case, which is unchanged)
(cherry picked from commit 6e931bee01 )
2024-07-19 09:41:02 -07:00
Anonymous Maarten
a2a1d2de66
Add HAVE_UNSETENV to preprocessor guard
2024-07-19 10:21:34 +00:00
Anonymous Maarten
ccebbb6c6e
Fix UWP build in non-UNICODE mode
2024-07-19 10:21:34 +00:00
vanfanel
7d83e03ac2
Fix KMSDRM double buffering.
...
(cherry picked from commit 5ab1151508 )
2024-07-18 14:36:58 -07:00
Sam Lantinga
02a072a1b7
Added SDL_ClearSurface() and SDL_ReadSurfacePixelFloat()
2024-07-17 18:04:16 -07:00
Sam Lantinga
b07bd55baf
Fixed use of SDL_expand_byte after flipping from bit loss to bit count
2024-07-17 18:04:16 -07:00
Sam Lantinga
cd25cb3435
Check SDL_LockSurface() return value
2024-07-17 18:04:16 -07:00
Sam Lantinga
eefcb62588
SDL_MUSTLOCK() returns true once a surface has the RLE flag set
...
This more closely matches the mental model of people using SDL, and locking a surface that isn't RLE encoded doesn't cause any issues.
Fixes https://github.com/libsdl-org/SDL/issues/5594
2024-07-17 18:04:16 -07:00
Sam Lantinga
334962b056
Enhancements for SDL_PremultiplyAlpha()
...
The function can now convert between pixels of different formats, and takes a parameter to control whether the premultiplication is done in sRGB or linear space.
Also added SDL_PremultiplySurfaceAlpha(), which can premultiply the pixels of a surface in-place.
2024-07-17 18:04:16 -07:00
Frank Praznik
b99ea1ff75
wayland: Add SDL_VIDEO_DOUBLE_BUFFER support
...
Manual cherry-pick of 9e6b8d56e3
thanks @vanfanel
2024-07-17 18:27:46 -04:00
Amir
5db08b86ca
Fix warning for Android NDK compiler: "function declaration without a prototype is deprecated in all versions of C [-Wstrict-prototypes]"
...
https://stackoverflow.com/questions/42125/warning-error-function-declaration-isnt-a-prototype
In C int foo() and int foo(void) are different functions. int foo() accepts an arbitrary number of arguments, while int foo(void) accepts 0 arguments. In C++ they mean the same thing.
2024-07-17 14:09:11 -07:00
Sam Lantinga
94c40fb3c9
Fixed warning: no previous prototype for function 'SDL_InitFilesystem'
2024-07-17 11:00:25 -07:00
Sam Lantinga
761e86e25e
Initialize output parameters to reasonable defaults in case of error
2024-07-17 10:27:37 -07:00
Sam Lantinga
5f5e91eab6
Reverted 3d2e5a0b66
...
Applying these changes to external code doesn't actually improve anything, and within the context of the other Get* functions for renderers and surfaces, these stand out as outliers, so I'm going to back this change out.
2024-07-17 10:27:37 -07:00
Sam Lantinga
b3df46e4bc
Added missing SDL_sysfilesystem.h includes
2024-07-17 09:09:42 -07:00
Ozkan Sezer
2eda7b2c24
SDL_sysvideo.h: remove SDL_DisplayModeData typedef:
...
Fixes a type redefinition error:
In file included from /tmp/SDL3/test/../src/events/SDL_events_c.h:28,
from /tmp/SDL3/test/../src/events/SDL_pen.c:26,
from /tmp/SDL3/test/testautomation_pen.c:83:
/tmp/SDL3/test/../src/events/../video/SDL_sysvideo.h:34: error: redefinition of typedef 'SDL_DisplayModeData'
/tmp/SDL3/include/SDL3/SDL_video.h:78: note: previous declaration of 'SDL_DisplayModeData' was here
2024-07-17 12:30:32 +03:00
Sam Lantinga
3d2e5a0b66
Fixed a few remaining functions to directly return their values instead of an error code.
2024-07-16 21:32:17 -07:00
Sam Lantinga
98bea25363
Converted surfaces with alpha format default to SDL_BLENDMODE_BLEND
...
Fixes https://github.com/libsdl-org/SDL/pull/4690
2024-07-16 18:50:22 -07:00
Sam Lantinga
7c0307060d
Textures with alpha format default to SDL_BLENDMODE_BLEND
...
Fixes https://github.com/libsdl-org/SDL/issues/9941
2024-07-16 18:50:22 -07:00
Sam Lantinga
2db57e2678
Removed SlowBlitPixelAccess_Unknown
...
This wasn't actually set anywhere, and not needed.
2024-07-16 18:43:14 -07:00