Commit Graph

22286 Commits

Author SHA1 Message Date
meta-legend
e90bdfb5ea Avoid unnescessarily updating fullscreen display modes 2026-07-07 21:36:28 -07:00
ExtremelyLazyCat
5403934fd3 Add Mayflash N64 Controller Adapter mapping 2026-07-07 14:04:56 -07:00
Frank Praznik
a3a8141557 wayland: Simplify key repeat handling
Remove redundant state variables, remove trivial helper functions, and guard against the unlikely case where a compositor may set the repeat rate to zero while a repeat is active, which would result in a divide-by-zero error.

Key repeat is increasingly handled server-side with seat v10 and above, so consider that the most common path for the future.
2026-07-07 15:02:16 -04:00
Sam Lantinga
cf6a235a41 Only skip the Flydigi driver when checking to see if a device is handled by HIDAPI 2026-07-07 09:30:20 -07:00
Isabella Basso
1f3f714393 cocoa: restore discrete mouse wheel ticks 2026-07-07 10:44:51 -04:00
Gabriel Wang
7afd6c3497 Add sve2 acceleration for blit2to2 key (#15953) 2026-07-07 07:36:07 -07:00
Sam Lantinga
c0efc5862c Use the correct protocol for the PDP Afterglow Wave controller
Third party wireless controllers use the full Switch Pro protocol over Bluetooth and third party wired controllers use the input-only protocol.

The PDP Afterglow Wave Controller for Switch uses the same VID/PID for both wired and wireless variants, so we need to look at the connection type to determine what protocol to use.
2026-07-06 18:47:46 -07:00
Sam Lantinga
03f81ab4aa Fixed the 8BitDo Pro 3 controller showing up twice on macOS
Fixes https://github.com/libsdl-org/SDL/issues/15890
2026-07-06 17:03:23 -07:00
Sam Lantinga
ce417a40cf Start text input before showing the on-screen keyboard (thanks @sharkwouter!)
Fixes the on screen keyboard not sending an event the first time on PSP

Closes https://github.com/libsdl-org/SDL/pull/15950
2026-07-06 16:44:59 -07:00
Sam Lantinga
bd55a6d67d Fixed pressing back paddles and D-pad simultaneously on the GameSir-G7 Pro 8K controller 2026-07-06 16:35:24 -07:00
SDL Wiki Bot
eb88a154fa Sync SDL3 wiki -> header
[ci skip]
2026-07-06 20:30:33 +00:00
Sam Lantinga
d8d5b7c6c5 Added a slider to manually adjust HDR headroom on visionOS
Ideally the OS would provide a way to query the current headroom, but for now users can manually adjust it.
2026-07-06 13:25:12 -07:00
palxex
ac6e7c795e dos: Drain BIOS keyboard buffer in event pump to prevent overflow beeps 2026-07-06 13:32:30 -04:00
brentfpage
46dcc0c554 for 'pinch end' events on mobile devices, send dummy value -1 for (focus|span)_(x|y) 2026-07-06 05:52:47 -07:00
8BitDo
efa0e2d5ed support 8bitdo ultimate 3 (#15927) 2026-07-06 05:50:38 -07:00
Jacul
e1b3c8afd5 metal: check MTLBuffer allocations for nil before using their contents. 2026-07-05 23:53:21 -04:00
Ozkan Sezer
435539e66c ci: bump freebsd 2026-07-05 23:33:00 +03:00
Dimitriy Ryazantcev
362165ed9b Win32: Swap maskColor assignment based on alpha value
Looks like mask pixels was inverted.
2026-07-05 12:37:25 -07:00
Wouter Wijsman
8e3b6243fd PSP: Remove log statement 2026-07-05 11:34:49 -07:00
Wouter Wijsman
244af6edbb PSP: Remove double iconv close in PSP_ShowScreenKeyboard 2026-07-05 11:34:49 -07:00
Wouter Wijsman
4cc9a4bdfe PSP: Clean up PSP_ShowScreenKeyboard 2026-07-05 11:34:49 -07:00
Wouter Wijsman
db39db3e47 PSP: Run clang-format on PSP_ShowScreenKeyboard function 2026-07-05 11:34:49 -07:00
Wouter Wijsman
2f153f801a PSP: Fix compiler warnings in PSP_ShowScreenKeyboard 2026-07-05 11:34:49 -07:00
Wouter Wijsman
2f066afcb0 PSP: Improve safety in PSP_ShowScreenKeyboard 2026-07-05 11:34:49 -07:00
Wouter Wijsman
f978f27db4 PSP: Allow non-ascii characters and more characters from osk 2026-07-05 11:34:49 -07:00
Frank Praznik
e0b323890b wayland: Rework aspect ratio correction
Try harder to keep a valid aspect ratio, considering the window size limits, and in cases where the window size limits prevent achieving the desired aspect ratio, the window size limits should win overall.
2026-07-05 12:15:52 -04:00
Tim Stahlhut
655c8166a1 Use SDL_PROCESS_WINDOWS instead of SDL_PLATFORM_WINDOWS
in SDL_process.c

[sdl-ci-filter cygwin]
[sdl-ci-filter msys2-*]
[sdl-ci-filter msvc-*]
2026-07-04 11:19:20 -07:00
Can H. Tartanoglu
bb6f24e542 testprocess: handle async exec failure for missing executables 2026-07-04 11:16:57 -07:00
Zana Domán
095e899973 gpu: validate transfer buffer usage (#15923) 2026-07-03 17:11:35 -07:00
Anthony
31c6a35f10 Update SDL_androiddialog.c 2026-07-03 16:18:28 -07:00
Ozkan Sezer
a6d7872d2f SDL_notification.h: fix for C89 mode. 2026-07-04 00:47:56 +03:00
Ozkan Sezer
aad60dec77 SDL_intrin.h: fix error from old gcc. 2026-07-04 00:47:55 +03:00
Sam Lantinga
31caedaf47 video: Fix -Wcomma warnings in miniz
e.g.
SDL3/src/video/miniz.h:1058:19: warning: possible misuse of comma operator here [-Wcomma]
 1058 |       s1 += ptr[0], s2 += s1; s1 += ptr[1], s2 += s1; s1 += ptr[2], s2 += s1; s1 += ptr[3], s2 += s1;
2026-07-03 13:34:41 -07:00
Sam Lantinga
7523eb22a0 cocoa: Fix -Wimplicit-retain-self warning in SDL_cocoawindow
SDL3/src/video/cocoa/SDL_cocoawindow.m:1149:38: error: block implicitly retains 'self'; explicitly mention 'self' to indicate this is intended behavior [-Werror,-Wimplicit-retain-self]
 1149 |         SDL_OnWindowLiveResizeUpdate(_data.window);
2026-07-03 13:34:39 -07:00
Sam Lantinga
b9d5252dfa hidapi: Ignore enum-enum-conversion warnings in libusb hid.c which requires mixing enum bitmasks
SDL3/src/hidapi/libusb/hid.c:711:62: error: bitwise operation between different enumeration types ('enum libusb_endpoint_direction' and 'enum libusb_request_recipient') [-Werror,-Wenum-enum-conversion]
  711 |         int res = libusb_control_transfer(handle, LIBUSB_ENDPOINT_IN|LIBUSB_RECIPIENT_INTERFACE, LIBUSB_REQUEST_GET_DESCRIPTOR, (LIBUSB_DT_REPORT << 8), (uint16_t)interface_num, tmp, expected_report_descriptor_size, 5000);
2026-07-03 13:34:36 -07:00
Sam Lantinga
7346311377 cocoa: Fix invalid NSMenuItem selector in SDL_tray
SDL3/src/tray/cocoa/SDL_tray.m:511:98: error: undeclared selector 'menu:' [-Werror,-Wundeclared-selector]
  511 |         nsitem = [[NSMenuItem alloc] initWithTitle:[NSString stringWithUTF8String:label] action:_selector(menu:) keyEquivalent:_""];
2026-07-03 13:34:34 -07:00
Sam Lantinga
5d693d72f8 Fix -Wstrict-prototypes warnings
e.g.
SDL3/src/hidapi/libusb/hid.c:636:31: error: a function declaration without a prototype is deprecated in all versions of C [-Werror,-Wstrict-prototypes]
  636 | static void start_event_thread()
2026-07-03 13:34:30 -07:00
Sam Lantinga
efce7ca4b1 Added HDR support on visionOS 2026-07-03 13:33:27 -07:00
Sam Lantinga
9123f69cdd Added testcolorspace to the Apple test Xcode project 2026-07-03 13:33:27 -07:00
Tim Stahlhut
ad86dc9811 Cygwin: testautomation run-time fix
[sdl-ci-filter cygwin]
[sdl-ci-filter msys2-*]
2026-07-03 09:23:33 -07:00
Anthony
7418e1aef1 Update proguard-rules.pro 2026-07-03 09:22:45 -07:00
Sam Lantinga
1be08afec5 Added support for several Turtle Beach Nintendo Switch 2 controllers
* Turtle Beach Afterglow Wired Controller for Nintendo Switch 2
* Turtle Beach Afterglow Wave Wired Controller for Nintendo Switch 2
* Turtle Beach Afterglow Wireless RGB Gaming Controller for Nintendo Switch 2
* Turtle Beach Rematch Wired Controller for Nintendo Switch 2
* Turtle Beach Rematch Wireless RGB Gaming Controller for Nintendo Switch 2
2026-07-03 09:17:34 -07:00
Sam Lantinga
7dd7c7607f Removed unused code in UIKit_AddDisplay() 2026-07-02 14:05:06 -07:00
Holden Ramsey
2919e1899f Android: decouple JNI setup from unused subsystems
Query the natively compiled-in subsystems at runtime so the Java side
only registers and initializes the managers that exist, fixing
UnsatisfiedLinkError when SDL is built with a subsystem disabled
(e.g. -DSDL_AUDIO_DISABLED).

- Add SDL.setupJNI(int subsystems) plus SDL_INIT_* Java constants;
  SDLActivity passes an overridable getInitSubsystems() mask so custom
  activities can skip Java-side setup for unused subsystems.
- Distinguish compiled from requested subsystems: JNI registration
  follows nativeGetCompiledSubsystems(), while manager initialization
  and surface/layout creation follow the requested-and-compiled mask.
- Gate HIDDeviceManager.acquire() (USB/BLE device scanning) on a new
  nativeIsHIDAPIEnabled() query so HIDAPI-less builds never touch it.
- Gate SDLControllerManager.initializeDeviceListener() and the
  joystick key-event path on the controller subsystem; gate the
  clipboard handler on video, mirroring the native guards.
- Guard the SDLControllerManager JNI bindings with
  SDL_ANDROID_NEED_CONTROLLER_MANAGER (joystick or haptic enabled).
- Skip layout updates in ShowTextInputTask when no layout exists
  (video disabled).
- Reorganize SDL_android.h/.c into guarded per-subsystem groups with
  matching ordering.
2026-07-02 11:30:47 -07:00
Frank Praznik
9961fb80a7 wayland: Refactor the cursor event thread into a general purpose event thread
No functional changes, just tidies the mouse code, and allows for future generalized use of the event handling thread, if required.
2026-07-02 13:00:26 -04:00
Sam Lantinga
bd7c9e467b Removed helpCursor and cellCursor NSCursor selectors
These don't actually exist and we don't have a better fallback.
2026-07-01 15:54:00 -07:00
SDL Wiki Bot
ceb4a7f1cb Sync SDL3 wiki -> header
[ci skip]
2026-07-01 22:03:03 +00:00
Ryan C. Gordon
eb04627741 stdinc: SDL_SetMemoryFunctions now handles NULL function pointers better.
Now it does _not_ call SDL_SetError(), since that would allocate memory with
the system in a weird state, and setting all four functions to NULL will
restore the original memory functions, as a shortcut vs having to query
SDL_GetOriginalMemoryFunctions() first.

Fixes #15914.
2026-07-01 18:00:09 -04:00
palxex
f09a6679a3 dos: Use INT 0x10/AX=0x1A00 to detect VGA presence 2026-07-01 16:08:14 -04:00
Dimitri Alexeev
ef6e76e00b joystick: Apply Gyroscope Zero-Rate Offset (ZRO) subtraction to live IMU data for Switch Controllers. 2026-07-01 09:12:25 -07:00