Sam Lantinga
3875ef4552
Removed duplicated line (thanks @sechshelme!)
...
Fixes https://github.com/libsdl-org/SDL/issues/9264
2024-03-13 13:47:32 -07:00
Sam Lantinga
41b7036f37
testffmpeg: added support for EGL OES frame formats
2024-03-12 16:13:04 -07:00
Sam Lantinga
d79f865251
Removed incorrect mapping for a HORI controller
...
This broke support for the Hori Fighting Stick EX2, which gets a good mapping if the automatic mapping is allowed to create one.
If the original controller needs a mapping, it should be added with a crc, since that VID/PID combination is used by several HORI controllers.
2024-03-11 17:11:20 -07:00
Sam Lantinga
d78a24a5ce
testffmpeg: added verbose logging of ffmpeg messages
2024-03-11 15:48:52 -07:00
Sam Lantinga
7c5f79e7ea
testffmpeg: removed redundant enumeration of hardware device types
2024-03-11 15:31:47 -07:00
Sam Lantinga
d4794cc714
Fix crash in SDL_UpdateFullscreenMode calling SetWindowFullscreen with a null display
...
- This mirrors the check above for fullscreen=true in the unlikely case where there is no primary display detected
2024-03-11 11:17:45 -07:00
Sam Lantinga
ab5351f5d6
Fixed leaving the cursor clip set when changing window focus
...
While the focus change happens, Windows appears to reset the cursor clip rectangle, and then restore it if the application that has focus has the clip rectangle set.
This fixes resetting the clip rectangle while changing focus between windows in the same application, e.g. the Source 2 editor.
2024-03-11 10:58:40 -07:00
Sam Lantinga
b322d27f62
Missed SDL_NumJoystickBalls() rename in SDL_migration.cocci
2024-03-10 21:31:19 -07:00
Sam Lantinga
efbbafb3f1
Re-added balls to the SDL joystick API
...
It turns out these were being used on Linux and at least one virtual driver was making use of them (thanks @mrfixit2001!)
2024-03-10 21:30:14 -07:00
Sam Lantinga
53e86be22f
Minor cleanup with the new PS3 driver for windows
2024-03-10 20:12:11 -07:00
Sam Lantinga
fde420a645
Revert "Added SDL_FLIP_DIAGONAL"
...
This reverts commit b9ab326982 .
@rainerdeyke pointed out:
"This commit is incorrect. Flipping both horizontally and vertically is not equivalent to flipping diagonally."
2024-03-10 15:20:36 -07:00
Sam Lantinga
e3cf2e4794
Turn HIDAPI joystick support off by default on mobile platforms
...
On Android, HIDAPI prompts for permissions and acquires exclusive access to the device, and on Apple mobile platforms it doesn't do anything except for handling Bluetooth Steam Controllers.
Fixes https://github.com/libsdl-org/SDL/issues/9241
2024-03-10 15:00:49 -07:00
Sam Lantinga
ed463b41e1
Unified the software renderer creation path
...
Previously there were two different paths for renderer creation, and the HDR metadata initialization was missing when creating a software renderer for a surface. Now all the cases are handled in a single path, so regardless of whether you create a software renderer by name, a software renderer for a surface, or fall back to a software renderer, you'll get the correct initialization in all cases.
Fixes https://github.com/libsdl-org/SDL/issues/9221
2024-03-10 11:05:26 -07:00
Sam Lantinga
37d066b99b
Clarify what pitch means (thanks @zlago!)
2024-03-10 09:02:59 -07:00
Sam Lantinga
fcb132b8e8
Allow building testffmpeg without Vulkan support
2024-03-08 16:45:27 -08:00
Sam Lantinga
16e0806ced
Note that the cursor clip has been cleared even if we didn't do it
...
This releases the mouse cursor when bringing up the console on Counter Strike in dev mode.
2024-03-08 15:56:49 -08:00
Sam Lantinga
cde793b0f5
Added support for the 6-button SEGA Mega Drive Control Pad for Nintendo Online
...
Closes https://github.com/libsdl-org/SDL/pull/9225
2024-03-08 12:33:54 -08:00
Sam Lantinga
790cd395f5
Make sure the type in the SDL_Event aligns properly across the union
2024-03-07 06:58:43 -08:00
Sam Lantinga
e9ab2d46de
Revert "Change SDL_Keycode type to an enum"
...
SDL_Keycode can actually be any printable character on the keyboard, so isn't limited to the enumerated values of SDL_KeyCode.
2024-03-07 06:58:43 -08:00
Sam Lantinga
33eaddc565
Cleaned up various type conversion issues
...
This makes sure SDL_PixelFormatEnum flows through the internal code correctly, as well as fixing a number of other minor issues.
2024-03-07 06:58:43 -08:00
Sam Lantinga
f53bdc9531
The pixel format in SDL_DisplayMode uses SDL_PixelFormatEnum
2024-03-07 03:39:06 -08:00
Sam Lantinga
57a160c9ab
Fixed mapping for the Sanwa Supply JY-P76USV controller
2024-03-06 20:53:48 -08:00
Sam Lantinga
5643fd683f
Added migration notes for enum type changes
2024-03-06 16:59:28 -08:00
Sam Lantinga
c70710cde8
SDL_GetPixelFormatEnumForMasks() returns SDL_PixelFormatEnum
2024-03-06 16:19:08 -08:00
Sam Lantinga
38c54b8e0e
More null checks for SDL window operations
2024-03-06 13:33:30 -08:00
Sam Lantinga
6664a089d8
Add missing null check for displaydata during window creation
...
Found in the wild from minidump reports. Unclear displaydata is null, but according
to the API it is possible for this call to return null so it seems like a valid check.
2024-03-06 13:33:27 -08:00
Sam Lantinga
610e798406
Fix clicking on the titlebar causing mouse input to freeze until esc is pressed
...
When the titlebar drage region is clicked two actions are triggered:
* The WM transfers focus to the application
* The application starts a drag operation because the drag region was clicked
When the drag operation starts before input has been transferred to the application the
window manager gets in a bad state where mouse clicks don't work and the system isn't
actually dragging.
In this CL we delay drag operations until after the application has acquired active focus.
This fixes the problems outlined above.
2024-03-06 13:33:23 -08:00
Sam Lantinga
65a718f8c6
Disable warning C4113 in SDL_windows_gaming_input.c
...
- A new version of warning C4028 added in VS 2022.
2024-03-06 13:33:20 -08:00
Sam Lantinga
26b9178e5c
Fixed whitespace
2024-03-06 09:57:39 -08:00
Sam Lantinga
c07b39fa06
Fixed build
2024-03-06 09:57:39 -08:00
Sam Lantinga
860155680d
SDL_RegisterEvents() now returns 0 if it couldn't allocate any user events.
2024-03-06 09:51:15 -08:00
Sam Lantinga
ee87132385
Make sure fast path RGB <-> YUV conversions are using the same color primaries
2024-03-05 17:43:08 -08:00
Sam Lantinga
4545c77c9e
Updated Vita renderer with colorspace clarification
2024-03-05 16:56:58 -08:00
Sam Lantinga
95fbbc6f07
Fixed accidental use of tabs
2024-03-05 16:55:26 -08:00
Sam Lantinga
db24560387
Additional colorspace clarification
...
Note that SDL_MATRIX_COEFFICIENTS_BT470BG is functionally equivalent to SDL_MATRIX_COEFFICIENTS_BT601
2024-03-05 16:47:36 -08:00
Sam Lantinga
b3858ec5f7
BT2020_CL is very different from BT2020_NCL, and not currently supported
2024-03-05 15:49:17 -08:00
Sam Lantinga
ae0caeef8d
Fixed build
2024-03-05 13:54:17 -08:00
Sam Lantinga
9db68f97f9
Reverted SDL_Vulkan_GetInstanceExtensions() API change
...
This function is commonly used with Vulkan structures that use uint32_t, so we should keep the Uint32 signature.
2024-03-05 13:39:42 -08:00
Sam Lantinga
edbcef11ff
Keep track of whether the Android on-screen keyboard was opened by the application
...
Fixes https://github.com/libsdl-org/SDL/issues/9202
2024-03-05 13:35:17 -08:00
Sam Lantinga
c36f773eb4
Fixed "${folder^}Activity: bad substitution" with bash 3.2 on macOS
2024-03-05 13:35:17 -08:00
Sam Lantinga
1e0bac288b
Use the hlsli extension for shader includes
2024-03-05 12:46:44 -08:00
Sam Lantinga
d4f4aa745a
Use C++ style comments in new code
2024-03-05 04:46:37 -08:00
Sam Lantinga
fb87f8f15c
testffmpeg: fixed mismatch between frame size and frame texture size
...
The AVHWFramesContext associated with the frame has the texture size, and the frame width and height are the displayed size and can be smaller than the texture size
2024-03-04 11:17:42 -08:00
Sam Lantinga
180dd0bb39
testffmpeg: don't free the instance extensions, we hold onto them in the context
2024-03-04 11:17:42 -08:00
Sam Lantinga
2d4105ba8b
testffmpeg: only enable AV_PIX_FMT_VULKAN if we have a Vulkan renderer
2024-03-04 11:17:42 -08:00
Sam Lantinga
759ade8c90
vulkan: enable samplerYcbcrConversion when creating the device
2024-03-04 11:17:42 -08:00
Sam Lantinga
97f97109d1
testffmpeg: fixed Vulkan validation errors
...
The semaphores need to be submitted in order
2024-03-04 09:29:36 -08:00
Sam Lantinga
dbec2150d0
testffmpeg: added support for Vulkan rendering
2024-03-04 09:29:36 -08:00
Sam Lantinga
48471f7dbd
Added SDL_AddVulkanRenderSemaphores() for external synchronization with SDL rendering
2024-03-04 09:29:36 -08:00
Sam Lantinga
504d8c2fc0
Fixed potential memory leak if vkCreateInstance() fails
2024-03-04 09:29:36 -08:00
Sam Lantinga
4189edaeb7
Uppercase the first letter of the class name to match Java conventions
...
Fixes https://github.com/libsdl-org/SDL/issues/8930
2024-03-03 16:57:02 -08:00
Sam Lantinga
9be35d4603
Convert mappings using labeled buttons to positional buttons
...
We were accidentally skipping all of the mappings that used the SDL_GAMECONTROLLER_USE_BUTTON_LABELS hint, because they used the '!' negate operator with a default hint value of 1. Instead we just want to use that hint to determine whether the mapping has positional buttons or not, and swap the buttons as needed.
Fixes https://github.com/libsdl-org/SDL/issues/9190
2024-03-03 14:17:03 -08:00
Sam Lantinga
ccd309c433
Added a mapping for the Sanwa Supply JY-P76USV controller
...
Fixes https://github.com/libsdl-org/SDL/issues/8644
2024-03-03 12:23:00 -08:00
Sam Lantinga
8d8076263e
Removed the mapping for the G-Shark GS-GP702
...
This uses the same chipset as the DragonRise Inc. Generic USB Joystick, which many manufacturers use for different products with different mappings.
In order to add a mapping for a controller using this chipset, we need a unique crc for the device name.
2024-03-03 12:18:57 -08:00
Sam Lantinga
1b86a1c684
SDL_GetGamepadAppleSFSymbolsNameForAxis() returns NULL if the symbol isn't found
2024-03-03 11:55:40 -08:00
Sam Lantinga
5f37242607
Don't clear the clipboard on quit
...
Fixes https://github.com/libsdl-org/SDL/issues/8830
2024-03-03 11:48:08 -08:00
Sam Lantinga
6e03914375
Fixed signed/unsigned comparison warning
2024-03-03 11:36:23 -08:00
Sam Lantinga
2c85052966
Removed unused headers from SDL_rect.h
...
Fixes https://github.com/libsdl-org/SDL/issues/8966
2024-03-03 11:33:59 -08:00
Sam Lantinga
e54001b028
Updating the mouse capture should use the mouse focus window
...
Fixes https://github.com/libsdl-org/SDL/issues/8974
2024-03-03 11:32:17 -08:00
Sam Lantinga
c1da39a245
SDL_GetGamepadAppleSFSymbolsNameForButton() returns NULL if the symbol isn't found
...
Fixes https://github.com/libsdl-org/SDL/issues/9071
2024-03-03 11:07:39 -08:00
Sam Lantinga
74f4614289
Save the native texture parent and return that in SDL_GetRenderTarget()
...
Fixes https://github.com/libsdl-org/SDL/issues/9176
2024-03-03 09:47:40 -08:00
Sam Lantinga
eb5a2e7e7f
Fixed building with SDL_LEAN_AND_MEAN
...
Fixes https://github.com/libsdl-org/SDL/issues/9173
2024-03-03 09:25:02 -08:00
Sam Lantinga
107e06a92a
Use a valid finger ID when generating touch events from mouse events
...
Fixes https://github.com/libsdl-org/SDL/issues/9185
2024-03-03 09:15:07 -08:00
Sam Lantinga
88dcf74588
testyuv: we no longer need to override the HDR headroom for the BT.2020 test
2024-03-02 15:06:28 -08:00
Sam Lantinga
7f9ff6277c
Don't assume HDR headroom for HDR10 surfaces
...
Applications that support HDR will set the correct values for their content.
2024-03-02 15:02:17 -08:00
Sam Lantinga
8d023f9869
Updated documentation for new property parameters
2024-03-02 09:56:29 -08:00
Sam Lantinga
2bc2840de5
vulkan: VK_FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16 is a 2-plane format
2024-03-01 20:26:52 -08:00
Sam Lantinga
2bedd7f02e
Fixed pitch alignment when updating SDL_PIXELFORMAT_P010 textures
2024-03-01 20:26:52 -08:00
Sam Lantinga
f2cd361e25
testyuv: added validation of P010 YUV format
...
Also added conversion between RGB and P010, using XRGB2101010 as a bridging format in PQ space
2024-03-01 20:26:52 -08:00
Sam Lantinga
47be24d225
testyuv: added --monochrome and --luminance options for interactive mode
2024-03-01 07:42:34 -08:00
Sam Lantinga
991ad27de8
testyuv: added GetColorspaceForYUVConversionMode()
2024-03-01 07:42:34 -08:00
Sam Lantinga
af58ed978e
Fixed the documentation for SDL_GetGamepadMappings()
2024-03-01 01:55:56 -08:00
Sam Lantinga
0454e1fdb4
Vulkan: added support for wrapping existing textures
2024-02-29 17:38:10 -08:00
Sam Lantinga
2adbcce864
Vulkan: wait for all queues to be idle before destroying the device
2024-02-29 14:12:09 -08:00
Sam Lantinga
0c6a1b636e
Vulkan: added handling for SDL_MATRIX_COEFFICIENTS_UNSPECIFIED
2024-02-28 19:18:37 -08:00
Sam Lantinga
4017e1370d
Vulkan: cleaned up error handling
2024-02-28 19:11:33 -08:00
Sam Lantinga
59bbfc1fdd
Vulkan: only advertise YUV formats if the VK_KHR_sampler_ycbcr_conversion extension is available
...
Also check to see if it's available when given an external Vulkan device
2024-02-28 19:04:00 -08:00
Sam Lantinga
bf853823a2
Removed unused YCbCr_matrix from Vulkan shaders
2024-02-28 18:38:06 -08:00
Sam Lantinga
039144350c
Be more precise about what we're testing in testyuv
2024-02-28 17:15:47 -08:00
Sam Lantinga
b30ba1c5d4
Updated RGBtoYUV() to use the full YCbCr conversion formula
2024-02-28 16:58:39 -08:00
Sam Lantinga
4513c32bb3
The ycbcrModel should be based on the transfer matrix, not the color primaries
2024-02-28 16:58:39 -08:00
Sam Lantinga
a241cca9e6
Fixed warning C4090: 'function': different 'const' qualifiers
2024-02-28 11:45:24 -08:00
Sam Lantinga
7117d545a3
Fixed crash if the controller product name is NULL
...
This happens when the Razer Synapse software emulates a controller with a keyboard
2024-02-28 11:43:22 -08:00
Sam Lantinga
353e76b40b
Use the correct colorspace for yuv conversion tests
2024-02-28 10:03:18 -08:00
Sam Lantinga
fc94c3634e
Fixed signed/unsigned comparison warning
2024-02-28 09:06:21 -08:00
Sam Lantinga
ba34025423
Use direct3d11 as the default renderer on Windows
...
The D3D12 renderer initializes but has poor performance or graphical issues on older Intel hardware.
Fixes https://github.com/libsdl-org/SDL/issues/7634
Fixes https://github.com/libsdl-org/SDL/issues/9093
2024-02-28 09:00:36 -08:00
Sam Lantinga
fb3bf1dcbd
Fixed device queue initialization when render and present queue families are different
2024-02-28 08:55:56 -08:00
Sam Lantinga
e142bb1b0c
The extension strings are const and don't need to be duplicated
2024-02-28 07:12:15 -08:00
Sam Lantinga
0997bdd292
Fixed SDL_calloc() calls (should be count, size)
2024-02-28 07:12:15 -08:00
Sam Lantinga
614630df69
Allow using an external Vulkan device with the vulkan renderer
2024-02-28 07:12:15 -08:00
Sam Lantinga
220340e944
Remove SDL_PIXELFORMAT_P010
...
It's not supported by any renderer or pixel conversion path
2024-02-27 12:48:33 -08:00
Sam Lantinga
24e021c67e
testffmpeg: refactored texture creation properties into a single function
2024-02-26 16:01:23 -08:00
Sam Lantinga
ff18d7cfa0
testffmpeg: added pixel format mapping for NV12 and NV21
2024-02-26 15:52:21 -08:00
Sam Lantinga
81608ad077
Vulkan: fixed creating SDL_PIXELFORMAT_P010 textures
2024-02-26 15:51:13 -08:00
Sam Lantinga
f99143f437
Don't quit testffmpeg when alt-tabbing away
2024-02-26 15:21:26 -08:00
Sam Lantinga
80d2ef7384
Fixed uploading Vulkan texture with w*bpp != pitch
2024-02-26 15:18:23 -08:00
Sam Lantinga
3a796c9722
Allow specifying the render driver in the environment for testffmpeg
2024-02-26 15:13:10 -08:00
Sam Lantinga
dc9a3c83e2
Use the mastering display metadata to do proper tone mapping for HDR content
2024-02-26 14:20:34 -08:00
Sam Lantinga
98b1a59a95
Document the HDR tone mapping algorithm
2024-02-26 14:20:34 -08:00
Sam Lantinga
e223e1d498
Added SDL_camera.h to the public Framework headers
2024-02-25 15:54:34 -08:00