|
653e433c
|
2022-09-27T03:15:04
|
|
cmake: only add -Wl,--undefined=WinMain when building an executable
|
|
18046b9a
|
2022-09-26T20:53:50
|
|
Fixed crash with a NULL serial number
|
|
67fa6a93
|
2022-09-26T20:49:26
|
|
Don't wait a long time for zombie Bluetooth controllers
If a Nintendo Switch Pro controller is turned off, it will leave the controller connected in Windows, but not responding to reports. Don't wait a really long time trying to get information from a controller in this state.
|
|
67db8a91
|
2022-09-26T20:41:51
|
|
Wait for input before reconnecting a Bluetooth device
On Windows, the Bluetooth device can remain in a connected state if the controller just shut down. It won't return any errors, but it also won't generate any input reports in this state, so wait until we know for sure that the Bluetooth controller is sending data before letting the application know it's available.
|
|
71fb91f7
|
2022-09-26T21:38:09
|
|
evdev: Fix build with libudev and joystick subsystem disabled
|
|
2cc91761
|
2022-09-26T18:52:26
|
|
Removed debug logging
|
|
a205c5e2
|
2022-09-26T18:18:16
|
|
Use separate extents for simple and advanced reports
|
|
2c98c8af
|
2022-09-26T18:39:18
|
|
Use better default values for Switch controller calibration
|
|
2f9c9b5f
|
2022-09-27T02:30:43
|
|
cmake: make sure check_* uses 2 different variables for clock_gettime
|
|
81d32667
|
2022-09-27T01:59:37
|
|
cmake: make sure check_* uses 2 different variables in CheckX11
|
|
a9524ffa
|
2022-09-27T01:52:28
|
|
cmake: make sure check_c_source_compiles uses 2 different variables in CheckOSS
|
|
bfecd781
|
2022-09-27T01:08:04
|
|
cmake: use check_symbol_exists to check dlopen + need for dl library
|
|
4e375996
|
2022-09-26T17:06:18
|
|
Added a hint to return the version in the old format
Workaround for https://github.com/libsdl-org/SDL/issues/6177 for games that can't be updated.
|
|
b7fddb4c
|
2022-09-26T14:39:51
|
|
Minor tweaks
|
|
39adcc0a
|
2022-09-26T14:20:34
|
|
Prefer USB input over Bluetooth for PS5/PS5/Switch controllers
Nintendo Switch controllers will automatically turn off Bluetooth when connected over USB, but this takes care of that a little more quickly.
PS4 and PS5 controllers will happily send reports over both Bluetooth and USB, so we'll prefer USB if connected and switch back to Bluetooth if USB is disconnected.
|
|
17d7d03a
|
2022-09-26T08:12:35
|
|
Added detection of the joystick type for third party PS4 and PS5 controllers
|
|
6b75a592
|
2022-09-24T20:01:04
|
|
autotools: revised and silenced esound detection a bit.
|
|
3a6b7c9c
|
2022-09-24T16:55:10
|
|
testiconv: Print the total number of errors at the end
|
|
8d2cb155
|
2022-09-23T16:56:24
|
|
Added an entry for the ZEROPLUS P4 Wired Gamepad
|
|
cb063db6
|
2022-09-23T16:52:37
|
|
Moved XInputPS4 controllers into the PS4 controller section
|
|
5b3b7e6e
|
2022-09-23T16:46:36
|
|
Separated PS4/PS5 effects support into individual capabilities
|
|
33619aa2
|
2022-09-23T16:38:15
|
|
Added support for the ZEROPLUS P4 Wired Gamepad to the HIDAPI driver
|
|
e888c99f
|
2022-09-23T16:26:41
|
|
Fixed the entry for the Nacon PS4 Compact Controller
|
|
4ea64fee
|
2022-09-23T15:28:32
|
|
Fixed manufacturer/product name deduplication for the Razer Raiju Tournament Edition controller
|
|
56b91ea7
|
2022-09-23T15:27:40
|
|
Fixed feature detection for the Razer Raiju Tournament Edition controller
|
|
f6c9b065
|
2022-09-23T23:56:04
|
|
cmake: output libSDL2-2.0.0.dylib like autotools, not libSDL2-2.0.dylib.
libSDL2-2.0.dylib is now installed as a symlink to libSDL2-2.0.0.dylib :
$ ls -l *.dylib
-rwxr-xr-x. 1 ozkan ozkan 1755488 Sep 23 23:53 libSDL2-2.0.0.dylib
lrwxrwxrwx. 1 ozkan ozkan 19 Sep 23 23:53 libSDL2-2.0.dylib -> libSDL2-2.0.0.dylib
lrwxrwxrwx. 1 ozkan ozkan 17 Sep 23 23:53 libSDL2.dylib -> libSDL2-2.0.dylib
Reference issue: https://github.com/libsdl-org/sdl12-compat/issues/217
|
|
4a06cc0f
|
2022-09-22T13:03:09
|
|
wayland: Apply modifier changes to the text of repeated keys
The text component of a repeated keystroke is initially set when a key is first pressed and the cached value remains static until the repeated key is released and another repeatable key is pressed. If the state of a modifier such as shift or capslock is changed while a key is being repeated, the text emitted will not have the modifier applied to it until the repeated key is released and pressed again.
Update the text to be repeated by a key if a modifier is changed while a key is actively being repeated.
|
|
467c82c7
|
2022-09-23T12:31:40
|
|
wayland: Add mappings for the Escape and NumLock keys
The XKB keysym to SDL keycode mappings were missing for the Escape and NumLock keys, which prevented them from being remapped. Add them to the table so that the remapping of these keys will work.
|
|
34f928ab
|
2022-09-23T09:26:18
|
|
Generate the correct name for ASTRO Gaming controllers
Manufacturer "ASTRO Gaming" and product "ASTRO C40" turns into "ASTRO C40"
|
|
6ddef7c2
|
2022-09-23T09:20:27
|
|
Generate the correct name for Qanba and Mad Catz controllers
|
|
c2ae2ccc
|
2022-09-23T09:10:51
|
|
Added feature support for the Razer Raiju to the HIDAPI driver
|
|
5ea9886b
|
2022-09-23T13:19:22
|
|
haiku: Fix when screen color depth was 24 bits, SDL_GetWindowSurface would always fail with 'Unknown pixel format' error
Note that returning SDL_PIXELFORMAT_BGR24 instead of SDL_PIXELFORMAT_RGB24 seems necessary, otherwise when running with SDL_ACCELERATION=0, the red and blue channels of the window appeared swapped.
Note that when running with acceleration enabled, red and blue channel swapping does not happen regardless of whether SDL_PIXEL_FORMAT_RGB24 or SDL_PIXEL_FORMAT_BGR24 is returned.
For good measure, I also tested running with acceleration disabled in both 15 and 16 bit color depths, but red and blue channel swapping did not occur
|
|
51fefd1c
|
2022-09-23T02:39:35
|
|
Added support for third party PS3 controllers to the HIDAPI driver
|
|
5b4c10fc
|
2022-09-23T02:36:53
|
|
Return true from IsSupportedDevice if it's a device that we _might_ support
This forces an update of the device list so we have the correct state when we check to see whether a device is being handled by HIDAPI
|
|
1d34a524
|
2022-09-23T00:38:23
|
|
Fixed shadowed variable warning
|
|
010d3e64
|
2022-09-23T00:36:46
|
|
Fixed function prototype mismatch
|
|
b7940c29
|
2022-09-23T00:15:40
|
|
Allow HIDAPI controllers to override the default joystick type
|
|
899a1e7c
|
2022-09-22T23:54:26
|
|
Skip PS4/PS5 probe message if we already know it's a supported controller
|
|
fa2063fb
|
2022-09-22T23:42:25
|
|
Improved detection of third party PS4 and PS5 controllers
|
|
7312b93d
|
2022-09-22T22:50:28
|
|
Fixed crash if a game controller is disconnected while the connect message is in flight
|
|
aa2e2f48
|
2022-09-22T18:22:17
|
|
Make sure HID devices can be opened before making them available to the application
This prevents a number of issues where devices are enumerated but not actually able to be opened, like https://github.com/libsdl-org/SDL/issues/5781.
We currently leave the devices open, allowing us to more easily do controller feature detection, protocol negotiation, detect dropped Bluetooth connections, etc. with the expectation that the application is likely to open the controllers shortly.
|
|
2857e3c7
|
2022-09-22T15:53:32
|
|
Added an entry for the Mad Catz FightStick TE 2+ PS3
|
|
6812f1b5
|
2022-09-22T15:16:34
|
|
Fixed the entry for the HORI Fighting Commander 4 in PS4 mode
|
|
99e85cc2
|
2022-09-22T10:10:20
|
|
Accidentally reverted https://github.com/libsdl-org/SDL/commit/172865ff137532123ec06177119be163ba1811f5
|
|
6cbdc666
|
2022-09-22T09:05:06
|
|
Fixed use of uninitialized 'size' variable (thanks @ozkan!)
|
|
0c4594ac
|
2022-09-22T06:45:46
|
|
Improved PS4 and PS5 third-party controller feature detection
|
|
399cb2f0
|
2022-09-21T13:20:39
|
|
wayland: Only clear the key repeat flag when the repeated key is released
If multiple keys were simultaneously depressed and one was being repeated, the repeat flag was being cleared when any of the pressed keys were released, even if the released key wasn't the one being repeated.
This tracks the key currently being repeated and only clears the repeat flag when the particular key being repeated is released.
|
|
eb25f6c9
|
2022-09-21T14:22:38
|
|
Fixed Xbox platform name, courtesy of @walbourn
|
|
098a7a04
|
2022-09-21T10:37:02
|
|
add missing quotes to the fallback CHECK_OBJC_SOURCE_COMPILES macro
Closes: https://github.com/libsdl-org/SDL/issues/6268 .
|
|
00b67f55
|
2022-09-21T10:30:38
|
|
Fix potential memory leak in GLES_CreateTexture
|
|
301912a5
|
2022-09-18T21:25:55
|
|
Fix: Use WIN_ClientPointToSDL for converting additional mouse coordinates
|
|
08a33184
|
2022-09-18T21:40:15
|
|
Vita: fix controls on PSTV with opened IME
|
|
db225dec
|
2022-09-20T20:03:20
|
|
autotools: stop using AC_FUNC_MEMCMP and AC_FUNC_STRTOD
Closes: https://github.com/libsdl-org/SDL/issues/6266 .
|
|
dc2a682a
|
2022-09-20T09:22:43
|
|
Use the right kind of 0
|
|
24619306
|
2022-09-20T09:16:10
|
|
Fixed build on RISC OS
|
|
887ae0c6
|
2022-09-20T18:20:00
|
|
fix build failure after commit 2a8d00634ddf if strtod isn't available.
|
|
2a8d0063
|
2022-09-20T07:25:49
|
|
Fixed scanning a negative number as an unsigned value
e.g. sscanf("-1", "%zu", &v)
Thanks to @sezero for the test case
|
|
3f5c4666
|
2022-09-20T11:56:40
|
|
SDL_vsscanf: fix an uninitialized warning
|
|
216e3f10
|
2022-09-19T15:42:11
|
|
Implemented size_t format specifiers for SDL_snprintf() and SDL_sscanf()
Fixes https://github.com/libsdl-org/SDL/issues/6264
|
|
c70ffc2a
|
2022-09-19T15:34:17
|
|
Added size_t format specifier test coverage for SDL_snprintf and SDL_sscanf
|
|
101306ed
|
2022-09-19T14:37:10
|
|
Do case insensitive matching on test cases
|
|
3b20e0ec
|
2022-09-19T02:38:36
|
|
cmake: only add -Wl,--undefined=WinMain when building an executable
|
|
c8332948
|
2022-09-18T17:33:04
|
|
tests, watcom: silence lots of W202 warnings from new vulkan headers.
|
|
8598f05b
|
2022-09-17T21:45:08
|
|
Support loading 2bpp .bmp files
|
|
1f7a7fd9
|
2022-09-17T21:30:40
|
|
haiku: Combine HAIKU_ColorSpaceToBitsPerPixel and HAIKU_BPPToSDLPxFormat
|
|
dd51787e
|
2022-09-08T15:53:25
|
|
Fix SDL_PIXELFORMAT_INDEX1LSB test case
|
|
43fc6d59
|
2022-09-08T15:53:54
|
|
Fix incorrect return value in X11_GetPixelFormatFromVisualInfo
|
|
202dfea5
|
2022-09-17T14:12:13
|
|
Vita: drop memory defines
|
|
7115ceb7
|
2022-09-17T11:52:19
|
|
Vita: restore sceClibMemcmp
|
|
2e9f5b59
|
2022-09-16T15:41:35
|
|
Added support for the HORI Fighting Commander OCTA (Xbox Series X and PS versions)
|
|
5fba31f6
|
2022-09-17T00:51:00
|
|
SDL_HasPrimarySelectionText: fix -Wunreachable-code-return warning.
|
|
efe01faa
|
2022-09-16T10:08:31
|
|
Replaced Blit4to4CopyAlpha() with optimized SDL_BlitCopy()
Fixes https://github.com/libsdl-org/SDL/issues/6241
|
|
c0baa6bf
|
2022-09-16T20:03:50
|
|
move SDL_windowstaskdialog.h contents into SDL_windowsmessagebox.c
Silences clang -Wpragma warnings:
D:/a/SDL/SDL/src/video/windows/SDL_windowstaskdialog.h:21:10: warning: the current #pragma pack alignment value is modified in the included file [-Wpragma-pack]
#include <pshpack1.h>
^
D:/a/_temp/msys64/clang64/include/pshpack1.h:7:9: note: previous '#pragma pack' directive that modifies alignment is here
#pragma pack(push,1)
^
In file included from D:/a/SDL/SDL/src/video/windows/SDL_windowsmessagebox.c:35:
D:/a/SDL/SDL/src/video/windows/SDL_windowstaskdialog.h:156:10: warning: the current #pragma pack alignment value is modified in the included file [-Wpragma-pack]
#include <poppack.h>
^
note: previous '#pragma pack' directive that modifies alignment is here
2 warnings generated.
Closes: https://github.com/libsdl-org/SDL/issues/6240
|
|
82b40f09
|
2022-09-16T09:55:20
|
|
Fixed runaway CPU usage in the metal renderer when the window is minimized
|
|
5892ed43
|
2022-09-16T09:44:39
|
|
Fixed Xcode warnings on macOS
|
|
910d499c
|
2022-09-16T09:19:20
|
|
Fixed comment typo
|
|
172865ff
|
2022-09-16T09:16:18
|
|
Don't enumerate HID devices on macOS if we don't have input monitoring permissions
Unfortunately the only way to detect this is to actually try opening a device, so we wait until the application tries, and then stop enumerating afterwards.
Fixes https://github.com/libsdl-org/SDL/issues/5781
|
|
eb046958
|
2022-09-16T08:19:45
|
|
Fixed build warning
|
|
8fc133ac
|
2022-09-16T08:18:42
|
|
Updated Xcode project with new offscreen video driver files
|
|
e2753e19
|
2022-09-15T08:02:14
|
|
Calculate simulated vsync interval based on display refresh rate
|
|
208964f0
|
2022-09-15T07:05:55
|
|
Reset the simulated vsync presentation timeline if it's been too long since the last present
|
|
1663cb41
|
2022-09-15T06:30:19
|
|
Reset simulated presentation timeline when vsync status changes
|
|
d744aafb
|
2022-09-15T01:00:12
|
|
Added support for simulated vsync in the renderer
This kicks in if the platform doesn't support vsync directly, or if the present fails for some reason (e.g. minimized on some platforms)
Fixes https://github.com/libsdl-org/SDL/issues/5134
|
|
339f7a2f
|
2022-09-16T17:28:20
|
|
SDL_windows.h: guard WIN32_LEAN_AND_MEAN and STRICT macro defines.
also define them as 1, instead of empty.
Reference issue: https://github.com/libsdl-org/SDL/issues/6239
|
|
c23fb235
|
2022-09-16T17:20:56
|
|
SDL_render_d3d12.c: Fix uninitialized warning for CreateEventExFunc
|
|
d86cb8ec
|
2022-09-16T17:05:02
|
|
SDL_offscreenwindow.c: swap include order of SDL_egl_c.h/SDL_sysvideo.h
Fixes redefinition warnings from windows builds.
Reference issue: https://github.com/libsdl-org/SDL/issues/6239
|
|
5bc85d67
|
2022-09-16T06:15:45
|
|
Only advertise the SDL_PIXELFORMAT_EXTERNAL_OES format if we can build the shader for it
|
|
6de15ffc
|
2022-09-15T12:04:08
|
|
Fixed building offscreen video driver without EGL support
Also did miscellaneous style cleanup for consistency with other code
|
|
cc9638f2
|
2022-09-15T11:08:00
|
|
Regenerated configure
|
|
37effc77
|
2022-09-15T19:39:35
|
|
Build the offscreen video driver by default.
|
|
2970710b
|
2022-09-15T07:41:29
|
|
Pretty print shaders for debugging purposes
|
|
bc57d3e3
|
2022-09-15T06:57:41
|
|
Fixed OpenGL ES shader compilation on Linux
|
|
8a15a738
|
2022-09-15T06:21:19
|
|
Fixed uninitialized variable warning
|
|
61201e06
|
2022-09-15T06:17:49
|
|
Removed obsolete extension definitions
Fixes https://github.com/libsdl-org/SDL/issues/6231
|
|
6dec78ed
|
2022-09-15T11:55:04
|
|
fix permissions of SDL_opengl_glext.h
|
|
2e24708a
|
2022-09-15T11:23:50
|
|
Makefile.w32: silence lots of W202 warnings from new vulkan headers
|
|
c49faabb
|
2022-09-14T16:29:16
|
|
Sync SDL wiki -> header
|
|
ac5b9bc4
|
2022-09-14T18:28:35
|
|
Add support for X11 primary selection (#6132)
X11 has a so-called primary selection, which you can use by marking text and middle-clicking elsewhere to copy the marked text.
There are 3 new API functions in `SDL_clipboard.h`, which work exactly like their clipboard equivalents.
## Test Instructions
* Run the tests (just a copy of the clipboard tests): `$ ./test/testautomation --filter Clipboard`
* Build and run this small application:
<details>
```C
#include <SDL.h>
#include <unistd.h>
#include <stdbool.h>
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
void print_error(const char *where)
{
const char *errstr = SDL_GetError();
if (errstr == NULL || errstr[0] == '\0')
return;
fprintf(stderr, "SDL Error after '%s': %s\n", where, errstr);
SDL_ClearError();
}
int main()
{
char text_buf[256];
srand(time(NULL));
SDL_Init(SDL_INIT_VIDEO);
print_error("SDL_INIT()");
SDL_Window *window = SDL_CreateWindow("Primary Selection Test", SDL_WINDOWPOS_UNDEFINED,
SDL_WINDOWPOS_UNDEFINED, 400, 400, SDL_WINDOW_SHOWN);
print_error("SDL_CreateWindow()");
SDL_Renderer *renderer = SDL_CreateRenderer(window, -1, SDL_RENDERER_ACCELERATED);
print_error("SDL_CreateRenderer()");
bool quit = false;
unsigned int do_render = 0;
while (!quit) {
SDL_Event event;
while (SDL_PollEvent(&event)) {
print_error("SDL_PollEvent()");
switch (event.type) {
case SDL_QUIT: {
quit = true;
break;
} case SDL_KEYDOWN: {
switch (event.key.keysym.sym) {
case SDLK_ESCAPE:
case SDLK_q:
quit = true;
break;
case SDLK_c:
snprintf(text_buf, sizeof(text_buf), "foo%d", rand());
SDL_SetClipboardText(text_buf);
print_error("SDL_SetClipboardText()");
printf("clipboard: set_to=\"%s\"\n", text_buf);
break;
case SDLK_v: {
printf("clipboard: has=%d, ", SDL_HasClipboardText());
print_error("SDL_HasClipboardText()");
char *text = SDL_GetClipboardText();
print_error("SDL_GetClipboardText()");
printf("text=\"%s\"\n", text);
SDL_free(text);
break;
} case SDLK_d:
snprintf(text_buf, sizeof(text_buf), "bar%d", rand());
SDL_SetPrimarySelectionText(text_buf);
print_error("SDL_SetPrimarySelectionText()");
printf("primselec: set_to=\"%s\"\n", text_buf);
break;
case SDLK_f: {
printf("primselec: has=%d, ", SDL_HasPrimarySelectionText());
print_error("SDL_HasPrimarySelectionText()");
char *text = SDL_GetPrimarySelectionText();
print_error("SDL_GetPrimarySelectionText()");
printf("text=\"%s\"\n", text);
SDL_free(text);
break;
} default:
break;
}
break;
} default: {
break;
}}
}
// create less noise with WAYLAND_DEBUG=1
if (do_render == 0) {
SDL_RenderPresent(renderer);
print_error("SDL_RenderPresent()");
}
do_render += 1;
usleep(12000);
}
SDL_DestroyRenderer(renderer);
SDL_DestroyWindow(window);
SDL_Quit();
print_error("quit");
return 0;
}
```
</details>
* Use c,v,d,f to get and set the clipboard and primary selection.
* Mark text and middle-click also in other applications.
* For wayland under x:
* `$ mutter --wayland --no-x11 --nested`
* `$ XDG_SESSION_TYPE=wayland SDL_VIDEODRIVER=wayland ./<path_to_test_appl_binary>`
|
|
72fe6cc8
|
2022-09-14T09:14:47
|
|
Updated to the latest version of OpenGL and Vulkan headers from the Khronos registry
Fixes https://github.com/libsdl-org/SDL/issues/6193
|
|
b5102a55
|
2022-09-14T08:03:46
|
|
Fixed OpenGLES shaders failing after renderer has been created
Cache all the shaders up front, so we can verify that they won't silently fail at runtime.
If compiling the fragment shaders with the precision hint fails, try again without specifying precision.
Fixes https://github.com/libsdl-org/SDL/issues/6166
Fixes https://github.com/libsdl-org/SDL/issues/6174
|