kc3-lang/SDL/src

Branch :


Log

Author Commit Date CI Message
50203d58 2020-12-08 22:00:06 Fixed bug 5329 - SDL_SetWindowGrab(SDL_FALSE) fails to unlock cursor if window is partially offscreen Ivan Mogilko With SDL 2.0.12 under MS Windows, if the window is partially offscreen calling SDL_SetWindowGrab(w, SDL_TRUE) works, but subsequent call to SDL_SetWindowGrab(w, SDL_FALSE) does not work. I tested this in both real program, and a small test app, where unlocking cursor worked perfectly while window is fully in desktop bounds, but did not work if it was at least few pixels outside. For the reference, following code is enough to reproduce the issue: #include <windows.h> #include <SDL.h> int WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nShowCmd) { SDL_Init(SDL_INIT_VIDEO); SDL_Window* w = SDL_CreateWindow("", SDL_WINDOWPOS_CENTERED, SDL_WINDOWPOS_CENTERED, 640, 400, 0); bool grabbed = false; bool want_quit = false; while (!want_quit) { SDL_Event event; while (SDL_PollEvent(&event)) { switch (event.type) { case SDL_QUIT: want_quit = true; break; case SDL_KEYDOWN: if (event.key.keysym.scancode == SDL_SCANCODE_SPACE) { SDL_SetWindowGrab(w, static_cast<SDL_bool>(!grabbed)); grabbed = !grabbed; } } } } SDL_DestroyWindow(w); SDL_Quit(); return 0; }
43aad966 2020-12-08 19:03:50 Fixed bug 5222 - Crash when running with -DHIDAPI=ON Mathieu Eyraud SDL dynamically loads libusb but does not check the return value of 'SDL_LoadFunction'. Also libusb is loaded and initialized several time because 'SDL_hidapi_wasinit' is never set to true. I made a patch if you want to test: - check that 'hid_init' is called once and only once, - check return value of 'hid_init', - check return value of 'SDL_LoadFunction', - check return value of 'SDL_malloc', - add some debug logging.
a2098a47 2020-12-08 18:56:06 Updated SDL to 2.0.14 in preparation for release candidate
c9723c40 2020-12-07 09:38:21 Fixed potential hang in joystick close if the rumble thread is blocked for some reason It's still possible to hang when shutting down, if the rumble thread is still hung, but it won't block indefinitely at runtime.
09909d02 2020-12-03 19:44:47 Fixed handling of BACK button on newer Xbox One S controllers
54e5136b 2020-12-03 18:17:04 Refactored Xbox One Bluetooth protocol and verified Xbox One S, Xbox Series X, and Xbox One Elite Series 2 controllers
1031231b 2020-12-03 18:17:03 Fixed duplicating a device between XInput and HIDAPI
59f28b7f 2020-12-03 18:17:01 Fixed whitespace
f487d63a 2020-12-03 18:16:56 Fixed crash when printing NULL wide character string
754286c6 2020-12-02 13:45:24 SDL Renderer: specify the correct flag when recreating the window
035f8f23 2020-12-02 13:37:59 SDL_RecreateWindow: allow clearing VULKAN when recreating the window
93fbab0f 2020-12-02 11:04:53 SDL_ReCreateWindow: allow to unload METAL window and switch back to OpenGL. On older mac, where METAL Renderer METAL fails to create, it allows to switch back to OpenGL SDL_Renderer by re-creating the window (METAL flags was previously persistent).
c78ca2d1 2020-12-01 13:38:42 Fixed bug 5371 - Rawinput: Fix truncating cast of string length. Joel Linn Fixes an implicit truncation of a string length on 64bit systems.
a3ccf9ad 2020-12-01 13:36:41 Fixed bug 5373 - [PATCH] Rawinput: Get correlated XInput battery info Joel Linn Currently the rawinput driver always reports a device as "wired". This changes that to "unknown" and updates it once the device is correlated with xinput.
e3966e25 2020-11-30 13:04:30 Use the correct internal API for updating the battery level for PS5 controllers
f4ed07de 2020-11-30 13:02:34 We don't know whether the PS5 controller is Bluetooth or not when we open it
1f2f536b 2020-11-27 18:57:40 Fixed XInput correlation for raw input controllers after hotplug events
1c865c46 2020-11-27 18:57:36 Load the raw input device list at init time so it's available when DirectInput is doing device detection
a0c5bfa3 2020-11-27 13:08:40 Moved raw input event processing from the main thread to the joystick thread This allows fast joystick event delivery regardless of what the main thread is doing.
4fbefbe2 2020-11-27 11:33:53 Sort the raw input axes by usage, so X comes before Y, etc.
4ddac485 2020-11-27 11:33:51 Backed out minor optimization that prevented correlation_id from being set
8973a258 2020-11-27 10:44:56 Enable dispatching of WM_INPUT_DEVICE_CHANGE events directly, in case the application hasn't created a window with the normal message loop
e8adc648 2020-11-27 10:44:55 Enable dispatching of WM_INPUT events directly, in case the application hasn't created a window with the normal message loop
0252235e 2020-11-27 10:44:53 Recheck devices if another API queries raw input for a new device
a7dede7e 2020-11-27 10:44:51 Re-enable axis correlation for raw input controllers, for twin stick shooters that don't need face buttons
ce77966d 2020-11-27 10:44:49 Fixed RAWINPUT_IsDevicePresent() not returning TRUE for Xbox One controllers
8a449de2 2020-11-27 10:44:47 Fixed Xbox 360 wireless controller being picked up by WGI when it's being managed by RAWINPUT
37c9e4af 2020-11-27 06:03:15 Fixed processing WM_INPUT_DEVICE_CHANGE at startup
248fc75b 2020-11-27 05:53:56 Correlate just based on buttons, joystick axes are not as precise and could potentially cause incorrect uncorrelation. It's okay if the triggers aren't precise until someone presses a button on their controller.
e7e615de 2020-11-27 05:53:54 Removed extraneous windows message pumping Most of the raw input events are dispatched in the main windows message loop. We only dispatch device change messages separately when we need them to be completely up to date.
2931eccd 2020-11-27 05:53:52 Fixed detecting Bluetooth raw input devices, which have device names longer than 128 characters
849ce803 2020-11-27 05:53:50 Renamed SDL_JOYSTICK_RAWINPUT_GAMING_INPUT to SDL_JOYSTICK_RAWINPUT_WGI
219a28dd 2020-11-27 03:45:05 Fixed D-pad uncorrelating raw input controllers (thanks Jimbly!)
2c079a2f 2020-11-27 09:42:14 SDL_FillRects: prevent empty SDL_surface from raising an error message It's legitimate to have a surface with 0 width or height (null 'pixels' pointer). But calling SDL_FillRects would wrongly set the error "You must lock the surface".
3fbff2a4 2020-11-26 10:47:33 SDL_rawinputjoystick.c: fix ambiguous 'else' warning src/joystick/windows/SDL_rawinputjoystick.c: In function 'RAWINPUT_HandleStatePacket': src/joystick/windows/SDL_rawinputjoystick.c:1343:9: warning: suggest explicit braces to avoid ambiguous 'else'
845b9033 2020-11-25 16:46:42 Implemented trigger rumble for raw input controllers
517be808 2020-11-25 16:05:19 Implemented battery status for Bluetooth Xbox One controllers Also switched the rumble loop count to 0xEB (one hour) to match Windows driver
6a7f29cd 2020-11-25 11:31:17 Fixed compiling on tvOS
9ec2cf56 2020-11-25 10:31:59 Fixed building with Windows.Gaming.Input enabled
3c07dd12 2020-11-25 10:28:48 Strip an extra '.' off of the HORI manufacturer name
159d1b3d 2020-11-25 01:35:45 Don't set the serial number after the controller is opened We'll use the USB value instead so it's available as soon as it's opened.
7d92b14f 2020-11-25 01:18:18 Simplified Xbox One controller initialization state, and don't query for the serial number.
9fc4a4c9 2020-11-24 22:25:26 Revamped Xbox One HIDAPI init sequence Added support for querying the controller serial number on newer firmware
46a84478 2020-11-24 12:43:01 Added SDL_wcscasecmp() and SDL_wcsncasecmp()
e4b7d9a2 2020-11-24 07:56:59 Removed usage of TARGET_OS_OSX for building with older SDKs
a5cde4cb 2020-11-24 07:29:55 Fixed trying to use @available() on older SDK
97782e6c 2020-11-24 07:11:49 Don't try to call IOS_SupportedHIDDevice() if it's not defined
a063b9fb 2020-11-24 07:06:31 Fixed compiler warning
c63bbb06 2020-11-24 06:55:33 Including SDL_config_iphoneos.h enables MFI controller code
7a05dbf4 2020-11-24 06:42:53 Fixed building on FreeBSD Alex S Looks like we have a collision with https://hg.libsdl.org/SDL/rev/cd774daff9f6. (Again, the headers in the base system are intended for drivers and should not be used for compiling non-base applications. At least that's the policy for now: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=240964#c19.)
feab9d42 2020-11-24 06:40:13 5363 - Memory leak of joystick->sensors in SDL_JoystickClose Mathieu Eyraud Joystick->sensors is never freed.
34bea84a 2020-11-23 23:03:55 Fixed bug 5335 - Patch: enable joystick/haptic/evdev support by default on FreeBSD Alex S Ah, that's not quite enough. You need to: 1. rename src/joystick/bsd/SDL_sysjoystick.c to something; 2. regenerate configure.
1e943e2a 2020-11-23 22:59:22 Fixed building with an older SDK and macOS target
4121ab62 2020-11-23 21:25:07 Fixed bug 5354 - DirectFB: Add Vulkan support Nicolas Caramelli This patch adds Vulkan support for the DirectFB video driver. A screenshot with SDL tests running on DirectFB is available on the HiGFXback project: https://github.com/caramelli/higfxback/wiki/DirectFB#sdl
e44bf8a0 2020-11-23 21:18:37 Fixed bug 5359 - Incorrect sensor data from DualShock4 multiply gyro values by sensitivity When the hardware calibration fails, values read from sensors need to be multiplied by default sensitivity (16 for gyro, 1 for accelerometer).
c8c818d7 2020-11-23 21:14:37 Fixed bug 5360 - non-libudev joystick detection doesn't see controllers that were already connected Simon McVittie When watching for hotplug events we can poll the inotify fd, but we still need to scan /dev/input once per process, otherwise we'll fail to detect devices that were already connected.
8e2746cf 2020-11-23 21:10:48 joystick: Don't use udev in Flatpak or pressure-vessel container Flatpak[1] and pressure-vessel[2] are known to use user namespaces, therefore udev event notification via netlink won't work reliably. Both frameworks provide a filesystem API that libraries can use to detect them. Do that, and automatically fall back from udev-based device discovery to the inotify-based fallback introduced in Bug #5337. [1] <https://flatpak.org/> [2] <https://gitlab.steamos.cloud/steamrt/steam-runtime-tools/-/tree/master/pressure-vessel> Signed-off-by: Simon McVittie <smcv@collabora.com>
e9869e07 2020-11-23 21:08:19 Fixed bug 5335 - enable joystick/haptic/evdev support by default on FreeBSD Alex S Evdev headers aren't actually included in the base system (well, it has a private copy), they are available through the devel/evdev-proto port instead. We also have devel/libinotify and devel/libudev-devd shims, I didn't verify whether they work with SDL.
62e39b5f 2020-11-23 20:57:14 Fixed building with an older SDK and macOS target
268aa456 2020-11-23 20:26:28 Fixed compiling with SDL_JOYSTICK_RAWINPUT disabled
eaa53a19 2020-11-23 22:16:07 joystick: On Linux, don't try to close an invalid inotify file descriptor.
5c957747 2020-11-23 22:14:22 joystick: Fix up Linux joystick code to (mostly) compile on FreeBSD.
179bd665 2020-11-23 18:27:43 Don't enable PS5 controller support if DS4Windows is running - they conflict.
5b3616c3 2020-11-23 18:24:05 Generalized the raw input controller driver and moved XInput/WGI detection into it for XInput devices This fixes bad report parsing for various newer Xbox controllers, and this driver is now preferred over XInput, since it handles more than 4 controllers.
0ff5d55a 2020-11-23 21:07:28 x11: Don't try to grab the pointer on an unmapped window (thanks, Lee!) Fixes Bugzilla #5352.
a94fe009 2020-11-21 18:40:27 Moved comment with the code it covers
49f7be6d 2020-11-21 18:37:56 Fixed compile warning C4127: conditional expression is constant
63b52e8e 2020-11-21 18:34:32 Remove SDL dependency in Windows code
d4954eb0 2020-11-21 18:26:43 Removed debug code
b442e617 2020-11-21 18:15:55 Fixed adding an extra zero byte for feature reports At least with PS4 and PS5 controllers DeviceIoControl() returns the correct value
2e8e3854 2020-11-21 17:59:15 Fixed compile warning
fd894467 2020-11-21 14:13:26 Fixed building on Mac OS X on the command line and with an older macOS SDK
1df593fb 2020-11-21 13:15:33 Fixed bug 5355 - Add GameController Framework support to macOS C.W. Betts This patch adds support to the GameController framework on macOS Big Sur and later, adding support for MFi controllers as well as rumble support for PS4 and Xbox One. There is some code to make sure that the IOKit joystick handler doesn't include two controllers at once. While the GameController framework is present in earlier versions of macOS, there was no public, approved way of checking if a specific IOHIDDevice is a controller that GameController could handle. This was changed in Big Sur.
870841c4 2020-11-21 11:59:01 Reset the LED state after Bluetooth connection has completed on the PS5 controller
6b56b98f 2020-11-21 09:26:11 Fixed is_BLE() return value
65c9f1d2 2020-11-21 09:06:48 Fixed upstream bug: FD 0 is a valid file descriptor https://github.com/libusb/hidapi/issues/199
549010f2 2020-11-20 13:24:49 It takes 2 packets to stop audio haptics and start emulated rumble on the PS5 controller
082558db 2020-11-20 12:20:02 SDL_os2messagebox.c (_makeDlg): fix crash if title and/or message is NULL. c.f.: bug #5253.
bf7d198d 2020-11-19 19:09:42 The HORI Fighting Commander should only show up as an XInput Switch Controller on Windows
6cb7f9e3 2020-11-19 19:09:40 Respect SDL_HINT_GAMECONTROLLER_USE_BUTTON_LABELS for Nintendo Switch Pro controllers using the HIDAPI driver
99807665 2020-11-19 19:09:38 Respect SDL_HINT_GAMECONTROLLER_USE_BUTTON_LABELS for the Nintendo Switch Pro controller on Linux
7366693f 2020-11-19 19:09:36 Added support for a few more controllers on Linux
ffb4d960 2020-11-19 19:09:34 Disabled Xbox protocol debugging
c9b097e6 2020-11-19 13:31:16 Clarify the meaning of the rumble enable bits for the PS5 controller
c85623d7 2020-11-19 13:10:14 Re-enable haptic audio after rumble on PS5 controller Also make sure we don't set any other state when we're not intending to, and added more interesting effects which are currently not exposed via API
b0b76a61 2020-11-19 07:12:53 Fixed rumble on PS5 controllers connected to Windows over Bluetooth
8c3196da 2020-11-18 21:33:11 Fixed some compiler warnings
45f14375 2020-11-18 20:34:12 Experimenting with requesting the serial number on an Xbox One controller
963d8b3f 2020-11-18 20:34:10 Fixed bits in the initial Xbox One protocol ack
cd51a51f 2020-11-18 20:34:08 Updated with a better understanding of the Xbox One controller protocol
335cfa10 2020-11-18 11:24:08 x11: Don't crash if a messagebox has a NULL title string. Fixes Bugzilla #5253.
51ea6a6d 2020-11-17 22:09:52 Don't send controller gyro and accelerometer updates if the values haven't changed. This keeps SDL_PollEvent() from returning data continuously when polling controller state.
463d84a8 2020-11-17 10:56:56 Added support for the PS5 controller gyro and accelerometer
fcb21aa8 2020-11-17 10:30:20 Added API for sensors on game controllers Added support for the PS4 controller gyro and accelerometer on iOS and HIDAPI drivers Also fixed an issue with the accelerometer on iOS having inverted axes
d140d887 2020-11-16 17:36:47 Added SDL_JoystickGetSerial() and SDL_GameControllerGetSerial()
55e59a4f 2020-11-16 18:48:13 crc32: Fixed include path.
7bbea0bb 2020-11-16 15:10:02 Fixed build warning
71e32f5e 2020-11-16 15:00:15 Added SDL_crc32()
3d48fc05 2020-11-16 13:21:02 Added notes about the pad lights on the PS5 controller
4514ad57 2020-11-16 13:07:11 Fixed updating LED state when starting application with Bluetooth PS5 controller connected