Log

Author Commit Date CI Message
Frank Praznik 8ea96f36 2022-11-16T11:32:31 events: Remove X and XKB keysym constants and headers The XKB_KEY_* and XK_* macros resolve to the same constant values, so use the raw values and note what keys they correspond to in the comments, as is done for the other keysym values in this file. This completely eliminates the need for any X or XKB system headers along with the if/else defines.
chalonverse 20af698b 2022-11-16T11:31:35 GDK: Updated MicrosoftGame.config files to use placeholder identifiers from the GDK project template rather than using Microsoft sample identifiers
Ryan C. Gordon 389ffab7 2022-11-16T12:53:48 Code style fixes, etc. Reference PR #6345.
ulatekh ec58a817 2022-10-05T19:26:09 Fixes made in response to running a static code analyzer under MS Windows. Most of these are probably harmless, but the changes to SDL_immdevice.c and SDL_pixels.c appear to have fixed genuine bugs. SDL_audiocvt.c: By separating the calculation of the divisor, I got rid of the suspicion that dividing a double by an integer led to loss of precision. SDL_immdevice.c: Added a missing test, one that could have otherwise led to dereferencing a null pointer. SDL_events.c, SDL_gamecontroller.c, SDL_joystick.c, SDL_malloc.c, SDL_video.c: Made it clear the return values weren't used. SDL_hidapi_shield.c: The size is zero, so nothing bad would have happened, but the SDL_memset() was still being given an address outside of the array's range. SDL_dinputjoystick.c: Initialize local data, just in case IDirectInputDevice8_GetProperty() isn't guaranteed to write to it. SDL_render_sw.c: drawstate.viewport could be null (as seen on line 691). SDL.c: SDL_MostSignificantBitIndex32() could return -1, though I don't know if you want to cope with that (what I did) or SDL_assert() that it can't happen. SDL_hints.c: Replaced boolean tests on pointer values with comparisons to NULL. SDL_pixels.c: Looks like the switch is genuinely missing a break! SDL_rect_impl.h: The MacOS static checker pointed out issues with the X comparisons that were handled by assertions; I added assertions for the Y comparisons. SDL_yuv.c, SDL_windowskeyboard.c, SDL_windowswindow.c: Checked error-result returns.
Ryan C. Gordon 7ebdae5d 2022-11-16T11:45:41 cocoa: Fix OpenGL deprecation warning.
Ryan C. Gordon 7c760f7f 2022-11-16T11:32:08 cocoa: Update CVDisplayLink timing when screen changes. This handles both the window moving to a new display and changing the current display's refresh rate in System Preferences Reference Issue #4918.
Ryan C. Gordon 1fd66cc8 2022-11-16T10:15:21 Revert "cocoa: Backed out CVDisplayLink code for macOS vsync." This reverts commit 04b50f6c6bef67b744b192c78775771b51ff2141. It turns out OpenGL vsync has broken again in macOS 12, so we're reintroducing our CVDisplayLink code to deal with it, again. Reference Issue #4918.
Ryan C. Gordon 9d67686a 2022-11-16T10:08:40 haptic: Deal with deprecated macOS symbol.
Ryan C. Gordon 6801d676 2022-11-16T09:52:33 Revert "pulseaudio: Only use PA_STREAM_ADJUST_LATENCY if buffer isn't super small." This reverts commit d8b1ef42aee52dad4ac3de69795ca2e8d2fd7704. This turned out to be unnecessary (it was a problem on the user's system, not an SDL bug). Reference Issue #6121.
Anonymous Maarten a71e558d 2022-11-01T13:09:52 cmake: testshader needs -sLEGACY_GL_EMULATION on Emscripten
Anonymous Maarten 55384db8 2022-11-01T13:09:29 cmake: emscripten has libunwind.h, libunwind.a has missing symbols
Anonymous Maarten 6e46090a 2022-11-01T13:08:38 cmake: check ALL headers inside the look (including sys/types.h)
Anonymous Maarten 500bac0b 2022-11-01T13:06:39 cmake: include FIndPkgConfig.cmake through find_package
Anonymous Maarten 81fd45f7 2022-11-16T15:13:04 ci: Disable emscripten build time tests
Anonymous Maarten cfa76973 2022-11-01T11:33:39 cmake: FindOpenGL.cmake shipped by emscripten does not have OpenGL::GL
Anonymous Maarten 76e3cf38 2022-11-01T11:04:45 cmake: use custom add_sdl_test_executable macro to add test
Anonymous Maarten 55534e27 2022-11-01T15:39:13 cmake: add time out to tests to avoid ci timeouts
Anonymous Maarten 2e47016b 2022-11-01T15:28:57 ci: use Ninja generator in hop of accelerating the build
Anonymous Maarten 819b0143 2022-11-01T10:42:57 cmake: enable SDL_TEST by default for emscripten
Anonymous Maarten a22fcf77 2022-11-01T13:40:19 cmake: older emscripten releases have a broken FindOpenGL.cmake This is fixed since 3.1.10: https://github.com/emscripten-core/emscripten/commit/485a7b4d6f84d4bc3b594ff81d39b6b143c8d598#diff-034f4d123f23ec5493d0fbf28cba1c36e404a991f286c8d031a22799e4e8b0e5
Anonymous Maarten d8884b84 2022-11-01T13:10:46 emscripten: fix warnings in tests
Frank Praznik 903301c6 2022-11-16T02:04:59 wayland: Always use integer scaling for cursors. Cursors don't get fractionally scaled, so always scale system cursor sizes to the next whole integer.
Ryan C. Gordon d8b1ef42 2022-11-15T22:18:51 pulseaudio: Only use PA_STREAM_ADJUST_LATENCY if buffer isn't super small. Fixes #6121.
Ozkan Sezer 06492c59 2022-11-16T00:20:28 CI, MSVC: update to use microsoft/setup-msbuild v1.1.3. Fixes github deprecation warnings
Sam Lantinga 02ab7f37 2022-11-15T12:57:07 Fixed release build using clang on Windows
Sam Lantinga 98f93d0a 2022-11-15T11:39:06 Fixed building without xkbcommon support
Sam Lantinga 615901db 2022-11-15T11:19:08 Removed unnecessary header The xkbcommon-keysyms.h header isn't available on some older systems, and we don't actually need it for this code.
Frank Praznik c8551847 2022-11-04T12:41:46 wayland: Handle virtual keyboards that don't fit the X mapping SDL is built around the concept of keyboards having a fixed layout with scancodes that correspond to physical keys no matter what linguistic layout is used. Virtual keyboards don't have this concept and can present an arbitrary layout of keys with arbitrary scancodes and names, which don't fit the SDL model. When one of these keyboards is encountered, it requires special handling: use the keysym of the pressed keys to derive their ANSI keyboard scancode equivalents for control keys and ASCII characters. All other characters are passed through as text events only.
Frank Praznik d1858eb1 2022-11-04T12:33:45 events: Add a helper function to get the default keycode for a scancode Add a helper function to get the keycode for a scancode from the default lookup table. Unlike SDL_GetKeyFromScancode(), this is not affected by the set keymap.
Frank Praznik 0e446c54 2022-11-04T12:27:36 events: Factor out the xkb keysym to scancode conversion from the X11 driver
Ryan C. Gordon 44d7b8b9 2022-11-15T13:57:01 egl: Check for a NULL pointer in SDL_EGL_GetProcAddress. This happens on kmsdrm if you try to GetProcAddress before creating a window. Fixes #5399.
Ethan Lee f3cc99fb 2022-11-15T13:56:44 x11: Minor style fixes for recent OSK changes
Anonymous Maarten e6c4db81 2022-11-15T19:22:42 The SDL2::SDL2 target in SDL2.framework needs to see the SDL2 include folder SDL.h includes other files through SDL2/SDL_xxx.h
Sam Lantinga 70656b13 2022-11-15T10:18:41 Don't recreate the window when creating a Metal renderer on an OpenGL window. It turns out that we can safely create a Metal view on an existing window, and that avoids issues with the window being recreated with the wrong orientation in iOS 16. Fixes https://github.com/libsdl-org/SDL/issues/6289
Pierre Wendling a71ad40a 2022-11-15T13:04:22 CMake: Add option to use Ccache.
SDL Wiki Bot 5e61f245 2022-11-15T05:25:16 Sync SDL wiki -> header
Pierre Wendling 80ff20f6 2022-11-14T23:56:20 N3DS: Set keyboard focus to newly created windows. This fixes polling issues with Joystick subsystem where `SDL_PrivateJoystickShouldIgnoreEvent` would always return true, thus ignoring all inputs.
Pierre Wendling 491d0bcc 2022-11-14T17:38:42 N3DS: Refactor N3DS_FileOpen.
Pierre Wendling dcfa127f 2022-11-14T17:34:22 N3DS: Document the SDL_GetBasePath behaviour.
Pierre Wendling de5fa89b 2022-11-14T16:56:51 N3DS: Prepend PrefPath with `sdmc:`.
Pierre Wendling 7d536d52 2022-11-14T16:16:21 N3DS: Put `SDL_Log.txt` in the proper directory. The homebrew "user" directory should be `/3ds/`. To avoid ambiguity, `sdmc:` is specified.
Pierre Wendling bf4f9aaa 2022-11-14T16:11:58 N3DS: Use designated initialiser for drivers. Just a sanity check that the functions are actually mapped correctly.
Pierre Wendling d080e3bf 2022-11-14T17:56:48 Silence `-Wmaybe-uninitialized` warnings in tests.
Sam Lantinga a40b7cde 2022-11-14T13:03:52 Workaround for views being in portrait instead of landscape mode on iOS 16 Fixes https://github.com/libsdl-org/SDL/issues/6289
Sam Lantinga 9f784b18 2022-11-14T10:58:59 The iOS and tvOS demos link SDL statically, not as a framework
pionere b886f4c6 2022-11-14T17:35:28 events: eliminate redundant code in SDL_SendEditingText
pionere dad8df3e 2022-11-14T08:20:31 video: check graphics flags the same way in SDL_RecreateWindow as in SDL_CreateWindow - single check to validate the graphics flags - check it before tearing down the window
Frank Praznik eef4d3c8 2022-11-13T16:56:04 wayland: Clamp wl_seat version on older versions of libwayland Clamp the wl_seat max version to 5 if being built against a version of libwayland below 1.21.0, or containers that bundle newer versions of SDL with older versions of libwayland can break if the compositor advertises support for a protocol version above 5.
Sam Lantinga 67498926 2022-11-13T11:09:20 Fixed warning Fixes https://github.com/libsdl-org/SDL/issues/5842
Sam Lantinga 1b0277da 2022-11-13T11:08:37 Move SDL_mslibc.c into the source file list
Ethan Lee c4b9f621 2022-11-13T12:45:13 x11: Add support for the Steam Deck on-screen keyboard
pionere 5f2a1231 2022-11-13T08:00:03 video: check graphics flags the same way as the type flags
pionere 22354b41 2022-11-12T08:29:15 video: simplify window-type check in SDL_CreateWindow
Ryan C. Gordon 85aa9b8b 2022-11-11T13:47:36 wasapi: Favor the system resampler again, for now. Reference Issue #5538.
Sam Lantinga 9f8b68a2 2022-11-11T10:24:17 Fixed building without linux/input.h https://github.com/libsdl-org/SDL/issues/6169
Sam Lantinga b7e65a81 2022-11-11T08:57:07 Fixed incorrect WGI controller state when the application loses focus Recenter the controller elements when WGI stops reporting valid state Fixes https://github.com/libsdl-org/SDL/issues/5261
Michael Fitzmayer 875e9b35 2022-10-26T15:19:28 N-Gage: additional cleanup
Michael Fitzmayer afbafc2a 2022-10-21T08:11:48 Remove redundant dependency to bitdraw.h, minor cleanup
pionere d09edcbc 2022-11-11T12:10:27 video: sync Metal_CreateView with GL_CreateContext and Vulkan_CreateSurface no need to check if _this->Metal_CreateView, since it is already checked in Re(create)Window
pionere b71d9274 2022-11-11T12:09:15 video: add NOT_AN_OPENGL_WINDOW define (similar to NOT_A_VULKAN_WINDOW)
pionere 36c6ed4b 2022-11-11T08:33:55 video: add SDL_DllNotSupported - add SDL_DllNotSupported and use it to sync the behavior of SDL_GL_LoadLibrary with SDL_Vulkan_LoadLibrary
Ozkan Sezer dd44cacb 2022-11-11T12:51:30 remove duplicated SDL_hidapi_steam.c additions to watcom makefiles.
Sam Lantinga 0dfc829a 2022-11-10T19:16:53 Added simple BLE Steam Controller support on all platforms This is still disabled by default via the hint SDL_HINT_JOYSTICK_HIDAPI_STEAM
Sam Lantinga f430ef5d 2022-11-10T17:27:48 Don't change the window position when creating it on iOS, it is already placed on the correct display
Sam Lantinga 7c05ea0a 2022-11-10T13:35:40 Added mappings for the GameSir T3 and T4 Pro controllers
Sam Lantinga 404cb276 2022-11-10T13:28:03 Added macOS mappings for the Nintendo Switch Pro Controller over Bluetooth
pionere 29cafa9c 2022-11-10T08:23:16 add SDL_ContextNotSupported and validate flags in SDL_RecreateWindow similar to SDL_CreateWindow
Ryan C. Gordon 1008cc8e 2022-11-09T12:55:27 video: Add some braces to match SDL coding style.
pionere ac3349fa 2022-11-09T09:11:04 solve FIXMEs in SDL_video.c
pionere e5c599f8 2022-11-09T09:02:23 fix SOLARIS_ATOMICS - use 'sizeless' int types (int uses 32-bit even if _LP64 is set)
pionere b095df7f 2022-11-08T08:39:43 simplify MSC_ATOMICS - use _Interlocked(Compare)ExchangePointer in case of _M_IX86 as well - improve assertions: 1. add assertions to SDL_AtomicAdd/SDL_AtomicSet and SDL_AtomicCAS 2. use sizeof(a->value) instead of sizeof(int)
meyraud705 3dc88da0 2022-11-08T13:27:56 Fix Dualshock 4 rumble stopping too early Dualshock 4 controller only rumbles for 5 seconds maximum. Resend rumble command every 2 seconds to make long rumble work.
Sam Lantinga 6432f45a 2022-11-08T10:27:21 Don't treat the Nintendo IMU as a separate game controller on Linux
Sam Lantinga 2e3b4f3f 2022-11-08T07:50:51 Don't send rumble to the Amazon Luna controller on macOS Sending rumble to the Amazon Luna controller on macOS gets there, but IOHIDDeviceSetReport() blocks for a long time and eventually fails. This appears to be a bug in the macOS Bluetooth stack, ref rdar://99265496
Sam Lantinga 02bc359b 2022-11-07T19:31:18 Shorten "Bensussen Deutsch & Associates,Inc.(BDA)" to "BDA" for controller names
Ryan C. Gordon b0dc6709 2022-11-07T14:26:48 coreaudio: Don't use deprecated kAudioObjectPropertyElementMaster symbol. Fixes #6449.
Ozkan Sezer db01016d 2022-11-07T21:15:30 revert replace AM_PATH_SDL2 usage with corresponding PKG_CHECK_MODULES. Reference issue: https://github.com/libsdl-org/SDL/issues/6494 .
pionere e873d609 2022-11-07T10:02:06 fix handling of SDL_EventQ.active - SDL_EventQ.active is a bool variable -> do not use SDL_AtomicGet/Set, it does not help in any way - protect SDL_EventQ.active with SDL_EventQ.lock - set SDL_EventQ.active to FALSE by default
pionere eb670742 2022-11-07T09:05:32 better SDL_AtomicGet(Ptr) implementation
Ozkan Sezer 64c93f78 2022-11-06T23:51:04 replace AM_PATH_SDL2 usage with corresponding PKG_CHECK_MODULES.
Hubert Maier 5dc93451 2022-11-06T20:49:37 JANITORIAL : Correct some more spelling mistakes (#6489)
Sam Lantinga c2675d74 2022-11-06T10:52:20 Revert "cocoa: Discard the IME Candidate Window immediately when Escape is pressed" This reverts commit 0d76e2a8a1a8e6a2801123587c2205a288d49406, as it introduced other issues: https://github.com/libsdl-org/SDL/pull/6486#issuecomment-1304684865
Sam Lantinga f2ce7c5f 2022-11-06T08:23:08 Added the G29 as a PlayStation controller
Sam Lantinga 9d1dbd2a 2022-11-06T01:16:52 Added note about trigger rumble availability across third-party Xbox One controllers
Sam Lantinga e7a56323 2022-11-06T01:43:05 Make sure we wait after sending the rumble packet when initializing the PowerA Xbox One Mini Wired Controller
Sam Lantinga 6875e62a 2022-11-06T01:15:20 Make sure we don't send Xbox controllers rumble so quickly that it overwhelms the firmware Fixes https://github.com/libsdl-org/SDL/issues/6435
Sam Lantinga 38af459d 2022-11-06T01:15:19 Fixed potential clobbering of packets of different types using SDL_HIDAPI_SendRumble()
Sam Lantinga e45cb5b1 2022-11-06T01:15:18 Fixed initializing the PowerA Xbox One Mini Wired Controller
Edward Li 0d76e2a8 2022-11-06T04:59:02 cocoa: Discard the IME Candidate Window immediately when Escape is pressed
Sam Lantinga 15a98909 2022-11-05T16:44:52 Added SDL_HINT_HIDAPI_IGNORE_DEVICES to specify devices that should be ignored in SDL_hid_enumerate()
Sam Lantinga 297ecb70 2022-11-05T15:58:30 Added SDL_strcasestr() for a case insensitive version of SDL_strstr()
Sam Lantinga a4626dea 2022-11-05T14:24:41 Fixed initializing the PDP Xbox One and Victrix Gambit controllers
Sam Lantinga 7e11b09b 2022-11-05T13:50:37 The PowerA Xbox One Mini Wired Controller works with the HIDAPI driver now
Sam Lantinga a2d66b6a 2022-11-05T13:12:10 SDL_GameControllerMapping() should return the string for the actual mapping that was used when opening a gamecontroller, rather than do a GUID match again Also don't match against the zero guid if that happens to be in the mapping list for some reason
Stefan Sperling f3bf543e 2022-11-05T15:21:29 recognize game controllers connected via raphnet technologies WUSBMote v2.2 This is a USB adapter for controllers shipped with Nintendo's NES-mini and SNES-mini consoles. Tested with both NES and SNES controllers, buttons map as expected on both.
Sam Lantinga 24cdebe4 2022-11-05T10:34:08 Added the hint SDL_HINT_JOYSTICK_HIDAPI_XBOX_ONE_HOME_LED to control the brightness of the Xbox button LED on the Xbox One controller
Ryan C. Gordon 78f97108 2022-11-05T10:38:33 audio: Avoid accumulation errors in resampler. Fixes #6391.
David Edmundson 689218eb 2022-11-04T12:07:20 Fix wayland reconnection paths Most of this code is disabled out for now. - For mouse cursors we have a wl_surface for both system and custom cursors which needs recreating. - The other patch is about nullification after deletions
Sam Lantinga 33a68f57 2022-11-03T16:02:58 Added Linux mappings for the Logitech G29 in PS3 and PS4 modes
Sam Lantinga c70e6759 2022-11-03T12:37:54 Wait a bit for devices to initialize before trying to enumerate and open them. This works around udev event nodes arriving before hidraw nodes and the controller being opened twice - once using the Linux driver and once by the HIDAPI driver. This also fixes a kernel panic on Steam Link hardware due to trying to open the hidraw device node too early. A delay of 10 ms seems to be a good value, tested on Steam Link hardware.