-
Notifications
You must be signed in to change notification settings - Fork 8
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Update SDL2 port with latest changes from upstream #8
base: master
Are you sure you want to change the base?
Commits on Oct 29, 2018
-
Configuration menu - View commit details
-
Copy full SHA for 5fb7a3e - Browse repository at this point
Copy the full SHA 5fb7a3eView commit details
Commits on Sep 30, 2019
-
Configuration menu - View commit details
-
Copy full SHA for bc395f6 - Browse repository at this point
Copy the full SHA bc395f6View commit details
Commits on Mar 25, 2020
-
cocoa: allow calling CreateWindowFrom on an NSView
This lets applications embed SDL with other widgets surrounding it. Already possible on Windows and X11. Fixes Bugzilla #5060. --HG-- extra : rebase_source : 4e31c8c5b15cf001b3f4eae63d79e1620b351b67
Configuration menu - View commit details
-
Copy full SHA for b213315 - Browse repository at this point
Copy the full SHA b213315View commit details
Commits on Apr 7, 2020
-
wasapi: Improve WASAPI audio backend latency (thanks, Anthony!).
Anthony Pesch's notes on his patch: "Currently, the WASAPI backend creates a stream in shared mode and sets the device's callback size to be half of the shared stream's total buffer size. This works, but doesn't coordinate will with the actual hardware. The hardware will raise an interrupt after every period which in turn will signal the object being waited on inside of WaitDevice. From my empirical testing, the callback size was often larger than the period size and not a multiple of it, which resulted in poor latency when trying to time an application based on the audio callback. The reason for this looked something like: * The device's callback would be called and and the audio buffer was filled. * WaitDevice would be called. * The hardware would raise an interrupt after one period. * WaitDevice would resume, see that a a full callback had not been played and then wait again. * The hardware would raise an interrupt after another period. * WaitDevice would resume, see that a full callback + some extra amount had been played and then it would again call our callback and this process would repeat. The effect of this is that the pacing between subsequent callbacks is poor - sometimes it's called very quickly, sometimes it's called very late. By matching the callback's size to the stream's period size, the pacing of calls to the user callback is improved substantially. I didn't write an actual test for this, but my use case for this was my Dreamcast emulator (https://redream.io) which uses the audio callback to help drive the emulation speed. Without this change and with the default shared stream buffer (which has a period of ~10ms) I would get frame times that were between ~3-30 milliseconds; after this change I get frame times of ~11-22 milliseconds. Note, this patch also has a change that removes passing a duration to the Initialize call. It seems that the default duration used (when 0 is passed) does typically match up with the duration returned by GetDevicePeriod, however the Initialize docs say: > To set the buffer to the minimum size required by the engine thread, the > client should call Initialize with the hnsBufferDuration parameter set to 0. > Following the Initialize call, the client can get the size of the resulting > buffer by calling IAudioClient::GetBufferSize. This change isn't strictly required, but I made it to hopefully rule out another source of unexpected latency." Fixes Bugzilla #4592. --HG-- extra : histedit_source : cc22ed774514f2596fed80632d7f6d60035b6b95
Configuration menu - View commit details
-
Copy full SHA for 51ae135 - Browse repository at this point
Copy the full SHA 51ae135View commit details -
Configuration menu - View commit details
-
Copy full SHA for 1c00dd6 - Browse repository at this point
Copy the full SHA 1c00dd6View commit details
Commits on Apr 8, 2020
-
Configuration menu - View commit details
-
Copy full SHA for 1d701e2 - Browse repository at this point
Copy the full SHA 1d701e2View commit details -
Configuration menu - View commit details
-
Copy full SHA for 631a144 - Browse repository at this point
Copy the full SHA 631a144View commit details -
Configuration menu - View commit details
-
Copy full SHA for 5e4393b - Browse repository at this point
Copy the full SHA 5e4393bView commit details -
Add perforce support to showrev.sh
In order to generate meaningful output from SDL_GetRevision()
Configuration menu - View commit details
-
Copy full SHA for b3e9b93 - Browse repository at this point
Copy the full SHA b3e9b93View commit details -
Revert "Fix incorrectly terminated MakeThreadHighPriority dbus message"
The first terminator is for input parameters. The second terminator was for the output parameters. If an error occurs when calling MakeThreadHighPriority(), e.g. a bad thread id, then the reply from connection_send_with_reply_and_block() will be null.
Configuration menu - View commit details
-
Copy full SHA for 146248e - Browse repository at this point
Copy the full SHA 146248eView commit details -
SDL: ps4 controller trigger bits on other controllers just mean that …
…there's some activity, not saturation - only force it on if the analog value is 0.
Configuration menu - View commit details
-
Copy full SHA for 28d4068 - Browse repository at this point
Copy the full SHA 28d4068View commit details -
Configuration menu - View commit details
-
Copy full SHA for 6350e06 - Browse repository at this point
Copy the full SHA 6350e06View commit details -
Configuration menu - View commit details
-
Copy full SHA for 803db9c - Browse repository at this point
Copy the full SHA 803db9cView commit details -
Configuration menu - View commit details
-
Copy full SHA for 933e012 - Browse repository at this point
Copy the full SHA 933e012View commit details
Commits on Apr 9, 2020
-
Configuration menu - View commit details
-
Copy full SHA for cbc4794 - Browse repository at this point
Copy the full SHA cbc4794View commit details -
Configuration menu - View commit details
-
Copy full SHA for c9d48bc - Browse repository at this point
Copy the full SHA c9d48bcView commit details -
Configuration menu - View commit details
-
Copy full SHA for 90d6218 - Browse repository at this point
Copy the full SHA 90d6218View commit details -
Configuration menu - View commit details
-
Copy full SHA for 9eacab8 - Browse repository at this point
Copy the full SHA 9eacab8View commit details -
emscripten: Let SDL_GetDisplayUsableBounds return the size of the window
This does not account for scrollbars nor margins. But is much better then returning the full display size when not running fullscreen, but for example in an iframe.
Configuration menu - View commit details
-
Copy full SHA for 44f412e - Browse repository at this point
Copy the full SHA 44f412eView commit details -
emscripten: Pass canvas id to request_pointer_lock
Fixes pointer lock with DISABLE_DEPRECATED_FIND_EVENT_TARGET_BEHAVIOR=1
Configuration menu - View commit details
-
Copy full SHA for db8351e - Browse repository at this point
Copy the full SHA db8351eView commit details -
emscripten: Add a few keyCode mappings for German keyboards
From @sy2002 in emscripten-ports/SDL2#108
Configuration menu - View commit details
-
Copy full SHA for 320ffa0 - Browse repository at this point
Copy the full SHA 320ffa0View commit details
Commits on Apr 10, 2020
-
metal: Added some support interfaces to Apple's Metal API (thanks, Ca…
…leb!). Caleb Cornett's comments: "A few weeks ago, Alex added a partial Metal API to SDL2: https://hg.libsdl.org/SDL/rev/b87ba0fad17e I noticed it was missing a few features that would help Metal become a first-class citizen in SDL, so I went ahead and wrote them! Here are the new APIs: 1. SDL_WINDOW_METAL flag for SDL_CreateWindow(). This allows the programmer to specify that they intend to create a window for use with SDL_MetalView. The flag is used to ensure correct usage of the API and to prevent accidentally defaulting to OpenGL on iOS. 2. SDL_Metal_GetLayer(). This function takes a SDL_MetalView and returns a pointer to the view's backing CAMetalLayer. This simplifies things considerably, since in the current version of the SDL_Metal API the programmer is required to bridge-cast a SDL_MetalView handle to an NSView or UIView (depending on the platform) and then extract the layer from there. SDL_Metal_GetLayer automatically handles all of that, making the operation simple and cross-platform. 3. SDL_Metal_GetDrawableSize(). This function already exists in the current SDL_Metal API (and is used behind-the-scenes for SDL_Vulkan_GetDrawableSize on Apple platforms) but was not publicly exposed. My patch exposes this function for public use. It works just like you'd expect. Tested on macOS 10.14 and iOS 12.4." Fixes Bugzilla #4796.
Configuration menu - View commit details
-
Copy full SHA for ce16f94 - Browse repository at this point
Copy the full SHA ce16f94View commit details -
Configuration menu - View commit details
-
Copy full SHA for 8c6b90d - Browse repository at this point
Copy the full SHA 8c6b90dView commit details -
render: Scale relative mouse motion better for logical sizing
From hmk: "When scaling is enabled (e.g. via SDL_RenderSetLogicalSize, size not equal to window size), mouse motion events are also scaled. Small motions are rounded up (SDL_max() when the value after scaling is less than 1), while larger motions are truncated by the floating point -> integer conversion. https://hg.libsdl.org/SDL/file/18ede62f3f14/src/render/SDL_render.c#l658 The end result feels something like mouse reverse mouse acceleration + angle snapping at low speeds, but less consistent (amount of truncation & rounding depends on how fast the mouse is moved) and potentially much worse if the scaling factor is large. This pretty much makes it useless for anything where you need precise mouse aiming (think of games). I suspect this is why aiming gets so terrible in some games that let you use scaling to reduce the render resolution (e.g. Ion Fury). With 4x4 scaling, I can reproduce a situation where it takes three fast flicks of the mouse across the pad to undo one slow sweep across the pad. In other words, extreme reverse acceleration. This does not happen when scaling is disabled. Furthermore, any game that uses relative mouse motion events for 3D camera rotation probably wants the raw mouse deltas and not a value that depends on scaling and resolution and rounding and truncation. Ideal camera rotation just takes mouse input, multiplies it by sensitivity, and adds it to the angle-in-radians or whatever measure is used for yaw & pitch. Pixels and screen resolution or window dimensions should not be a part of the equation at all, even if it could be implemented without rounding errors. [...] This [patch] completely eliminates angle snapping for me, and makes sensitivity consistent. In other words, it's completely usable for, say, aiming in a first person shooter." Partially fixes Bugzilla #4811. --HG-- extra : histedit_source : 9ddb125b0f448d9bba5c3ba73c22babafbbab2ad
hmk committedApr 10, 2020 Configuration menu - View commit details
-
Copy full SHA for 36dfe47 - Browse repository at this point
Copy the full SHA 36dfe47View commit details
Commits on Apr 11, 2020
-
build: Merge pkg-config Libs.private into Libs for static-only builds
A project being built entirely statically will call pkg-config with --static, which utilises the Libs.private field. Conversely it will not use --static when not being built entirely statically, even if there is only a static build of SDL available. This will most likely cause the build to fail due to underlinking unless we merge the Libs fields. This is what the Meson build system does when it generates pkg-config files. This also also follows the behaviour of sdl2-config. At the same time, the runtime linker flags are not applicable to static-only builds so only add them for shared builds.
Configuration menu - View commit details
-
Copy full SHA for 3cb2522 - Browse repository at this point
Copy the full SHA 3cb2522View commit details
Commits on Apr 12, 2020
-
build: Don't duplicate Libs in Libs.private in pkg-config file
pkg-config already prepends Libs to Libs.private when you specify --static so there's no need to duplicate them. Most other projects don't do this.
Configuration menu - View commit details
-
Copy full SHA for 4f71b42 - Browse repository at this point
Copy the full SHA 4f71b42View commit details -
video: NULL out pointer to freed window surface
This behavior matches SDL_RecreateWindow and makes it less likely that another piece of code (e.g. a DestroyWindowFramebuffer implementation) will attempt to use or free the stale surface pointer.
Configuration menu - View commit details
-
Copy full SHA for d2960c1 - Browse repository at this point
Copy the full SHA d2960c1View commit details
Commits on Apr 13, 2020
-
Partial fix for bug 5086 - CMake builds on Windows broken by sensor s…
…upport (thanks DominikD!)
Configuration menu - View commit details
-
Copy full SHA for cf179cb - Browse repository at this point
Copy the full SHA cf179cbView commit details -
Configuration menu - View commit details
-
Copy full SHA for b1621d3 - Browse repository at this point
Copy the full SHA b1621d3View commit details -
Configuration menu - View commit details
-
Copy full SHA for c6c9f83 - Browse repository at this point
Copy the full SHA c6c9f83View commit details -
opengl: Allow SDL_GL_MakeCurrent() to accept a NULL window (thanks, M…
…artin!). This allows you to bind surfaceless contexts on a background thread to, for example, load assets in a separate context, for platforms that have different requirements about sharing surfaces, etc. Martin's notes on the matter: "Here's a patch that enables passing NULL windows to SDL_GL_MakeCurrent, if the involved APIs allow it. Currently, this is only the case for EGL, and even then only if some specific extensions are present (which they usually are). If "surfaceless" contexts are not supported, SDL_GL_MakeCurrent continues to generate an error (albeit with a more specific error message than it used to), so this should not break anything that wasn't broken before." (Please see https://bugzilla.libsdl.org/show_bug.cgi?id=3695 for more discussion.) Fixes Bugzilla #3695.
Configuration menu - View commit details
-
Copy full SHA for b04f324 - Browse repository at this point
Copy the full SHA b04f324View commit details -
Configuration menu - View commit details
-
Copy full SHA for d1f1257 - Browse repository at this point
Copy the full SHA d1f1257View commit details -
SDL_EGL_ChooseConfig: don't fall through if no matching format exists
On Raspberry Pi 3 via the VC4 driver in firmware KMS mode, none of the found configs match the desired format, causing the function to fall through without any config being selected. Fix by first iterating over the found configs, and if no match exists, don't exclude the non-matching configs. This should fix RPI3 and possibly other targets without breaking targets that have a matching native format (such as RPI4).
Configuration menu - View commit details
-
Copy full SHA for 8172100 - Browse repository at this point
Copy the full SHA 8172100View commit details -
cmake: use check_symbol_exists, not check_function_exists (thanks, Ma…
…nuel!) This fixes the problem where we think iOS has fseeko64, etc, but doesn't. Fixes Bugzilla #4885.
Configuration menu - View commit details
-
Copy full SHA for e27e383 - Browse repository at this point
Copy the full SHA e27e383View commit details -
Configuration menu - View commit details
-
Copy full SHA for 2a9cf95 - Browse repository at this point
Copy the full SHA 2a9cf95View commit details -
Configuration menu - View commit details
-
Copy full SHA for d470617 - Browse repository at this point
Copy the full SHA d470617View commit details -
Configuration menu - View commit details
-
Copy full SHA for 5a71124 - Browse repository at this point
Copy the full SHA 5a71124View commit details -
egl: Attempt to make this compile on WinRT, etc.
--HG-- extra : rebase_source : 11c3478b651613c87e6813937ae35e9abc65936e
Configuration menu - View commit details
-
Copy full SHA for 56ab0e5 - Browse repository at this point
Copy the full SHA 56ab0e5View commit details -
Configuration menu - View commit details
-
Copy full SHA for f2273aa - Browse repository at this point
Copy the full SHA f2273aaView commit details -
Configuration menu - View commit details
-
Copy full SHA for 85c6265 - Browse repository at this point
Copy the full SHA 85c6265View commit details
Commits on Apr 14, 2020
-
Configuration menu - View commit details
-
Copy full SHA for f44d454 - Browse repository at this point
Copy the full SHA f44d454View commit details -
render: Fixed compiler warning about implicit cast.
--HG-- extra : rebase_source : bc2b6eb3a0d9f459569e414b560715d9825a90b0
Configuration menu - View commit details
-
Copy full SHA for 0fbc5e3 - Browse repository at this point
Copy the full SHA 0fbc5e3View commit details -
opengl: Don't try to do Desktop OpenGL stuff if support isn't available.
--HG-- extra : rebase_source : 083533ff3a9a5c9404a65e4fefafeed9fffc9ae9
Configuration menu - View commit details
-
Copy full SHA for b4361c5 - Browse repository at this point
Copy the full SHA b4361c5View commit details -
Configuration menu - View commit details
-
Copy full SHA for df596e3 - Browse repository at this point
Copy the full SHA df596e3View commit details -
Configuration menu - View commit details
-
Copy full SHA for 689cd73 - Browse repository at this point
Copy the full SHA 689cd73View commit details -
Configuration menu - View commit details
-
Copy full SHA for 66d5e63 - Browse repository at this point
Copy the full SHA 66d5e63View commit details -
Configuration menu - View commit details
-
Copy full SHA for 8432efb - Browse repository at this point
Copy the full SHA 8432efbView commit details -
Configuration menu - View commit details
-
Copy full SHA for 199748d - Browse repository at this point
Copy the full SHA 199748dView commit details -
Configuration menu - View commit details
-
Copy full SHA for d039a7e - Browse repository at this point
Copy the full SHA d039a7eView commit details -
Fixed bug 4299 - A recent change requires Core Bluetooth framework on…
… iOS Caleb Cornett Just ran into this, and from my testing, whatever re-added the dependency is a _major_ regression. Not only is your app forced to link with CoreBluetooth, but iOS has apparently tightened up security and won't even let you _test_ your app unless it specifies the NSBluetoothAlwaysUsageDescription in an Info.plist. It doesn't even pop up an error message, it just straight up crashes. Adding the permission isn't a good solution either, since I'd really, really rather not have my app request users' bluetooth to always be enabled, especially if the only apparent reason is for Steam Controller support.
Configuration menu - View commit details
-
Copy full SHA for fe6624d - Browse repository at this point
Copy the full SHA fe6624dView commit details -
Configuration menu - View commit details
-
Copy full SHA for 3e5d053 - Browse repository at this point
Copy the full SHA 3e5d053View commit details -
Configuration menu - View commit details
-
Copy full SHA for 92b4716 - Browse repository at this point
Copy the full SHA 92b4716View commit details -
Configuration menu - View commit details
-
Copy full SHA for 72213d6 - Browse repository at this point
Copy the full SHA 72213d6View commit details -
Fixed bug 5091 - Suspicious condition in HIDAPI_DriverXbox360_UpdateX…
…Input meyraud705 On line 220 of SDL_hidapi_xbox360.c https://hg.libsdl.org/SDL/file/d0ef8ec6a2eb/src/joystick/hidapi/SDL_hidapi_xbox360.c#l220 if (!XINPUTGETSTATE(user_index, &xinput_state[user_index].state) == ERROR_SUCCESS) { logical not is only applied to the left hand side of this comparison. I think you mean: if (XINPUTGETSTATE(user_index, &xinput_state[user_index].state) != ERROR_SUCCESS) {
Configuration menu - View commit details
-
Copy full SHA for 9be0c61 - Browse repository at this point
Copy the full SHA 9be0c61View commit details -
Configuration menu - View commit details
-
Copy full SHA for 526d328 - Browse repository at this point
Copy the full SHA 526d328View commit details
Commits on Apr 15, 2020
-
Configuration menu - View commit details
-
Copy full SHA for c54c9c6 - Browse repository at this point
Copy the full SHA c54c9c6View commit details -
Configuration menu - View commit details
-
Copy full SHA for b125b96 - Browse repository at this point
Copy the full SHA b125b96View commit details -
Configuration menu - View commit details
-
Copy full SHA for ded4215 - Browse repository at this point
Copy the full SHA ded4215View commit details -
hidapi: Blacklist the Razer Lycosa keyboard from enumeration.
It's not a joystick and it hangs device enumeration.
Configuration menu - View commit details
-
Copy full SHA for dc5800a - Browse repository at this point
Copy the full SHA dc5800aView commit details
Commits on Apr 17, 2020
-
Configuration menu - View commit details
-
Copy full SHA for ca99d73 - Browse repository at this point
Copy the full SHA ca99d73View commit details -
Don't send rumble packets too quickly to Nintendo Switch Pro controll…
…ers over Bluetooth
Configuration menu - View commit details
-
Copy full SHA for aafa6b6 - Browse repository at this point
Copy the full SHA aafa6b6View commit details -
Configuration menu - View commit details
-
Copy full SHA for 3d9cfce - Browse repository at this point
Copy the full SHA 3d9cfceView commit details
Commits on Apr 18, 2020
-
Configuration menu - View commit details
-
Copy full SHA for 81ac6f1 - Browse repository at this point
Copy the full SHA 81ac6f1View commit details -
Configuration menu - View commit details
-
Copy full SHA for 4ddd4c4 - Browse repository at this point
Copy the full SHA 4ddd4c4View commit details
Commits on Apr 19, 2020
-
Added a Windows Gaming Input joystick driver
This driver supports the Razer Atrox Arcade Stick Some of the quirks of this driver, inherent in Windows Gaming Input: * There will never appear to be controllers connected at startup. You must support hot-plugging in order to see these controllers. * You can't read the state of the guide button * You can't get controller events in the background
Configuration menu - View commit details
-
Copy full SHA for d415791 - Browse repository at this point
Copy the full SHA d415791View commit details -
Configuration menu - View commit details
-
Copy full SHA for 6c1a450 - Browse repository at this point
Copy the full SHA 6c1a450View commit details
Commits on Apr 20, 2020
-
joystick: On disconnect, recenter all game controller inputs.
The joystick layer can't necessarily give us perfect centering, but we know that the game controller level has logical absolute idle positions that have nothing to do with the physical device. So send game controller events to make it look like the device is completely untouched before sending the final removal event.
Configuration menu - View commit details
-
Copy full SHA for 8e26ee2 - Browse repository at this point
Copy the full SHA 8e26ee2View commit details -
Configuration menu - View commit details
-
Copy full SHA for 0e82947 - Browse repository at this point
Copy the full SHA 0e82947View commit details
Commits on Apr 21, 2020
-
SDL_error: simplified error string management.
This patch removes deferred error string formatting: now we do it during SDL_SetError(), so there's no limit on printf-style arguments used. Also removes stub for managing error string translations; we don't have the facilities to maintain that and the way we set arbitrary error strings doesn't really make this practical anyhow. Since the final error string is set right away and unique to the thread, we no longer need a static buffer for legacy SDL_GetError(), and we don't have to allocate 5x 128-byte argument fields per-thread. Also, since we now use SDL_vsnprintf instead of parsing the format string ourselves, there's a lot of code deleted and we have access to more robust formatting powers now. This does mean the final error strings can't be more than 128 bytes, down from the theoretical maximum of around 768, but I think this is probably okay. They might truncate but they will always be null-terminated! Fixes Bugzilla #5092.
Configuration menu - View commit details
-
Copy full SHA for cb8b41a - Browse repository at this point
Copy the full SHA cb8b41aView commit details -
hid: Add Razer Arctosa keyboard to hid enumeration blacklist.
Hangs SDL, same as the Razer Lycosa. Fixes Bugzilla #5101.
Configuration menu - View commit details
-
Copy full SHA for f4b1652 - Browse repository at this point
Copy the full SHA f4b1652View commit details
Commits on Apr 22, 2020
-
Added support for the following controllers:
* PDP Afterglow Switch Controller * Thrustmaster ESwap Pro PS4 controller * Giotek VX4 * Generic PS4 controller vid/pid that several knock offs use
Configuration menu - View commit details
-
Copy full SHA for 1c8786c - Browse repository at this point
Copy the full SHA 1c8786cView commit details -
Configuration menu - View commit details
-
Copy full SHA for c8b01e2 - Browse repository at this point
Copy the full SHA c8b01e2View commit details -
Configuration menu - View commit details
-
Copy full SHA for c6b7c40 - Browse repository at this point
Copy the full SHA c6b7c40View commit details
Commits on Apr 23, 2020
-
Configuration menu - View commit details
-
Copy full SHA for 350c2f2 - Browse repository at this point
Copy the full SHA 350c2f2View commit details -
Configuration menu - View commit details
-
Copy full SHA for 100f2b2 - Browse repository at this point
Copy the full SHA 100f2b2View commit details -
Added support for the following controllers:
* 8BitDo N30 Pro 2 * 8BitDo SN30 Gamepad * 8BitDo SN30 Pro+ * 8BitDo Zero 2 * SZMY-POWER PC Gamepad * ThrustMaster eSwap PRO Controller * ZEROPLUS P4 Wired Gamepad In additional, all 8BitDo controllers use SDL_HINT_GAMECONTROLLER_USE_BUTTON_LABELS to have the correct mapping based on user preferences.
Configuration menu - View commit details
-
Copy full SHA for bc9e742 - Browse repository at this point
Copy the full SHA bc9e742View commit details -
Configuration menu - View commit details
-
Copy full SHA for cf961d9 - Browse repository at this point
Copy the full SHA cf961d9View commit details
Commits on Apr 24, 2020
-
cmake: various Haiku settings were accidentally under "if(SDL_VIDEO)"
--HG-- extra : histedit_source : c2ba84e713e3e9a755cd46e8600db117da6bbab8
Configuration menu - View commit details
-
Copy full SHA for 2b3a520 - Browse repository at this point
Copy the full SHA 2b3a520View commit details -
Configuration menu - View commit details
-
Copy full SHA for 8e7e9e6 - Browse repository at this point
Copy the full SHA 8e7e9e6View commit details
Commits on Apr 26, 2020
-
Enable Xbox One HIDAPI driver on macOS
The Xbox One HIDAPI driver is required on macOS for Xbox One S Bluetooth support since https://hg.libsdl.org/SDL/rev/2c4ec356333e
Configuration menu - View commit details
-
Copy full SHA for 1913806 - Browse repository at this point
Copy the full SHA 1913806View commit details
Commits on Apr 27, 2020
-
Configuration menu - View commit details
-
Copy full SHA for b11a08c - Browse repository at this point
Copy the full SHA b11a08cView commit details
Commits on Apr 28, 2020
-
Added additional logging to track down why the NVIDIA controller does…
…n't send the back button
Configuration menu - View commit details
-
Copy full SHA for e739f2b - Browse repository at this point
Copy the full SHA e739f2bView commit details
Commits on Apr 29, 2020
-
Configuration menu - View commit details
-
Copy full SHA for fd196c4 - Browse repository at this point
Copy the full SHA fd196c4View commit details
Commits on May 2, 2020
-
Fixed bug 5112 - CMake won't compile in VS2019
dark_sylinc Trying to build SDL with VS2019 using CMake will encounter a linking error More specifically: 1>SDL_string.obj : error LNK2019: unresolved external symbol memset referenced in function SDL_vsnprintf_REAL
Configuration menu - View commit details
-
Copy full SHA for fc20f07 - Browse repository at this point
Copy the full SHA fc20f07View commit details
Commits on May 4, 2020
-
Configuration menu - View commit details
-
Copy full SHA for a0cc4ab - Browse repository at this point
Copy the full SHA a0cc4abView commit details -
hints: Allow specifying audio device metadata.
This is only supported on PulseAudio. You can set a description when opening your audio device that will show up in pauvcontrol, which lets you set per-stream volume levels. Fixes Bugzilla #4801.
Configuration menu - View commit details
-
Copy full SHA for 3273588 - Browse repository at this point
Copy the full SHA 3273588View commit details -
Configuration menu - View commit details
-
Copy full SHA for 55e242b - Browse repository at this point
Copy the full SHA 55e242bView commit details -
Improvement for bug 3446 - The haptic API does not allow to select th…
…e direction axes meyraud705 I see how the documentation is confusing. I think that the choice of the axis is an implementation detail. The documentation should state the goal of this value, so I propose this wording: "Use this value to play an effect on the steering wheel axis. This provides better compatibility across platforms and devices as SDL will guess the correct axis." Value could even be renamed 'SDL_HAPTIC_STEERING_AXIS'. For Linux, sending an effect on the X axis with a Logitech wheel works. Others brands don't have driver for Linux as far as I know.
Configuration menu - View commit details
-
Copy full SHA for b050d66 - Browse repository at this point
Copy the full SHA b050d66View commit details -
Fixed bug 5121 - Use SDL_calloc instead of calloc in Wayland_CreateWi…
…ndow meyraud705 'SDL_Windows::driverdata' of a Wayland window is allocated by calloc in 'Wayland_CreateWindow' but freed by SDL_free in 'Wayland_DestroyWindow'.
Configuration menu - View commit details
-
Copy full SHA for 044699a - Browse repository at this point
Copy the full SHA 044699aView commit details -
locale: Implemented SDL_GetPreferredLocales().
This was something I proposed a long time ago, Sylvain Becker did additional work on it, then back to me. Fixes Bugzilla #2131.
Configuration menu - View commit details
-
Copy full SHA for 483f803 - Browse repository at this point
Copy the full SHA 483f803View commit details
Commits on May 5, 2020
-
stdlib: Fixed compiler warnings about int vs size_t.
--HG-- extra : rebase_source : d761f0279b8c2a7476a62664aba15ff12d741ca6
Configuration menu - View commit details
-
Copy full SHA for b239a1d - Browse repository at this point
Copy the full SHA b239a1dView commit details
Commits on May 6, 2020
-
hid: Cleanup Windows joystick blacklist code, to make additions easier.
--HG-- extra : amend_source : 7a864d451f6bc11e948cabe2905fef21118fe0c9
Configuration menu - View commit details
-
Copy full SHA for 22e8a66 - Browse repository at this point
Copy the full SHA 22e8a66View commit details -
hid: Add Microsoft Precision Mouse to the joystick blacklist.
Same deal as the Razer keyboards, it hangs the enumeration.
Configuration menu - View commit details
-
Copy full SHA for fae6a64 - Browse repository at this point
Copy the full SHA fae6a64View commit details -
ControllerList: add NACON Revolution Unlimited (and it's dongle) and …
…NACON Daija fight stick.
Configuration menu - View commit details
-
Copy full SHA for 7bb7c48 - Browse repository at this point
Copy the full SHA 7bb7c48View commit details -
ControllerList: add PDP Faceoff Deluxe Audio Switch Controller and HO…
…RI Real Arcade Pro V Switch Edition
Configuration menu - View commit details
-
Copy full SHA for 1f33869 - Browse repository at this point
Copy the full SHA 1f33869View commit details -
Configuration menu - View commit details
-
Copy full SHA for 5ea56b4 - Browse repository at this point
Copy the full SHA 5ea56b4View commit details
Commits on May 8, 2020
-
Configuration menu - View commit details
-
Copy full SHA for 285fdba - Browse repository at this point
Copy the full SHA 285fdbaView commit details -
Configuration menu - View commit details
-
Copy full SHA for 2dfaaa3 - Browse repository at this point
Copy the full SHA 2dfaaa3View commit details -
Configuration menu - View commit details
-
Copy full SHA for 4ae1cbb - Browse repository at this point
Copy the full SHA 4ae1cbbView commit details -
Configuration menu - View commit details
-
Copy full SHA for f0da7de - Browse repository at this point
Copy the full SHA f0da7deView commit details
Commits on May 11, 2020
-
Fixed bug 5103 - Port fcitx support to both fcitx 4 & 5
wengxt Due to the new major fcitx version is coming close, the existing code need to be ported to use new Fcitx dbus interface. The new dbus interface is supported by both fcitx 4 and 5, and has a good side effect, which is that it will work with flatpak for free. Also the patch remove the dependency on fcitx header. Instead, it just hardcodes a few enum value in the code so need to handle the different header for fcitx4 or 5.
Configuration menu - View commit details
-
Copy full SHA for d51766e - Browse repository at this point
Copy the full SHA d51766eView commit details -
Fixed bug 5098 - macOS CreateWindowFrom doesn't work with high-dpi di…
…splays michaeljosephmaltese Display ends up taking only 1/4 of the screen area. It needs to call "setWantsBestResolutionOpenGLSurface:highdpi", like when creating a window the normal way.
Configuration menu - View commit details
-
Copy full SHA for 70187b1 - Browse repository at this point
Copy the full SHA 70187b1View commit details
Commits on May 13, 2020
-
emscripten: Fix crash in SDL_SetWindowTitle().
This patch came from emscripten-ports, thanks! Fixes Bugzilla #5133.
Configuration menu - View commit details
-
Copy full SHA for 69ddb59 - Browse repository at this point
Copy the full SHA 69ddb59View commit details
Commits on May 15, 2020
-
docs: Linux systems don't need to install wayland-protocols anymore.
We ship the protocol xml files we need with SDL's sources now.
Configuration menu - View commit details
-
Copy full SHA for 03c1db3 - Browse repository at this point
Copy the full SHA 03c1db3View commit details -
Configuration menu - View commit details
-
Copy full SHA for 114fa3f - Browse repository at this point
Copy the full SHA 114fa3fView commit details -
Configuration menu - View commit details
-
Copy full SHA for c5c3850 - Browse repository at this point
Copy the full SHA c5c3850View commit details -
Fixed bug 5100 - compilation CMake Android armeabi-v7a (Thanks Steve …
…Robinson!) fatal error: 'cpu-features.h' file not found on CMake Android armeabi-v7a
Configuration menu - View commit details
-
Copy full SHA for 2812131 - Browse repository at this point
Copy the full SHA 2812131View commit details -
Configuration menu - View commit details
-
Copy full SHA for f1e51f7 - Browse repository at this point
Copy the full SHA f1e51f7View commit details
Commits on May 17, 2020
-
Fix issue with colorkey, palette and format conversion
Set the colorkey information on the converted surface. Test-case in bug 3826/2979, conflicting with bug 4798
Configuration menu - View commit details
-
Copy full SHA for d5360e5 - Browse repository at this point
Copy the full SHA d5360e5View commit details -
Configuration menu - View commit details
-
Copy full SHA for 3e7e51f - Browse repository at this point
Copy the full SHA 3e7e51fView commit details
Commits on May 18, 2020
-
emscripten-buildbot.sh: target WebAssembly instead of asm.js.
Fixes Bugzilla #5132. --HG-- extra : rebase_source : 482ad3c0eb7cac010aa5dc915895777fe6b141f4
Configuration menu - View commit details
-
Copy full SHA for 5a62990 - Browse repository at this point
Copy the full SHA 5a62990View commit details -
Configuration menu - View commit details
-
Copy full SHA for 61371ac - Browse repository at this point
Copy the full SHA 61371acView commit details -
Configuration menu - View commit details
-
Copy full SHA for dc4aa30 - Browse repository at this point
Copy the full SHA dc4aa30View commit details
Commits on May 19, 2020
-
Configuration menu - View commit details
-
Copy full SHA for 8b322a5 - Browse repository at this point
Copy the full SHA 8b322a5View commit details -
Configuration menu - View commit details
-
Copy full SHA for 32e2974 - Browse repository at this point
Copy the full SHA 32e2974View commit details -
Configuration menu - View commit details
-
Copy full SHA for e65ab51 - Browse repository at this point
Copy the full SHA e65ab51View commit details -
Configuration menu - View commit details
-
Copy full SHA for 71b8f0e - Browse repository at this point
Copy the full SHA 71b8f0eView commit details -
Configuration menu - View commit details
-
Copy full SHA for de89c9b - Browse repository at this point
Copy the full SHA de89c9bView commit details -
Configuration menu - View commit details
-
Copy full SHA for 8a1cfd4 - Browse repository at this point
Copy the full SHA 8a1cfd4View commit details -
Configuration menu - View commit details
-
Copy full SHA for 6e73a73 - Browse repository at this point
Copy the full SHA 6e73a73View commit details -
Configuration menu - View commit details
-
Copy full SHA for 3c84d11 - Browse repository at this point
Copy the full SHA 3c84d11View commit details -
Configuration menu - View commit details
-
Copy full SHA for 5fc645f - Browse repository at this point
Copy the full SHA 5fc645fView commit details -
Configuration menu - View commit details
-
Copy full SHA for 1186ff2 - Browse repository at this point
Copy the full SHA 1186ff2View commit details -
Configuration menu - View commit details
-
Copy full SHA for abb3fc4 - Browse repository at this point
Copy the full SHA abb3fc4View commit details -
Configuration menu - View commit details
-
Copy full SHA for 57f8169 - Browse repository at this point
Copy the full SHA 57f8169View commit details -
Configuration menu - View commit details
-
Copy full SHA for 51dab0b - Browse repository at this point
Copy the full SHA 51dab0bView commit details -
configure: Not all compilers understand -idirafter, use -I instead.
If this is a problem, we can write a test for the compiler flag, but shouldn't we _always_ use our Khronos headers instead of depending on the system...?
Configuration menu - View commit details
-
Copy full SHA for 2957c14 - Browse repository at this point
Copy the full SHA 2957c14View commit details -
Configuration menu - View commit details
-
Copy full SHA for be6618f - Browse repository at this point
Copy the full SHA be6618fView commit details -
configure: Do a real check for -idirafter anyhow.
(The CMake project cheats around this by asking "are we GCC or Clang?" and I'm inclined to leave it like that for now.)
Configuration menu - View commit details
-
Copy full SHA for 5f5cd26 - Browse repository at this point
Copy the full SHA 5f5cd26View commit details -
configure: -idirafter needs a space, -I doesn't.
Some compilers are apparently quite cranky about the -I not having a space!
Configuration menu - View commit details
-
Copy full SHA for e1e7561 - Browse repository at this point
Copy the full SHA e1e7561View commit details -
configure: Just don't do the -idirafter on QNX.
The compiler understands it, but the "qcc" compiler driver doesn't, and the standard Khronos headers upset QNX anyhow, since they try to include X11 headers in the __unix__ section.
Configuration menu - View commit details
-
Copy full SHA for 67dd8af - Browse repository at this point
Copy the full SHA 67dd8afView commit details
Commits on May 20, 2020
-
Configuration menu - View commit details
-
Copy full SHA for 1d31eb0 - Browse repository at this point
Copy the full SHA 1d31eb0View commit details -
Otherwise Unix systems without D-Bus support will attempt to compile sources they can't handle.
Configuration menu - View commit details
-
Copy full SHA for c003ee7 - Browse repository at this point
Copy the full SHA c003ee7View commit details -
Configuration menu - View commit details
-
Copy full SHA for b62836d - Browse repository at this point
Copy the full SHA b62836dView commit details -
Configuration menu - View commit details
-
Copy full SHA for 38d4244 - Browse repository at this point
Copy the full SHA 38d4244View commit details -
Configuration menu - View commit details
-
Copy full SHA for 693c2e7 - Browse repository at this point
Copy the full SHA 693c2e7View commit details -
Configuration menu - View commit details
-
Copy full SHA for a790889 - Browse repository at this point
Copy the full SHA a790889View commit details -
Configuration menu - View commit details
-
Copy full SHA for b18cf52 - Browse repository at this point
Copy the full SHA b18cf52View commit details -
Configuration menu - View commit details
-
Copy full SHA for cfccc40 - Browse repository at this point
Copy the full SHA cfccc40View commit details
Commits on May 21, 2020
-
Configuration menu - View commit details
-
Copy full SHA for 300683a - Browse repository at this point
Copy the full SHA 300683aView commit details -
Configuration menu - View commit details
-
Copy full SHA for 7a74e35 - Browse repository at this point
Copy the full SHA 7a74e35View commit details -
Configuration menu - View commit details
-
Copy full SHA for 36ea254 - Browse repository at this point
Copy the full SHA 36ea254View commit details -
Configuration menu - View commit details
-
Copy full SHA for 587f7fc - Browse repository at this point
Copy the full SHA 587f7fcView commit details
Commits on May 22, 2020
-
Configuration menu - View commit details
-
Copy full SHA for 307655c - Browse repository at this point
Copy the full SHA 307655cView commit details
Commits on May 25, 2020
-
Configuration menu - View commit details
-
Copy full SHA for 7b1bc6a - Browse repository at this point
Copy the full SHA 7b1bc6aView commit details
Commits on May 26, 2020
-
Make some changes to SDL_SetThreadPriority to try and have SDL transp…
…arently handle more of the work. 1. Comment that SDL_SetThreadPriority will make any necessary system changes when applying priority. 2. Add a hint to override SDL's default behavior for scheduler policy. 3. Modify the pthreads SDL_SetThreadPriority so that instead of just using the current thread scheduler policy it will change it to a policy that should work best for the requested priority. 4. Add hint checks in SDL_SetThreadPriority so that rsn8887#3 can be overridden if desired. 5. Modify the Linux SDL_SetThreadPriority so that in the case that policy, either by SDL defaults or from the hint, is a realtime policy it uses the realtime rtkit API. 6. Prior to calling rtkit on Linux make the necessary thread state changes that rtkit requires. Currently this is done every time as it isn't expected that SDL_SetThreadPriority will be called repeatedly for a thread.
Configuration menu - View commit details
-
Copy full SHA for c501536 - Browse repository at this point
Copy the full SHA c501536View commit details -
Configuration menu - View commit details
-
Copy full SHA for 5c02671 - Browse repository at this point
Copy the full SHA 5c02671View commit details -
Configuration menu - View commit details
-
Copy full SHA for 4d0c34f - Browse repository at this point
Copy the full SHA 4d0c34fView commit details -
Configuration menu - View commit details
-
Copy full SHA for 2a9d4f7 - Browse repository at this point
Copy the full SHA 2a9d4f7View commit details -
Configuration menu - View commit details
-
Copy full SHA for ec212af - Browse repository at this point
Copy the full SHA ec212afView commit details -
Configuration menu - View commit details
-
Copy full SHA for 50ff857 - Browse repository at this point
Copy the full SHA 50ff857View commit details -
Configuration menu - View commit details
-
Copy full SHA for 90c00aa - Browse repository at this point
Copy the full SHA 90c00aaView commit details -
Fixed bug 5140 - KMSDRM: Dynamic vsync toggle does not work
Manuel Alfayate Corchete The KMSDRM backend was doing things wrong because of some small (but important) misconceptions on how KMS/DRM works: to implement a largely broken non-vsync refresh mechanism, the SwapWindow() function was issuing new pageflips before previous ones had completed, thus causing EBUSY returns, buffer mismanagement, etc... resulting in general breakage on vsync disabling from apps, that would not allow vsync to work again without KMSDRM video re-initialization. To further clarify, on most DRM drivers async pageflips are NOT working nowadays, so all issued pageflips will complete on next VBLANK, NOT ASAP (calling drmModePageFlip() with the DRM_MODE_PAGE_FLIP_ASYNC flag will return error). The old code was assuming that can just issue a synchronous (=on VBLANK) pageflip and then pass a 0 timeout to the pull() function so we do not wait for the pageflip event, thinking that this will lead to correct non-vsynced screen updates from the program: That is plain wrong. Each pageflip has to be waite before issuing a new one, ALWAYS. And if we do not support ASYNC pageflips on the DRM driver level, then we are forced to wait for the next VBLANK. There is no way around it. I have also added many comments on the KMSDRM code. This is needed for future reference for me or others who may need to look at this code: KMS/DRM terminology regarding what SYNC and ASYNC mean in pageflip terms, and where to do certain things and why, is not trivial. It is not desirable or possible to invest time on researching the same concepts every time there is need to dive into this code. So please leave all these comments in the patch.
Configuration menu - View commit details
-
Copy full SHA for 6deb980 - Browse repository at this point
Copy the full SHA 6deb980View commit details -
Fixed bug 5141 - KMSDRM: manage SDL_GetGlobalMouseState()
Manuel Alfayate Corchete On the KMSDRM backend, there is no such thing as a desktop, yet some programs could (and DO) use SDL_GetGlobalMouseState(). So I think its good idea that, in KMSDRM, it returns the same mouse coordinates anyway as SDL_GetMouseState() would return. There is nothing else it could return, as far as I can understand, since there is no desktop anyway. This small patch does precisely that.
Configuration menu - View commit details
-
Copy full SHA for c3c77ca - Browse repository at this point
Copy the full SHA c3c77caView commit details -
Configuration menu - View commit details
-
Copy full SHA for 64e95be - Browse repository at this point
Copy the full SHA 64e95beView commit details -
cocoa: Change Caps Lock behavior to toggle instead of locking
It currently behaves like a locking key which is pressed when Caps Lock is enabled and released when disabled. This means that apps that trigger events on Caps Lock key down will only fire these events every other time Caps Lock is pressed.
Configuration menu - View commit details
-
Copy full SHA for 8d6ee6e - Browse repository at this point
Copy the full SHA 8d6ee6eView commit details
Commits on May 27, 2020
-
Configuration menu - View commit details
-
Copy full SHA for 9171f4a - Browse repository at this point
Copy the full SHA 9171f4aView commit details -
Configuration menu - View commit details
-
Copy full SHA for a6c6c27 - Browse repository at this point
Copy the full SHA a6c6c27View commit details -
Configuration menu - View commit details
-
Copy full SHA for 4b924fe - Browse repository at this point
Copy the full SHA 4b924feView commit details -
Configuration menu - View commit details
-
Copy full SHA for 6ec495c - Browse repository at this point
Copy the full SHA 6ec495cView commit details -
Configuration menu - View commit details
-
Copy full SHA for 18e8dbb - Browse repository at this point
Copy the full SHA 18e8dbbView commit details -
Configuration menu - View commit details
-
Copy full SHA for 611dbfb - Browse repository at this point
Copy the full SHA 611dbfbView commit details -
Configuration menu - View commit details
-
Copy full SHA for 4d869dd - Browse repository at this point
Copy the full SHA 4d869ddView commit details -
Configuration menu - View commit details
-
Copy full SHA for b29708d - Browse repository at this point
Copy the full SHA b29708dView commit details -
Configuration menu - View commit details
-
Copy full SHA for 7bcf671 - Browse repository at this point
Copy the full SHA 7bcf671View commit details
Commits on May 28, 2020
-
wayland: assert that mmap() didn't return NULL.
In practice, it never _would_, but in theory it _might_, so this assertion tells the static analyzer not to worry about it.
Configuration menu - View commit details
-
Copy full SHA for a0030e7 - Browse repository at this point
Copy the full SHA a0030e7View commit details -
wayland: Move buffer copy into mime_data_list_add()
It makes it clearer who owns the memory, and more reasonable to free it on failure in the creating function. (and, of course, pacifies static analysis.)
Configuration menu - View commit details
-
Copy full SHA for 0474257 - Browse repository at this point
Copy the full SHA 0474257View commit details -
wayland: Changed output removal in handle_surface_leave()
No longer needs an extra malloc, handles unexpected cases like the same output being listed twice.
Configuration menu - View commit details
-
Copy full SHA for 35374aa - Browse repository at this point
Copy the full SHA 35374aaView commit details
Commits on May 29, 2020
-
SDL_blit: Fix undefined bitshift operations
Arithmatic operations promote Uint8 to signed int. If the top bit of a Uint8 is set, and it is left shifted 24 places, then the result is not representable in a signed 32 bit int. This would be undefined behaviour on systems where int is 32 bits.
Configuration menu - View commit details
-
Copy full SHA for 7a4179c - Browse repository at this point
Copy the full SHA 7a4179cView commit details -
Fixed bug 5161 - Autodetect controller mappings based on the Linux Ga…
…mepad Specification Jan Bujak I wrote a new driver for my gamepad on Linux. I'd like SDL to support it out-of-box, as currently it just treats it as a generic joystick instead of a gamepad. From what I can see the only way to do that is to either 1) pick one of the already supported controllers' PID, VID and button layouts and have my driver send that (effectively lying that it's something else), or 2) submit a preconfigured, hardcoded mapping to SDL. Both of those, in my opinion, are silly when we already have the Linux Gamepad Specification which standarizes this: https://www.kernel.org/doc/html/v4.15/input/gamepad.html Unfortunately SDL doesn't make use of it currently. So I've took it upon myself to add it; patch is in the attachments. Basically what the patch does is that if SDL finds no built-it controller mappings for a given joystick it then asks the joystick backend to autodetect it, and that uses the relevant evdev bits to figure out which button/axis is which. (See the specs for more details.) With this patch applied my own driver for my controller works out-of-box with SDL with no extra configuration and is correctly recognized as a gamepad; this is also going to be the case for any other driver which follows the Linux Gamepad Specification.
Configuration menu - View commit details
-
Copy full SHA for 550d1a0 - Browse repository at this point
Copy the full SHA 550d1a0View commit details -
Configuration menu - View commit details
-
Copy full SHA for 1378c64 - Browse repository at this point
Copy the full SHA 1378c64View commit details -
Configuration menu - View commit details
-
Copy full SHA for b991942 - Browse repository at this point
Copy the full SHA b991942View commit details -
Configuration menu - View commit details
-
Copy full SHA for f8430b7 - Browse repository at this point
Copy the full SHA f8430b7View commit details -
- Added exception handler for the new SecurityException in USBDevice …
…getSerialNumber
Sockmonsters committedMay 29, 2020 Configuration menu - View commit details
-
Copy full SHA for 85c1d40 - Browse repository at this point
Copy the full SHA 85c1d40View commit details -
Don't bother logging security exception getting the device serial number
This can happen anytime we haven't opened the device yet
Configuration menu - View commit details
-
Copy full SHA for 5cfcd98 - Browse repository at this point
Copy the full SHA 5cfcd98View commit details -
Fixed bug 5146 - SDL_RenderFillRect doesn't work in DirectFB
Lacky It looks like refactoring of SDL2 internal API has broken SDL_RenderFillRect for DirectFB. In new version function SDL_RenderFillRect returns 0, but rectangle is not visible. Replacing "count" with "len" in the argument list for SDL_memcpy in DirectFB_QueueFillRects fixes problem.
Configuration menu - View commit details
-
Copy full SHA for 30e46de - Browse repository at this point
Copy the full SHA 30e46deView commit details -
Fixed bug 5145 - Fix whitespace in SDL_vulkan.h
Colin Caine Everywhere else seems to use spaces. See patch diffed from a fresh hg checkout yesterday.
Configuration menu - View commit details
-
Copy full SHA for bfaba1e - Browse repository at this point
Copy the full SHA bfaba1eView commit details -
Fixed bug 5105 - sndio support not working in dynamic mode (dlopen)
Giovanni Bajo The CMake build system supports several audio frameworks for Linux: one of them is sndio. All frameworks can be built with "runtime linking" (that is, using dlopen to load the library at runtime). In sdlchecks.cmake, there's code to do the same with sndio: ================================================================= # Requires: # - n/a # Optional: # - SNDIO_SHARED opt # - HAVE_DLOPEN opt macro(CheckSNDIO) if(SNDIO) # TODO: set include paths properly, so the sndio headers are found check_include_file(sndio.h HAVE_SNDIO_H) find_library(D_SNDIO_LIB sndio) if(HAVE_SNDIO_H AND D_SNDIO_LIB) set(HAVE_SNDIO TRUE) file(GLOB SNDIO_SOURCES ${SDL2_SOURCE_DIR}/src/audio/sndio/*.c) set(SOURCE_FILES ${SOURCE_FILES} ${SNDIO_SOURCES}) set(SDL_AUDIO_DRIVER_SNDIO 1) if(SNDIO_SHARED) if(NOT HAVE_DLOPEN) message_warn("You must have SDL_LoadObject() support for dynamic sndio loading") else() FindLibraryAndSONAME("sndio") set(SDL_AUDIO_DRIVER_SNDIO_DYNAMIC "\"${SNDIO_LIB_SONAME}\"") set(HAVE_SNDIO_SHARED TRUE) endif() else() list(APPEND EXTRA_LIBS ${D_SNDIO_LIB}) endif() set(HAVE_SDL_AUDIO TRUE) endif() endif() endmacro() ================================================================= The feature is gated by an option called SNDIO_SHARED. It is also fully implemented in SDL_sndioaudio.c Unfortunately, it seems there is a missing line in CMakeLists.txt, so SNDIO_SHARED is not defined: ====================================================================== set_option(ALSA "Support the ALSA audio API" ${UNIX_SYS}) dep_option(ALSA_SHARED "Dynamically load ALSA audio support" ON "ALSA" OFF) set_option(JACK "Support the JACK audio API" ${UNIX_SYS}) dep_option(JACK_SHARED "Dynamically load JACK audio support" ON "JACK" OFF) set_option(ESD "Support the Enlightened Sound Daemon" ${UNIX_SYS}) dep_option(ESD_SHARED "Dynamically load ESD audio support" ON "ESD" OFF) set_option(PULSEAUDIO "Use PulseAudio" ${UNIX_SYS}) dep_option(PULSEAUDIO_SHARED "Dynamically load PulseAudio support" ON "PULSEAUDIO" OFF) set_option(ARTS "Support the Analog Real Time Synthesizer" ${UNIX_SYS}) dep_option(ARTS_SHARED "Dynamically load aRts audio support" ON "ARTS" OFF) set_option(NAS "Support the NAS audio API" ${UNIX_SYS}) set_option(NAS_SHARED "Dynamically load NAS audio API" ${UNIX_SYS}) set_option(SNDIO "Support the sndio audio API" ${UNIX_SYS}) set_option(FUSIONSOUND "Use FusionSound audio driver" OFF) dep_option(FUSIONSOUND_SHARED "Dynamically load fusionsound audio support" ON "FUSIONSOUND" OFF) ====================================================================== You can see that all frameworks define a "dep_option" NAME_SHARED, and SNDIO is the only one where the option is missing. This means that runtime loading of sndio is never activated. If sndio is found at configuration time, it is always activated in "linked" mode, so that the final binary will have a load-time dependency with libsdnio. This is unfortunate. To fix the problem, it is sufficient to add this line: dep_option(SNDIO_SHARED "Dynamically load the sndio audio API" ${UNIX_SYS} ON "SNDIO" OFF) I've verified that this fixes the bug, and sndio can now be dynamically loaded as expected.
Configuration menu - View commit details
-
Copy full SHA for 86c309a - Browse repository at this point
Copy the full SHA 86c309aView commit details
Commits on May 30, 2020
-
Fixed bug 5155 - HIDAPI_JoystickDisconnected incorrect array shift
Anthony Pesch I was looking into my own input bug and noticed an issue in the HIDAPI code while looking over it. I don't have a controller that goes down this path to test and try to provoke the issue, but it looks pretty straight forward. The memmove to shift the joystick id array on disconnect isn't scaling the size by sizeof(SDL_JoystickID), likely corrupting the ids on disconnect.
Configuration menu - View commit details
-
Copy full SHA for 1fa548e - Browse repository at this point
Copy the full SHA 1fa548eView commit details -
Fixed bug 5113 - SDL_UpdateWindowSurfaceRects BitBlt the entire surfa…
…ce on Win32 Ryan C. Gordon As discussed here: https://discourse.libsdl.org/t/question-about-implementation-of-sdl-updatewindowsurfacerects/27561 "As you can see this function [WIN_UpdateWindowFramebuffer, in src/video/windows/SDL_windowsframebuffer.c] calls BitBlt on entire screen, even though it accepts the rects. Rects variable is not even used in this function at all. Now my question is why is that the case?"
Configuration menu - View commit details
-
Copy full SHA for d63b745 - Browse repository at this point
Copy the full SHA d63b745View commit details
Commits on Jun 2, 2020
-
Fixed bug 5147 - KMSDRM: SetWindowFullscreen() failing with SDL_WINDO…
…W_FULLSCREEN_DESKTOP Manuel Alfayate Corchete This patch is needed so programs that do this work as expected: 1) Start in a different video mode than the mode used by the system and then... 2) Try to go fullscreen with the mode originally used by the system via SetWindowFullScreen() with the SDL_WINDOW_FULLSCREEN_DESKTOP flag. An example would be pt2-clone in https://github.com/8bitbubsy/pt2-clone. This program does this: Starts with: video.window = SDL_CreateWindow("", SDL_WINDOWPOS_CENTERED, SDL_WINDOWPOS_CENTERED, screenW, screenH, windowFlags); and then, *IF* the user has configured it in fullscreen mode in its .ini, it tries to go fullscreen with the desktop mode: SDL_SetWindowFullscreen(video.window, SDL_WINDOW_FULLSCREEN_DESKTOP); This sequence of operations is currently failing because SDL_SetDisplayModeForDisplay() in SDL_video.c fails because display->desktop_mode is not being initialized with its correct value: SetDisplayMode() in SDL_kmsdrmvideo.c will not be able to set the mode because it detects the mode to have a driverdata of 0x0 ("if (!modedata)") and rightfully returns an error. So, the included patch fixes this small problem, and programs that first change the video mode and then try to go fullscreen with the system video mode will now work. The patch simply fixes an small omission, but its really needed now that dynamic video mode changing was implemented on the KMSDRM backend.
Configuration menu - View commit details
-
Copy full SHA for 68d5560 - Browse repository at this point
Copy the full SHA 68d5560View commit details -
Configuration menu - View commit details
-
Copy full SHA for 3384f7b - Browse repository at this point
Copy the full SHA 3384f7bView commit details
Commits on Jun 3, 2020
-
Fixed bug 5167 - Memory leak in GuessXInputDevice
meyraud705 Variable 'devices' is not freed if function GuessXInputDevice, in SDL_xinputjoystick.c, return early.
Configuration menu - View commit details
-
Copy full SHA for 2e255d5 - Browse repository at this point
Copy the full SHA 2e255d5View commit details -
Fixed bug 5168 - Memory leak in RAWINPUT_JoystickOpen
meyraud705 Variable 'hwdata' is not freed in RAWINPUT_JoystickOpen if device->driver->OpenJoystick() fails.
Configuration menu - View commit details
-
Copy full SHA for 8168f31 - Browse repository at this point
Copy the full SHA 8168f31View commit details -
video: Set window->surface NULL after freeing it.
Otherwise, when SDL_CreateWindowFramebuffer() is called again, it will return the free'd surface instead of creating a new one. --HG-- extra : rebase_source : 83e1f3f0b41d39ac1e344dd0550212e8ce75a66f
Configuration menu - View commit details
-
Copy full SHA for b7252b8 - Browse repository at this point
Copy the full SHA b7252b8View commit details -
Configuration menu - View commit details
-
Copy full SHA for 63629dd - Browse repository at this point
Copy the full SHA 63629ddView commit details -
Configuration menu - View commit details
-
Copy full SHA for 8f15e12 - Browse repository at this point
Copy the full SHA 8f15e12View commit details -
Configuration menu - View commit details
-
Copy full SHA for 5cd4900 - Browse repository at this point
Copy the full SHA 5cd4900View commit details
Commits on Jun 4, 2020
-
Configuration menu - View commit details
-
Copy full SHA for 72ab2c1 - Browse repository at this point
Copy the full SHA 72ab2c1View commit details -
Configuration menu - View commit details
-
Copy full SHA for 9637b2f - Browse repository at this point
Copy the full SHA 9637b2fView commit details -
Fixed bug 5169 - Can not build current sources because of recent thre…
…ad management changes Manuel Alfayate Corchete I'm trying to build SDL2 with threads support here in GNU/Linux, both X86 and ARM, and it does not seem to be possible ATM: /home/manuel/src/SDLLLL/src/core/linux/SDL_threadprio.c:233:26: error: 'rtkit_max_realtime_priority' undeclared (first use in this function)
Configuration menu - View commit details
-
Copy full SHA for 96f1313 - Browse repository at this point
Copy the full SHA 96f1313View commit details -
Configuration menu - View commit details
-
Copy full SHA for a042a85 - Browse repository at this point
Copy the full SHA a042a85View commit details -
Fixed exception if getManifestEnvironmentVariables() is called withou…
…t a current SDL activity
Configuration menu - View commit details
-
Copy full SHA for 4c1c6d0 - Browse repository at this point
Copy the full SHA 4c1c6d0View commit details
Commits on Jun 5, 2020
-
Configuration menu - View commit details
-
Copy full SHA for 22d12ed - Browse repository at this point
Copy the full SHA 22d12edView commit details -
Configuration menu - View commit details
-
Copy full SHA for b51a5db - Browse repository at this point
Copy the full SHA b51a5dbView commit details -
Configuration menu - View commit details
-
Copy full SHA for 0c23afd - Browse repository at this point
Copy the full SHA 0c23afdView commit details -
Configuration menu - View commit details
-
Copy full SHA for 56565f3 - Browse repository at this point
Copy the full SHA 56565f3View commit details -
Configuration menu - View commit details
-
Copy full SHA for 73885e4 - Browse repository at this point
Copy the full SHA 73885e4View commit details -
Configuration menu - View commit details
-
Copy full SHA for 5abdec7 - Browse repository at this point
Copy the full SHA 5abdec7View commit details -
Configuration menu - View commit details
-
Copy full SHA for 2a81606 - Browse repository at this point
Copy the full SHA 2a81606View commit details -
Configuration menu - View commit details
-
Copy full SHA for 9465fbd - Browse repository at this point
Copy the full SHA 9465fbdView commit details -
Configuration menu - View commit details
-
Copy full SHA for 4c9c181 - Browse repository at this point
Copy the full SHA 4c9c181View commit details -
Configuration menu - View commit details
-
Copy full SHA for 11cb0c5 - Browse repository at this point
Copy the full SHA 11cb0c5View commit details -
Configuration menu - View commit details
-
Copy full SHA for ae1a4ad - Browse repository at this point
Copy the full SHA ae1a4adView commit details -
Configuration menu - View commit details
-
Copy full SHA for 8edf0c6 - Browse repository at this point
Copy the full SHA 8edf0c6View commit details -
Configuration menu - View commit details
-
Copy full SHA for ba0d8f4 - Browse repository at this point
Copy the full SHA ba0d8f4View commit details -
Configuration menu - View commit details
-
Copy full SHA for 876b1bd - Browse repository at this point
Copy the full SHA 876b1bdView commit details -
Configuration menu - View commit details
-
Copy full SHA for 15ab332 - Browse repository at this point
Copy the full SHA 15ab332View commit details -
Configuration menu - View commit details
-
Copy full SHA for 4403843 - Browse repository at this point
Copy the full SHA 4403843View commit details -
Configuration menu - View commit details
-
Copy full SHA for fe8b179 - Browse repository at this point
Copy the full SHA fe8b179View commit details -
Configuration menu - View commit details
-
Copy full SHA for cf01ea9 - Browse repository at this point
Copy the full SHA cf01ea9View commit details -
Configuration menu - View commit details
-
Copy full SHA for 34d6bf7 - Browse repository at this point
Copy the full SHA 34d6bf7View commit details -
Configuration menu - View commit details
-
Copy full SHA for f4e0c0a - Browse repository at this point
Copy the full SHA f4e0c0aView commit details -
Configuration menu - View commit details
-
Copy full SHA for 0fc3da3 - Browse repository at this point
Copy the full SHA 0fc3da3View commit details -
Configuration menu - View commit details
-
Copy full SHA for d48f547 - Browse repository at this point
Copy the full SHA d48f547View commit details -
VITA: disable VITA_UnlockTexture, this is redundant as we directly wr…
…ite to vita2d texture data with VITA_LockTexture
Configuration menu - View commit details
-
Copy full SHA for 7418062 - Browse repository at this point
Copy the full SHA 7418062View commit details -
Configuration menu - View commit details
-
Copy full SHA for cd28557 - Browse repository at this point
Copy the full SHA cd28557View commit details -
Add software opengl implementation via osmesa port (https://github.com/Cpasjuste/osmesa-samples-psp2). This give basic SDL2/GL support. GL renderer is still disabled (should be easy to enable, just needs some testing). A common usage would use "SDL_CreateWindow(SDL_WINDOW_OPENGL)", "SDL_GL_CreateContext" and "SDL_GL_SwapWindow". Multiple GL context not supported yet (not handled).
Configuration menu - View commit details
-
Copy full SHA for 3589460 - Browse repository at this point
Copy the full SHA 3589460View commit details -
Configuration menu - View commit details
-
Copy full SHA for 5c16360 - Browse repository at this point
Copy the full SHA 5c16360View commit details -
Configuration menu - View commit details
-
Copy full SHA for 259cf2b - Browse repository at this point
Copy the full SHA 259cf2bView commit details -
Configuration menu - View commit details
-
Copy full SHA for 36c8aa8 - Browse repository at this point
Copy the full SHA 36c8aa8View commit details -
Configuration menu - View commit details
-
Copy full SHA for f507262 - Browse repository at this point
Copy the full SHA f507262View commit details -
Configuration menu - View commit details
-
Copy full SHA for 1effd5b - Browse repository at this point
Copy the full SHA 1effd5bView commit details -
Configuration menu - View commit details
-
Copy full SHA for a3dfcca - Browse repository at this point
Copy the full SHA a3dfccaView commit details -
Configuration menu - View commit details
-
Copy full SHA for 2393e4e - Browse repository at this point
Copy the full SHA 2393e4eView commit details -
Configuration menu - View commit details
-
Copy full SHA for 22c8444 - Browse repository at this point
Copy the full SHA 22c8444View commit details -
Configuration menu - View commit details
-
Copy full SHA for c837f73 - Browse repository at this point
Copy the full SHA c837f73View commit details -
Configuration menu - View commit details
-
Copy full SHA for 8cd3670 - Browse repository at this point
Copy the full SHA 8cd3670View commit details -
Configuration menu - View commit details
-
Copy full SHA for aa3115f - Browse repository at this point
Copy the full SHA aa3115fView commit details -
Configuration menu - View commit details
-
Copy full SHA for d21f64c - Browse repository at this point
Copy the full SHA d21f64cView commit details -
Configuration menu - View commit details
-
Copy full SHA for b4e1a0f - Browse repository at this point
Copy the full SHA b4e1a0fView commit details -
Configuration menu - View commit details
-
Copy full SHA for 81a41a5 - Browse repository at this point
Copy the full SHA 81a41a5View commit details -
Configuration menu - View commit details
-
Copy full SHA for a02069c - Browse repository at this point
Copy the full SHA a02069cView commit details -
Configuration menu - View commit details
-
Copy full SHA for 544a1f5 - Browse repository at this point
Copy the full SHA 544a1f5View commit details -
Configuration menu - View commit details
-
Copy full SHA for 4aedbd6 - Browse repository at this point
Copy the full SHA 4aedbd6View commit details -
Configuration menu - View commit details
-
Copy full SHA for 37bf7b6 - Browse repository at this point
Copy the full SHA 37bf7b6View commit details -
Configuration menu - View commit details
-
Copy full SHA for dd47a08 - Browse repository at this point
Copy the full SHA dd47a08View commit details -
Configuration menu - View commit details
-
Copy full SHA for 5778b0d - Browse repository at this point
Copy the full SHA 5778b0dView commit details -
Configuration menu - View commit details
-
Copy full SHA for d1fee65 - Browse repository at this point
Copy the full SHA d1fee65View commit details -
Configuration menu - View commit details
-
Copy full SHA for 690a00c - Browse repository at this point
Copy the full SHA 690a00cView commit details -
Configuration menu - View commit details
-
Copy full SHA for 13d86ea - Browse repository at this point
Copy the full SHA 13d86eaView commit details -
Configuration menu - View commit details
-
Copy full SHA for 8bdbecd - Browse repository at this point
Copy the full SHA 8bdbecdView commit details -
Configuration menu - View commit details
-
Copy full SHA for 0a5a51c - Browse repository at this point
Copy the full SHA 0a5a51cView commit details -
Calling wait_rendering_done before freeing stuffs. (rsn8887#4)
Solves a crash in OpenClaw.
Configuration menu - View commit details
-
Copy full SHA for 6520572 - Browse repository at this point
Copy the full SHA 6520572View commit details -
Configuration menu - View commit details
-
Copy full SHA for 77c6f5e - Browse repository at this point
Copy the full SHA 77c6f5eView commit details -
Configuration menu - View commit details
-
Copy full SHA for c6281eb - Browse repository at this point
Copy the full SHA c6281ebView commit details -
Configuration menu - View commit details
-
Copy full SHA for f3d23a4 - Browse repository at this point
Copy the full SHA f3d23a4View commit details -
Configuration menu - View commit details
-
Copy full SHA for fe5adc4 - Browse repository at this point
Copy the full SHA fe5adc4View commit details -
Configuration menu - View commit details
-
Copy full SHA for 8cad3a7 - Browse repository at this point
Copy the full SHA 8cad3a7View commit details -
Configuration menu - View commit details
-
Copy full SHA for 726296f - Browse repository at this point
Copy the full SHA 726296fView commit details