Sam Lantinga
80ae3a7516
Fixed crash when restoring the desktop mode on macOS
...
Fixes https://github.com/libsdl-org/SDL/issues/12460
2025-03-04 14:31:51 -08:00
Frank Praznik
9f9a442823
video: Synthesize fullscreen related moves if the driver does not.
2025-03-04 12:41:06 -05:00
Frank Praznik
e7abbf158a
x11: Synthesize fullscreen size events on Openbox
...
Openbox doesn't send size events when entering fullscreen, so they must be synthesized. This is not desirable on any other window manager, as it can break fullscreen positioning on multi-monitor configurations.
2025-03-04 12:41:06 -05:00
Volian0
debbe1cf75
Fix for Message Box failing to init on X11 ( #12455 )
...
Fixed X11 message boxes failing to initialize, because the proper X Logical Font Description could not be found
2025-03-04 08:29:08 -08:00
Sam Lantinga
7c29c8b266
Added fullscreen_active to better track fullscreen state
...
This is true if fullscreen is pending or currently active. This is a better check in SDL_SetDesktopDisplayMode() because a fullscreen mode may be pending and complete asynchronously and the window hasn't been set to fullscreen yet.
2025-03-03 21:18:42 -08:00
Frank Praznik
3b9f0dff10
Use _this pointer to reference the video device
2025-03-03 18:39:44 -05:00
Frank Praznik
0ccf272eea
Check the display device before dereferencing
...
It can be null if the desktop mode is set early during initial display enumeration.
2025-03-03 11:24:25 -05:00
Frank Praznik
6c347cbf33
video: Handle Cocoa desktop mode switch inhibition in the video layer
...
The X backend had the same issue, so both Cocoa and X can be handled in the same location.
2025-03-03 10:50:20 -05:00
Sam Lantinga
24ec2ed785
Don't save temporary mode changes to the desktop mode
...
Fixes https://github.com/libsdl-org/SDL/issues/12441
2025-03-03 07:40:55 -08:00
expikr
428f0dcd61
add SDL_SetRelativeMouseTransform
2025-03-02 07:53:09 -08:00
Frank Praznik
b69201daeb
cocoa: Don't overwrite the desktop mode when changing the fullscreen mode
...
Changing the mode triggers a display reconfiguration event, which will overwrite the desktop mode with the set fullscreen mode, preventing proper restoration when leaving fullscreen. Don't overwrite the desktop mode if the reconfiguration is due to a fullscreen mode switch.
2025-03-01 22:55:38 -05:00
Frank Praznik
078d737a27
cocoa: Run pending events to completion
...
Fullscreen spaces and miniaturization will always give us some notification that they succeeded or failed, so the timeout isn't required. This prevents errant timeouts when live-resize is active.
2025-03-01 19:33:38 -08:00
Sam Lantinga
f0cb78e082
Handle XCreateIC() failing when composition UI is enabled
...
Fixes https://github.com/libsdl-org/sdl2-compat/issues/328
2025-03-01 13:54:07 -08:00
Sam Lantinga
55484ef023
Moved WIN_UpdateMouseCapture() to be with the other mouse functions
2025-03-01 12:54:17 -08:00
Sam Lantinga
020664bd10
Update mouse button state when re-entering a window
...
Fixes https://github.com/libsdl-org/SDL/issues/12423
2025-03-01 12:54:17 -08:00
Sam Lantinga
ef23ebfb5a
Fixed the cursor clip rect when toggling window borders on macOS
2025-02-28 11:57:34 -08:00
Sam Lantinga
281f0fae1c
Include the VID/PID of generic keyboard/mouse devices on Windows
2025-02-27 14:03:39 -08:00
Frank Praznik
7b9036bea6
wayland: Don't overwrite clipboard data with the primary selection text
...
Primary selection text is handled separately, and shouldn't clobber the clipboard data.
2025-02-27 12:35:37 -05:00
Sam Lantinga
1ea99bc904
Early out if setting a duplicate window title
...
Setting the window title is an expensive windowing operation, so short circuit it if possible.
2025-02-26 17:10:41 -08:00
Frank Praznik
fab52b578f
wayland: Ensure that color descriptions are always retrieved
2025-02-26 15:15:44 -05:00
Sam Lantinga
e6a24fcbb5
fix stbi__parse_png_file() reading too much bytes (thanks @miniupnp!)
...
just "rewind" the bytes that have been read past the IEND chunk.
2025-02-24 17:29:25 -08:00
Sam Lantinga
db4e6c1931
Cocoa metal layers need their size updated before renderer updates
...
Also refactored event watch code so it can be shared between internal window event dispatch and public event watchers.
Fixes https://github.com/libsdl-org/SDL/issues/12376
2025-02-24 15:37:13 -08:00
Frank Praznik
52af81ea17
wayland: Fix mapping borderless windows under libdecor
...
Additionally, add a warning about calling the frame visibility function universally during the mapping process, as the libdecor Cairo plugin has a bug that will cause a crash in this scenario.
2025-02-23 11:04:29 -05:00
Frank Praznik
1a0a94b501
x11: Accommodate the borders when setting the initial window position
2025-02-23 10:49:40 -05:00
Sam Lantinga
52e64f816c
Use SDL C runtime functions in OpenVR driver
...
Fixes link errors when building with -DSDL_LIBC=OFF
2025-02-22 12:41:03 -08:00
Sam Lantinga
7224b40407
Fix errors when building stb_image with -DSDL_LIBC=OFF
...
I integrated changes from SDL_image and updated as needed for JPEG memory loading functionality.
Fixes https://github.com/libsdl-org/SDL/issues/12364
2025-02-22 12:41:03 -08:00
Sam Lantinga
fdf72d1e45
Use the keyboard/mouse vendor if available
...
Fixes the 8BitDo Micro gamepad so it shows up as "8BitDo HID-compliant mouse" and "8BitDo HID Keyboard Device" in keyboard mode over USB.
2025-02-22 09:19:59 -08:00
Sam Lantinga
fcd41c1d2c
Check desired window area when checking zoom state
...
isZoomed returns true if the window has the size and position that it would if it were maximized, so we need to check to see if our floating state matches that before saying we're zoomed.
This fixes calling zoom:nil on a borderless resizable window that was created with the same size as the usable desktop area, which happens to also be the maximized state.
Fixes https://github.com/libsdl-org/SDL/issues/12228
2025-02-21 18:38:12 -08:00
Petar Popovic
b5297de56f
Add 'const' to pointer parameters
2025-02-21 15:59:40 -08:00
Sam Lantinga
911e53dece
Retain mouse focus as long as we're getting mouse events
...
Fixes https://github.com/libsdl-org/SDL/issues/12218
Fixes https://github.com/libsdl-org/SDL/issues/12323
2025-02-21 15:35:28 -08:00
Sam Lantinga
3b8cb62283
Make it easier to enable IME debug logs
2025-02-21 15:24:45 -08:00
williamhCode
9a607e886e
make start&length represent utf32 indices
2025-02-21 12:54:56 -08:00
Petar Popovic
c70f54e28b
Remove redundant casts
2025-02-21 10:09:10 -08:00
Sam Lantinga
5d776c070a
Refactored SDL_CreateJoystickName() into a general SDL_CreateDeviceName()
2025-02-21 09:10:54 -08:00
expikr
3293eb1a16
use hidapi to get mouse/keyboard string
2025-02-21 07:42:20 -08:00
Sam Lantinga
9267930fea
Added a fast path for converting the same format and pitch
2025-02-20 12:16:26 -08:00
Sam Lantinga
2e89c53ebc
Added support for decoding MJPG into NV12 textures
2025-02-20 12:16:26 -08:00
Sam Lantinga
a792434a37
Added initial MJPG support using stb_image
2025-02-20 12:16:26 -08:00
Frank Praznik
b48de48efb
wayland: Add support for high-DPI icons
2025-02-20 13:57:37 -05:00
Frank Praznik
6e0264d38e
x11: Use the current or last-requested window position when setting the size hint
...
The move operation is just a no-op to try and force the hint to take effect, so it should use the current window coordinates.
2025-02-20 13:25:47 -05:00
Frank Praznik
9e4c657ed8
wayland: Fix color manager protocol string check
2025-02-19 11:43:53 -05:00
Frank Praznik
a7f01cd73c
x11: Set the pending window position immediately after mapping
...
Waiting until the first configure event to perform the move can result in the window visibly jumping in position.
2025-02-18 11:27:03 -05:00
ImThour
31f9cb4806
Unchecked Return Value in WIN_SuspendScreenSaver ( #12316 )
2025-02-17 15:36:56 -08:00
ImThour
057c3602e9
Removing Double-free Issue
2025-02-17 15:34:18 -08:00
ImThour
5c79f4cae1
Incorrect bfOffBits Calculation in WIN_ConvertDIBtoBMP
2025-02-17 13:59:03 -08:00
Frank Praznik
3b4cfc11f0
wayland: Update copyright dates in added color manager source files
2025-02-17 11:36:00 -05:00
Frank Praznik
fadb261b66
wayland: Add color manager protocol support
...
Support the official wp_color_manager_v1 protocol.
2025-02-17 11:31:12 -05:00
ImThour
a513168902
Fixed Memory/Resource Leaks ( #12304 )
2025-02-17 07:30:30 -08:00
captain0xff
7ea0ffb748
update
2025-02-16 13:44:00 -08:00
captain0xff
06eb10c518
haiku: check if the returned _SDL_GLView is null or not
2025-02-16 13:44:00 -08:00