Commit Graph

12138 Commits (689ea5361e89b425f98965cc77fab1981babd464)

Author SHA1 Message Date
Ryan C. Gordon 1e5e8e2fda
resampler: Work at double precision on x86-64 machines.
We get audio artifacts if we don't work at the higher precision, but
this is painful on CPUs that have to use a software fallback for this,
so for now (that is, until we have a better solution), get better output
on amd64 chips, where the cost is less painful.
2023-02-21 13:00:20 -05:00
Ryan C. Gordon 357bc8ca5c
resampler: correctly save off left padding.
I don't know if we ever actually hit this in practice, but if this isn't
replacing the whole buffer, it needs to slide the end of the existing padding
over to the start before adding in the new data.
2023-02-21 13:00:19 -05:00
Sam Lantinga 1a15d506a6 Removed duplicated conditional 2023-02-20 18:24:52 -08:00
Sam Lantinga 02cea5fca1 Fixed rumble caps for the Nintendo Joy-Con controllers 2023-02-20 17:14:18 -08:00
Sam Lantinga 4994654d4f Added support for the Razer Wolverine V2 controllers 2023-02-20 15:14:20 -08:00
Sam Lantinga e8091b8983 cocoa/gles: do not unload EGL when context is destroyed 2023-02-20 10:40:54 -08:00
Marc-André Lureau 93861e1de0 windows/gles: do not unload EGL when context is destroyed
It's legitimate to have multiple contexts.

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
2023-02-20 10:40:19 -08:00
Marc-André Lureau 654965a628 windows/gles: correct indentation
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
2023-02-20 10:40:19 -08:00
Sam Lantinga 5d3cf61e8b Don't call SDL_GetDisplayIndex(0) when creating or positioning a window
Fixes https://github.com/libsdl-org/SDL/issues/7354
2023-02-20 10:38:13 -08:00
Anonymous Maarten f1202fccdc cmake: create SDL3::SDL3-shared for VC and Xcode devel package 2023-02-20 00:43:53 +01:00
Anonymous Maarten 213fbd01c5 SDL_endian.h: improve doxygen documentation 2023-02-19 10:01:33 -08:00
Anonymous Maarten 549cedfa88 include: add \brief to includes 2023-02-19 10:01:33 -08:00
Anonymous Maarten 0625695898 docs: Fix doxyfile 2023-02-19 10:01:33 -08:00
Anonymous Maarten efdc92802f Fix -Wunused-function warning when configuring with -DSDL_X11_XINPUT2=OFF 2023-02-19 09:59:12 -08:00
Anonymous Maarten 0e2866f846 Fix -Wunused-variable warning when configuring with -DSDL_X11_XRANDR=OFF 2023-02-19 09:59:12 -08:00
Anonymous Maarten cfadb4c106 Fix -Wunused-variable warning when configuring with -DSDL_X11_XSHAPE=OFF 2023-02-19 09:59:12 -08:00
Sam Lantinga ced02319a6 Fixed typo (thanks @Iniquitatis!) 2023-02-19 09:57:35 -08:00
Lauri Kasanen 0123d6311d Fix GetGlobalMouseState when xi2 is not available at runtime 2023-02-19 09:56:08 -08:00
Sam Lantinga 24d419c09f Updated documentation for SDL3_DYNAMIC_API
Fixes https://github.com/libsdl-org/SDL/issues/7347
2023-02-19 09:54:47 -08:00
Ozkan Sezer 964a877eb3 SDL_x11dyn.h: include XInput2.h also for Xfixes
Fixes https://github.com/libsdl-org/SDL/issues/7343
2023-02-11 23:51:28 +03:00
Anonymous Maarten 18f38bef03 Remove include/SDL3/SDL_name.h 2023-02-18 12:33:54 -08:00
Le Philousophe a67ae8eed5 Fix window size in X11 when window manager refuses to resize 2023-02-18 12:31:46 -08:00
Ozkan Sezer b5a7bd72df minor tidy-up. 2023-02-18 11:29:10 +03:00
Sylvain c88becc87a Fix kmsdrm build 2023-02-18 08:12:52 +01:00
Alexandros Koutroulis a2251d1093
SDL_SetWindowIcon now reports errors. (#7081) 2023-02-17 16:17:27 -08:00
Anonymous Maarten dc138ee3d4 cmake: SDL3-shared target will always be a shared target 2023-02-17 23:42:03 +01:00
Anonymous Maarten 6ae1578691 ci: cache PVR_PSP2 and gl4es4vita 2023-02-17 21:29:22 +01:00
Sam Lantinga eede2066fb Added other names for the DragonRise Inc. Wired Wheel (thanks @felimwhiteley!) 2023-02-17 11:29:27 -08:00
Frank Praznik 39e6d4a891 Set the window width and height when moving 2023-02-17 09:25:01 -05:00
Sam Lantinga 630c23ce17 You can move fullscreen desktop windows between displays using SDL_SetWindowPosition() 2023-02-16 17:28:56 -08:00
Sam Lantinga 64b88115ec SDL_SetWindowFullscreen() now takes a boolean value 2023-02-16 17:28:35 -08:00
Sam Lantinga 6c04c6f090 Fixed SDL_SetWindowSize() and SDL_SetWindowPosition()
The backend code expected window->x,y,w,h to be set when updating size and position
2023-02-16 16:59:15 -08:00
Anonymous Maarten d3b7308ee7 ci: install pkg-config on Macos runner 2023-02-16 13:59:23 -08:00
Anonymous Maarten 4d8a50912b cmake: no shared SDL libraries for riscos 2023-02-16 13:59:23 -08:00
Anonymous Maarten e203046a5c cmake+ci: build shared and static libraries on ci 2023-02-16 13:59:23 -08:00
Sam Lantinga bde4c738bb Don't build SDL as a static library by default
Linking with SDL dynamically allows end users to update SDL with bug fixes and new controller support and is recommended. This change makes it so SDL is dynamic by default and developers can build SDL themselves with a static option if that's something they need.
2023-02-16 13:59:23 -08:00
Sam Lantinga ece8a7bb8e Hold the joystick lock while opening the HID device on non-Android platforms
On Windows the main thread can be enumerating DirectInput devices while the Windows.Gaming.Input thread is calling back with a new controller available, and in this case HIDAPI_IsDevicePresent() returned false since the controller initialization hadn't completed yet, creating a duplicate controller.

Fixes https://github.com/libsdl-org/SDL/issues/7304
2023-02-16 09:50:04 -08:00
Sam Lantinga 96722a5809 Ubuntu 18.04 doesn't have a new enough version of Wayland for SDL, so update documentation appropriately
Reference https://github.com/libsdl-org/SDL/issues/7271
2023-02-16 08:57:53 -08:00
Sylvain 03e69fbc0c Fix potential de-referencing null pointer in SDL_EVDEV_kbd_keycode() 2023-02-16 08:22:37 +01:00
Sylvain b44d3699b1 Fixed most small problems reported by cppcheck for src/core PR #7307 (from @kevin2kevin2) 2023-02-16 08:22:37 +01:00
Sam Lantinga bcd97b36d2 Fixed Steam Runtime sandbox detection
Fixes hotplug issues on Steam Deck for Proton and native games
2023-02-15 13:53:57 -08:00
Frank Praznik 4187c6c08c video: Select the closest mode for the target refresh rate accounting for small variations
Use the delta of the target refresh rate and the refresh rate of the mode to select the closest matching display mode, as the actual closest mode may have a slightly lower rate than the target by a small fraction of a hz (e.g 59.98 vs 60.0).
2023-02-15 10:07:46 -05:00
Frank Praznik 3f5ef7dd42 video: Handle moving exclusive fullscreen windows between displays
Desktops can move windows, even exclusive fullscreen windows, from one display to another. To handle this, windows now hold two fullscreen modes: the desired mode, which is considered mutable only to the application, and the current mode. When a fullscreen request is made, the current mode is initially set to the desired mode for the initial fullscreen transition. If an exclusive fullscreen window is moved to a new display, the new display is checked to see if it has a mode compatible with the desired mode. If it does, the compatible mode is used so the windows will have the same properties on the new display. If no compatible mode is found, the window becomes desktop fullscreen. This occurs whenever the window is moved to ensure that an attempt will always be made to use the application's requested mode, if possible.

Exiting and reentering fullscreen results in the desired mode being restored on the display specified by it.
2023-02-15 10:07:46 -05:00
Eric Wasylishen 1f46986d33
testwm.c: show all modes of all displays in the on-screen list (#7323)
* testwm.c: show all modes of all displays in the on-screen list

To allow testing https://github.com/libsdl-org/SDL/pull/7317
2023-02-14 21:05:00 -08:00
Sam Lantinga beb6a2afdc Map the Android MENU button back to the SDL MENU key
Thanks to @AntTheAlchemist for the investigation!

Fixes https://github.com/libsdl-org/SDL/issues/7318
2023-02-14 18:02:12 -08:00
Sam Lantinga 5925cd4ef3 Fixed handling simple mode PS4 reports
Fixes https://github.com/libsdl-org/SDL/issues/7270
2023-02-14 17:51:16 -08:00
Sam Lantinga 284ae91734 Include SDL_events.h for SDL_ConvertEventToRenderCoordinates() 2023-02-13 17:50:29 -08:00
Sam Lantinga b39b7025fd SDL_GL_GetDrawableSize, SDL_Metal_GetDrawableSize, and SDL_Vulkan_GetDrawableSize can be replaced with SDL_GetWindowSizeInPixels 2023-02-13 13:11:43 -08:00
Ozkan Sezer c6792f78df look for clock_gettime() in libc first, then in librt if not found. 2023-02-13 11:23:12 -08:00
Frank Praznik 9370f9ca85 wayland: Deduplicate calls to position fullscreen windows already on the correct output 2023-02-13 13:25:16 -05:00