kc3-lang/SDL/src

Branch :


Log

Author Commit Date CI Message
f1633127 2021-07-24 13:41:55 Added a window flash operation to be explicit about window flash behavior
638befc1 2021-06-10 17:22:39 audiocvt: 5.1 to Stereo conversion utilizing SSE
b2c8d3e9 2021-06-11 22:14:54 audiocvt: 5.1 to Stereo conversion utilizing AVX
db56526f 2021-06-10 13:07:27 audiocvt: Replace divisions Division is expensive and the compiler can not replace it themselves. Though we now we will be ok in terms of floating point edge behaviour.
e1c3a250 2021-07-24 12:11:27 Changed SDL_FlashWindow() so it doesn't take a flash count, and added the hint SDL_HINT_WINDOW_FLASH_COUNT to control behavior on Windows
09d1cea7 2021-07-24 11:15:09 Use the new controller type for the Luna and Stadia controllers
808c3ae6 2021-07-24 10:36:56 Allow mapping Android controllers that just have a D-PAD and face buttons This fixes bug https://github.com/libsdl-org/SDL/issues/4327
94b7a876 2021-07-24 09:10:18 Added SDL_GameControllerType enumerations for the Amazon Luna and Google Stadia controllers Fixes bug https://github.com/libsdl-org/SDL/issues/4019
e6e8fe6d 2021-07-23 10:45:03 hidapi_switch: Implement analog rumble
669714ca 2021-07-23 23:51:35 Added the ThrustMaster T.16000M as a flightstick
384d86b5 2021-07-23 23:48:23 Fixed compile warnings with Visual Studio
adb75d64 2021-07-23 23:45:18 Fixed hotplug detection not working on UWP or when SDL isn't pumping Windows events This fixes bugs: https://github.com/libsdl-org/SDL/issues/4321 https://github.com/libsdl-org/SDL/issues/4147 Thanks to DJm00n for the suggestion!
7b0092db 2021-07-23 18:58:25 vita: touch: Mark the back panel as an indirect absolute touch device It's not a touchscreen, but an additional touch panel on the back of the device.
422b053b 2021-07-23 16:32:35 Added support for the full line of current PowerA Xbox Series X controllers
48bbe31b 2021-07-20 21:45:21 Add PreSwapCallback for updating SceCommonDialog
9c1306bc 2021-07-20 21:44:16 Add elgext.h header
4ada14a2 2021-07-21 13:39:10 Replace libc functions to SDL equivalent in wayland video subsystem Wayland video subsystem uses a mix of libc and SDL function. This patch switches libc functions to SDL ones and fixes a mismatch in memory allocation/dealoccation of SDL_Cursor in SDL_waylandmouse.c (calloc on line 201 and SDL_free on line 313) which caused memory corruption if custom memory allocator where provided to SDL.
f806064e 2021-07-19 13:12:10 Remove 'support' for rgb/bgr textures, that was causing issues with them
d6641d71 2021-07-19 11:52:57 kmsdrm: Explicitly set the surface transform and alpha mode This is required by the specification. Set these to sensible defaults. Fixes a validation layer error that occurs otherwise.
76007427 2021-07-19 11:26:54 kmsdrm: Properly zero-initialize CreateInfo structs As written, these contain undefined stack contents, which in practice causes crashes/hangs and/or triggers the validation layers (they complain about `pNext` and `flags` not being NULL).
817976da 2021-07-13 13:45:28 VITA: Rewrite and fix RenderCopyEx rotation
dc6f0443 2021-07-12 17:57:21 Added mapping for the Xbox Series X controller on tvOS
947ad6e1 2021-07-12 17:57:21 Added support for the Xbox Series X controller on iOS and tvOS
7fe6dbaf 2021-07-11 15:25:24 Reset rawInputEnableCount when RawInput is not supported
24059a19 2021-07-09 18:11:42 The RAWINPUT driver is no longer tied to HIDAPI in any way
f93e9047 2021-07-08 18:44:50 Implemented the timeout in hid_read_timeout() on Android This fixes detecting PS5 controllers connected over USB
557d0f82 2021-03-11 13:36:56 Commenting a false alarm in WIN_GLES_SetupWindow. When hint SDL_HINT_OPENGL_ES_DRIVER is set to "1" (e.g. for ANGLE support), assertion due to !_this->gl_config.driver_loaded can be causes while EGL is available.
d135c076 2021-07-08 13:22:41 Added SDL_GameControllerSendEffect() and SDL_JoystickSendEffect() to allow applications to send custom effects to the PS4 and PS5 controllers See testgamecontroller.c for an example of a custom PS5 trigger effect
3da6d2cd 2021-07-08 20:33:50 WIN_SetErrorFromHRESULT: kill CR/LF that FormatMessage sticks at the end Fixes: https://github.com/libsdl-org/SDL_mixer/issues/320
8fb95034 2021-04-02 12:52:21 Avoid warping the cursor to the center of the window when not in relative_warp_mode When relative mode is enabled and not using warp mode, the cursor is being clipped to the window. Therefore there is no reason to restore the cursor position to the center. Avoiding the warp to center simplifies mouse position event flow, as we are no longer potentially receiving mouse events for the automated movement of the cursor and can be (mostly) assured that an incoming event from the windowing system is that of external means.
4359a47b 2021-04-02 12:48:16 Simplify ClipCursor behaviour when RelativeMouseMode is enabled The implementation of clip logic for relative mode seemed to unnecessarily limit the usable area to the middle of the window, in a 2x2 pixel region. This has the adverse side effect of moving the operating system cursor to that location, even if it is in a valid location in the window. While in most scenarios this is handled correctly (by storing the original position of the cursor in the window and restoring when leaving relative mode), there are edge cases where this clip operation can cause WM_MOUSEMOVE to fire at a point in time where it counts as a relative delta from SDL's perspective.
3720e254 2021-04-02 12:48:02 Trim some stray whitespace
16e3bfe8 2021-06-28 11:29:16 SetDisplayMode: Call XRRSetScreenSize before setting CRTC config X11_SetDisplayMode currently calls X11_XRRSetCrtcConfig alone. This results in the monitor's viewport getting changed, but the underlying screen dimensions stay the same. The spec indicates that RRSetCrtcConfig only changes the crtc mode and has no effect on the screen dimensions, only mentioning that the new crtc must fit entirely within the screen size. For the size to change, RRSetScreenSize also needs to be called. This affects Metro Exodus on Linux, when changing the resolution in the in-game settings Metro gets stuck in a loop waiting for the size of its vulkan surface to change. Because XRRSetScreenSize is not called the screen size is never changed, the vulkan surface dimensions do not change, and Metro hangs forever watching for a surface size update that will never come. This change disables the CRTC, calls XRRSetScreenSize, and then updates the CRTC configuration. This fixes changing the resolution from the Metro settings. Tested with: Metro Exodus, Portal 2
4a20dd3e 2021-07-08 07:38:18 Removed unnecessary comment, the mic button is in byte 16 on all firmware versions
46f19c31 2021-07-08 07:23:29 Implemented mouse relative mode for iOS 14.1 and newer
430bbcb8 2021-07-07 09:49:33 Added HIDAPI support for the Amazon Luna Controller connected over USB in DirectInput mode
863f5669 2021-07-07 08:55:16 Fixed reading thumbstick axes and mic button on the Amazon Luna Controller firmware version 305164320
17ed8d80 2021-07-07 16:05:35 Added HIDAPI backend for Amazon Luna Controller Model T28B69 connected via Bluetooth LE (VID:0171, PID:0419). To enter Bluetooth pairing mode hold B and Action (button with circle) buttons for 3 seconds. It works via usual HIDAPI if special filter driver is not installed: https://www.amazon.com/gp/help/customer/display.html?nodeId=GZCT4CTFHXLHEB9T With that driver installed it mimics Xbox One controller and works via XInput under Windows. Under DInput this controller is not usable at all.
00d67620 2021-07-06 11:32:11 Added the SteelSeries manufacturer to the Nimbus+ entry on macOS
24e836b0 2021-07-06 10:00:09 Added controller mapping for the Nimbus+ controller on macOS when MFi support is not available
0994a758 2021-07-01 20:36:49 Don't hardcode message length
3b6e9992 2021-06-23 14:57:04 Vita: remove unused variable and allow Razor perf analysis
656eb7df 2021-06-23 14:35:36 Vite: return system installed memory
b55ee12f 2021-06-21 23:56:04 Vita: fix clip rectangle
e41d3e61 2021-06-21 23:15:37 VIta: fix render clearing
6b122805 2021-06-21 23:14:56 Vita: proper syntax
32deb6f7 2021-06-21 23:14:40 Vita: fix point size
9d452719 2021-06-21 15:42:47 Vita: append messagebox title
39302c92 2021-06-02 14:28:33 Add Steam Virtual Gamepad and Xbox 360 Wired Controller defines instead of magic values See https://partner.steamgames.com/doc/features/steam_controller/steam_input_gamepad_emulation_bestpractices for details on what is Steam Virtual Gamepad.
0c4ac33a 2021-06-28 14:31:27 Added support for the Razer Wolverine Tournament Edition controller
ca383599 2021-06-27 01:49:31 Fix Anne Pro II keyboard showing up as a joystick Having used this for a couple years, I can definitely confirm that it is not a joystick.
c90bd3bf 2021-06-27 03:13:47 Add missing PS5 DualSense GUIDs Fixes my DualSense controller not being recognised as a SDL GameController which breaks Steam Input filtering causing SDL to fight for input.
205b951b 2021-06-25 14:20:08 SDL_DINPUT_JoystickPresent() needs to do the full device enumeration It is called from WGI before the normal joystick detection has been run, so it needs to actually enumerate currently connected devices. We can skip the logic checking for other drivers also supporting this device, because that logic is duplicated from the call site.
ae6d9e34 2021-06-25 11:09:46 Correcting the name of the Amazon Luna Controller
5042ab6f 2021-06-24 18:09:06 Added Linux and macOS mappings for the DirectInput mode of the Amazon Luna Controller
5b051459 2021-06-24 18:09:04 Fixed warnings on Windows
99700a5c 2021-06-24 18:09:01 SDL: add Windows mappings for Luna controllers for USB DirectInput mode and BT. Note: the triggers do not seem to work in BT mode.
33b84c8d 2021-06-24 23:10:56 s/memcmp/SDL_memcmp/ for conistency
56b77b12 2021-06-04 19:51:58 cocoa: Implement FlashWindow
c2e8a791 2021-06-12 16:20:47 SDL_windowsevents: add support for multiple mice
7948c16d 2021-06-12 17:56:52 Pump events each time through the loop in SDL_WaitEventTimeout_Device() Not only is it more efficient to batch process pending events, it is necessary for correctness with the Win32 backend. WIN_PumpEvents() runs periodic updates of the cursor clip region and disambiguation of left and right shift keys in addition to standard event processing.
105de64c 2021-06-12 16:19:03 Only queue one wakeup event per wait Queuing more than one can lead to a spurious wakeup on the next wait.
c262569c 2021-06-22 00:03:18 kmsdrm: fix KMSDRM_SetDisplayMode being called for the default desktop mode doing nothing
98bda391 2021-06-23 00:21:31 kmsdrm: sync the display's current mode with what's set in KMSDRM_CreateSurfaces
d031a24e 2021-06-08 00:39:04 kmsdrm: defer surface recreation inside of KMSDRM_SetWindowSize and KMSDRM_SetWindowFullscreen as is done in KMSDRM_SetWindowDisplayMode
5a296e25 2021-06-08 20:48:24 kmsdrm: avoid overriding the mode requested by SDL_SetWindowDisplayMode when recreating surfaces
814285d6 2021-06-23 09:19:02 Workaround for crash on Apple Mac M1 hardware
41fab853 2021-06-18 18:10:24 ControllerList: set the default deadzone for Ps5 controller back to same one as Xbox controllers. Too many users complained about drift.
a8b28939 2021-06-18 18:10:23 ControllerList: add more Xbox controllers from minidumps
08eff56a 2021-06-18 18:10:22 ControllerList: add Brooks Mars controller to PS4 controller list
afd100f0 2021-06-18 17:37:46 Added support for the PowerA Fusion Pro 2 and the PDP Xbox Series X Afterglow and Blue controllers
839387ed 2021-06-17 22:09:13 video/dummy: Don't zero out the fake display mode before adding it. The SDL_zero call was in the wrong place as a historical accident, I think.
268fbcd4 2021-06-17 11:23:47 Fixed compiler warning on Visual Studio
d8dba5bc 2021-06-17 11:22:08 Added support for the Logitech G923 racing wheel
7f261d3b 2021-06-15 00:35:13 wayland: Fix returning to a window from fullscreen without calling SetWindowSize
8da0dd17 2021-06-15 18:54:52 Oops. Renderer already queues viewport change
1fc51988 2021-06-15 18:49:55 Reset/re-apply viewport on frame start/target change. Fixes SDL_RenderSetLogicalSize on PSVita
bc7ac134 2021-06-11 09:22:41 Windows: Fix SDL_GetBasePath() truncating paths SDL_GetBasePath grows its path buffer for long paths, but GetModuleFileNameExW always truncates and succeeds, so `len` was always equal to (buflen - 1) which is 127. This is easily fixed by checking for (buflen - 1) instead of buflen. For paths longer than MAX_PATH, this problem sometimes got hidden by Windows path shortening ("C:\PROGRA~1\" etc.). Tested on Windows 10 x64 19041 and 10586.
db5cd8c6 2021-06-12 14:57:34 joystick: virtual: Fix event injection for axes/hats SDL_JoystickSetVirtualAxisInner() and SDL_JoystickSetVirtualHatInner() did not properly sanitize the 'axis' and 'hat' parameters. Signed-off-by: Paul Cercueil <paul@crapouillou.net>
f3cf019e 2021-06-12 13:25:34 joystick: Add missing comma in joystick drivers list Without this comma it is impossible to enable both the Vita and Dummy drivers at the same time. Signed-off-by: Paul Cercueil <paul@crapouillou.net>
bc9888c9 2021-06-12 14:55:24 OS2_GetDisplayModes: malloc a new copy of mode's driver data. Based on a patch by Jochen Schäfer <josch1710@live.de> : The problem is, that in the initialization code uses the same structure for desktop_mode and current_mode. See SDL_os2video.c:OS2_VideoInit(): stSDLDisplay.desktop_mode = stSDLDisplayMode; stSDLDisplay.current_mode = stSDLDisplayMode; ... stSDLDisplayMode.driverdata = pDisplayData; Then, if you call GetDisplayModes, current_mode will added to the modes list, with the same driverdata pointer to desktop_mode. SDL_AddDisplayMode( display, &display->current_mode ); When VideoQuit gets called, first the modes list gets freed including the driverdata, the desktop_mode gets freed. See SDL_video.c:SDL_VideoQuit(): for (j = display->num_display_modes; j--;) { SDL_free(display->display_modes[j].driverdata); display->display_modes[j].driverdata = NULL; } SDL_free(display->display_modes); display->display_modes = NULL; SDL_free(display->desktop_mode.driverdata); display->desktop_mode.driverdata = NULL; So, the display_modes[j].driverdata gets freed, but desktop_mode->driverdata points to the same memory, but is not NULL'ed. When desktop_mode->driverdata gets freed the memory is already freed, and libcx crashes the application on SDL_Quit.
d28437de 2021-06-12 08:00:50 SDL_keyboard.c: Add bounds guards when assigning to the scancode array. Based on a patch by Jochen Schäfer <josch1710@live.de> : On a T420 pressing the ACPI button for volume control, big scancodes were emitted. This was causing an overflow, because missing guards.
eb15b4e9 2021-06-11 23:40:09 wayland: Drop SwapWindow calls for hidden windows
37d35a3e 2021-06-11 21:02:49 kmsdrm: hook up KMSDRM_GLES_DefaultProfileConfig for use. Fixes #3678.
bbdd08e0 2021-06-10 13:20:39 Build without PIB support by default and add flag to enable it
a4442476 2021-06-10 12:14:14 Cleanup dead and duplicate code
c2b8b556 2021-06-10 12:06:28 Older api, not needed
dd2a2858 2021-06-10 12:00:56 Remove leftovers
2f248a2a 2021-06-11 04:00:32 SDL_cocoaevents.m: fix build against SDK < 10.12 after commit 0dd7024d.
f5122377 2021-06-10 14:06:32 Move SDL_IsXInputDevice check above actual joystick allocation
766d81ec 2021-06-10 14:01:04 Rewrite SDL_DINPUT_JoystickPresent method to avoid costly IDirectInput8_CreateDevice calls
a6da2fbf 2021-05-25 12:33:23 Rename haptic methods to avoid confusion with joystick: `SDL_DINPUT_MaybeAddDevice`->`SDL_DINPUT_HapticMaybeAddDevice` `SDL_DINPUT_MaybeRemoveDevice`->`SDL_DINPUT_HapticMaybeRemoveDevice` `SDL_XINPUT_MaybeAddDevice`->`SDL_XINPUT_HapticMaybeAddDevice` `SDL_XINPUT_MaybeRemoveDevice`->`SDL_XINPUT_HapticMaybeRemoveDevice`
73dc68a7 2021-05-19 17:52:08 Simplify and cleanup DirectInput joystick backend code: - Do not call IDirectInputDevice8_QueryInterface(device, &IID_IDirectInputDevice8,...) on DIRECTINPUTDEVICE8 device - Get joystick VendorID and ProductID via IDirectInputDevice8_GetProperty(.., DIPROP_VIDPID, ..) call instead of messing with DIDEVICEINSTANCE.guidProduct - Normalize HID device interface path to upper case for stable operation of XInput check - Remove useless RawInput calls in SDL_IsXInputDevice() - just check for "IG_" string in HID device interface path that we already have There shouldn't be any observable behavior changes.
f2f759dc 2021-02-26 15:34:34 Remove not used DirectInput ignored_devices list
adc2d362 2021-02-26 15:33:41 Remove outdated and not used WIN_IsXInputDevice code
0e62926e 2021-06-10 16:28:32 Fixed crash if vendor or product strings are empty
e65a6583 2021-06-09 22:10:20 x11: Add a hint to force override-redirect. Fixes #3776.
cb5e8635 2021-06-08 13:15:24 Fixed crash after reinitializing libusb HID support
c33e3c15 2021-06-07 18:24:57 testwm2: draw various debug logging into the window itself Renderer output size, window position/size, display bounds, etc. Uses new SDLTest_CommonDrawWindowInfo function in test_common.
e13b43ac 2021-06-05 12:44:08 Don't skip sending wakeups for the current thread We can be in a situation where we receive a win32 hook callback on the same thread that is currently waiting. In that case, we do still need to trigger a wakeup when an event is pushed because the hook itself won't necessarily do that (depending on what we return from the hook).