|
65527537
|
2021-03-30T04:32:39
|
|
N3DS port (squashed)
A dedicated renderer using Citro3D would likely allow for better
much better graphical performances.
|
|
392f3882
|
2022-09-20T22:45:24
|
|
N3DS: Use SDL_Sensor instead of Joystick sensors.
|
|
f9785702
|
2022-09-18T13:22:07
|
|
N3DS: Deduce screen from window's display.
This removes the need for a dedicated window creation flag.
|
|
efdb390c
|
2022-10-09T09:11:33
|
|
Disable the HIDAPI Wii driver by default as it doesn't work with the dolphinbar
|
|
9df1af35
|
2022-10-09T15:44:07
|
|
Sync SDL wiki -> header
|
|
b18c361b
|
2022-10-08T13:18:00
|
|
Updated variable name for mouse coordinates in mouse wheel events
|
|
4f318c90
|
2022-10-08T12:01:42
|
|
Add cursor position to mouse wheel event (thanks @meyraud705!)
Fixes https://github.com/libsdl-org/SDL/pull/6351
|
|
31991ab8
|
2022-10-07T15:45:28
|
|
Fix \sa to a valid function in SDL_metal.h.
|
|
4ca86dae
|
2022-10-05T23:26:14
|
|
Sync SDL wiki -> header
|
|
ad29875e
|
2022-04-18T17:03:05
|
|
Wayland: Emulate mouse warp using relative mouse mode
Several games (including Source and GoldSrc games, and Bioshock
Infinite) attempt to "fake" relative mouse mode by repeatedly warping
the cursor to the centre of the screen. Since mouse warping is not
supported under Wayland, the viewport ends up "stuck" in a rectangular
area.
Detect this case (mouse warp while the cursor is not visible), and
enable relative mouse mode, which tracks the cursor position
independently, and so can Warp successfully.
This is behind the SDL_HINT_VIDEO_WAYLAND_EMULATE_MOUSE_WARP hint, which
is enabled by default, unless the application enables relative mouse
mode itself using SDL_SetRelativeMouseMode(SDL_TRUE).
Note that there is a behavoural difference, in that relative mouse mode
typically doesn't take mouse accelleration into account, but the
repeated-warping technique does, so mouse movement can seem very slow
with this (unless the game has its own mouse accelleration option, such
as in Portal 2).
|
|
34b28002
|
2022-10-03T00:20:15
|
|
Sync SDL wiki -> header
|
|
64ea6cef
|
2022-10-02T17:17:31
|
|
SDL_ResetHint() no longer clears the callbacks associated with a hint
Also added SDL_ResetHints() to reset all callbacks, and clarified that SDL_ClearHints() is just used for cleanup at shutdown.
Fixes https://github.com/libsdl-org/SDL/issues/6313
|
|
6c8bf3af
|
2022-10-03T00:19:34
|
|
Add vertical mode for Nintendo Joy-Con (#6303)
* Added support for vertical mode for Joy-Con controllers
* Added the hint SDL_HINT_JOYSTICK_HIDAPI_VERTICAL_JOY_CONS for switching to this mode
* Added support for SL/SR buttons in combined/vertical mode and L/ZL/R/ZR buttons in mini-gamepad mode
|
|
36e76701
|
2022-09-27T16:57:17
|
|
Sync SDL wiki -> header
|
|
2c518747
|
2022-09-27T09:56:02
|
|
Added microsecond timestamp to sensor values for PS4 and PS5 controllers using the HIDAPI driver
|
|
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
|
|
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
|
|
4018f35e
|
2022-09-07T00:00:27
|
|
Added left and right sensors for Nintendo Joy-Con and Wii controllers
|
|
fd93f817
|
2022-09-04T17:50:29
|
|
Assume that stdint.h is available on Windows with compilers other than MSVC <= 2008
|
|
c887cb02
|
2022-09-01T16:23:32
|
|
Added the hint SDL_HINT_JOYSTICK_HIDAPI_WII_PLAYER_LED to control whether the player LED should be lit on the Nintendo Wii controllers
Also fixed the Y axes on the Wii U Pro controller, and various formatting cleanup
|
|
c72e14e8
|
2022-09-01T15:29:01
|
|
Added initial support for Wii controllers (thanks @tellowkrinkle!)
|
|
4ebf3485
|
2022-09-01T21:56:50
|
|
updated os2 config file after commit 3f89d1704d
|
|
3f89d170
|
2022-09-01T11:30:02
|
|
Fixed building with libusb not dynamicaly loaded
|
|
6c2c01e0
|
2022-08-31T15:04:12
|
|
Fixed documentation to match function parameter
|
|
0e4baf1c
|
2022-08-30T12:39:23
|
|
Don't crash if SDL functions are passed a closed joystick or gamecontroller
|
|
3fe6768c
|
2022-08-30T18:47:15
|
|
Sync SDL wiki -> header
|
|
40bd4fee
|
2022-08-30T11:42:13
|
|
Revamped joystick locking
This makes the joystick locking more robust by holding the lock while updating joysticks.
The lock should be held when calling any SDL joystick function on a different thread than the one calling SDL_PumpEvents() and SDL_JoystickUpdate().
It is now possible to hold the lock while reinitializing the joystick subsystem, however any open joysticks will become invalid and potentially cause crashes if used afterwards.
Fixes https://github.com/libsdl-org/SDL/issues/6063
|
|
f1e46858
|
2022-08-26T17:58:59
|
|
Adding specific SDL_Hint for the dynamic VSYNC
|
|
644a4e5b
|
2022-08-28T02:01:12
|
|
Sync SDL wiki -> header
|
|
3cbfd75d
|
2022-08-27T18:55:55
|
|
Re-added the CRC to the joystick guid
This is now used as a crc field in the mapping rather than directly in mapping guids, for better mapping compatibility between versions of SDL.
Added SDL_GetJoystickGUIDInfo() to get device information encoded in a joystick GUID, so that mapping programs can clear the CRC from the GUID when generating mappings.
sort_controllers.py has been updated to extract the CRC from mappings created by older mapping programs and convert it into the new crc field. It will also take the CRC into account when checking for duplicate mappings.
Also regenerated the GUIDs for the PS2/PSP/Vita controller mappings, fixing https://github.com/libsdl-org/SDL/issues/6151
|
|
111626f4
|
2022-08-25T17:17:12
|
|
Sync SDL wiki -> header
|
|
e4b85091
|
2022-08-25T10:15:45
|
|
Document the range of trigger axes for virtual joysticks
Fixes https://github.com/libsdl-org/SDL/issues/6130
|
|
00452e47
|
2022-08-24T11:25:13
|
|
Adding SDL_GetWindowSizeInPixels for window size in pixels (#6112)
|
|
1fc7f681
|
2022-08-24T06:38:36
|
|
Document that it's not possible to use the HIDAPI driver for PS3 controllers on Windows
|
|
b6f96b69
|
2022-08-23T22:45:37
|
|
Initial HIDAPI driver support for the PS3 controller
|
|
92b3c53c
|
2022-08-22T16:25:25
|
|
Added a hint SDL_HINT_MOUSE_RELATIVE_SYSTEM_SCALE to control whether to use system mouse acceleration on raw relative motion.
This is currently only implemented on Windows, and "Enhanced pointer
precision" mode is not quite correct.
|
|
a7066c52
|
2022-08-21T14:05:04
|
|
Sync SDL wiki -> header
|
|
8fb1b50a
|
2022-08-20T17:50:04
|
|
Sync SDL wiki -> header
|
|
a204ef50
|
2022-08-19T22:16:04
|
|
Use __ARM_ARCH instead of __ARM_ARCH__
|
|
5a3adbfd
|
2022-08-19T11:11:25
|
|
Added the hint SDL_HINT_JOYSTICK_HIDAPI_XBOX_360_PLAYER_LED to control whether the player LED is set on Xbox 360 controllers
|
|
52b6899a
|
2022-08-19T11:11:23
|
|
Added hints for more fine grained control over HIDAPI Xbox controller support
|
|
6e9c14e5
|
2022-08-19T09:38:42
|
|
Updated to version 2.25.0 for development
|
|
8c9beb0c
|
2022-08-19T08:44:09
|
|
Updated to version Updated to version 2.24.0 for release
|
|
f6b81125
|
2022-08-18T16:05:22
|
|
Always define SDL_COMPILE_TIME_ASSERT as static_assert() in C++
Apparently some versions of gcc will define __STDC_VERSION__ even when compiling in C++ mode.
Fixes https://github.com/libsdl-org/SDL/issues/6078
|
|
f1416ef2
|
2022-08-12T20:27:22
|
|
Updated to version 2.23.2 for release candidate
|
|
f35bbe0c
|
2022-08-11T21:11:11
|
|
Sync SDL wiki -> header
|
|
3861c557
|
2022-08-11T13:58:39
|
|
Added the hint SDL_HINT_MOUSE_RELATIVE_WARP_MOTION
This hint controls whether mouse warping generates motion events in relative mode, and defaults off.
Fixes https://github.com/libsdl-org/SDL/issues/6034
Fixes https://github.com/libsdl-org/SDL/issues/5741
|
|
b4c4dd84
|
2022-08-11T09:52:58
|
|
Added SDL_crc16() to be used in joystick GUIDs after 2.24.0
|
|
6ecfc406
|
2022-08-10T15:02:11
|
|
Sync SDL wiki -> header
|
|
d4192850
|
2022-08-10T07:59:12
|
|
Added SDL_ResetHint() to reset a hint to the default value
Resolves question of how to clear an override hint raised by @pionere in https://github.com/libsdl-org/SDL/pull/5309
|
|
3119d58f
|
2022-08-10T10:48:23
|
|
cocoa: Change the new sync_dispatch hint to async_dispatch.
This is so the default is safer.
|
|
bdc7f958
|
2022-08-10T00:41:25
|
|
cocoa: Added hint to treat MacBook trackpads as touch devices, not mice.
Fixes #5511.
|
|
b4660e9d
|
2022-08-10T03:40:00
|
|
macOS: Add hint for blocking thread on OpenGL context update dispatch (#5708)
|
|
824f2d46
|
2022-08-09T13:41:58
|
|
Added a second hint SDL_HINT_JOYSTICK_HIDAPI_JOYCON_HOME_LED to control the Home button LED on Nintendo Joy-Con controllers separately from Nintendo Switch Pro controllers
|
|
523bedac
|
2022-08-09T15:48:12
|
|
Sync SDL wiki -> header
|
|
aad2df7f
|
2022-08-09T08:47:49
|
|
Document passing -1 to clear the player index for a controller
|
|
07b0ec53
|
2022-08-09T09:05:08
|
|
SDL_video.h: Added \since info to new APIs.
|
|
a35cff63
|
2022-08-08T16:07:31
|
|
Sync wiki -> headers.
(bridge got stuck, I'm just kicking it to get it working again, idk.)
|
|
98bac00d
|
2022-08-08T11:26:52
|
|
Add `SDL_GetPointDisplayIndex` and `SDL_GetRectDisplayIndex` and re-implement `SDL_GetWindowDisplayIndex` in terms of `SDL_GetRectDisplayIndex`
- This allows looking up the display index for an arbitrary location rather than requiring an active window to do so.
- This change also reimplements the fallback display lookup that found the display with center closest to the window's center to instead find the display rect edge
closest to the window center (this was done in the almost identical display lookup used in SDL_windowsmodes.c, which now uses `SDL_GetPointDisplayIndex`). In
practice this should almost never be hit as it requires the window's center to not be enclosed by any display rect.
|
|
d355ea99
|
2022-08-08T11:55:04
|
|
Add a way to avoid IOP reset
|
|
87825972
|
2022-08-08T08:22:20
|
|
Added SDL_GameControllerType enumeration for Nintendo Switch Joy-Con controllers
|
|
52bf5b1d
|
2022-08-06T10:34:19
|
|
Added the hint SDL_HINT_JOYSTICK_HIDAPI_SWITCH_PLAYER_LED to control whether the player LED is set on Nintendo Switch controllers
|
|
bdaf9a92
|
2022-08-06T13:25:12
|
|
Sync SDL wiki -> header
|
|
e2452ede
|
2022-08-06T09:19:10
|
|
include: Added documentation to SDL_CaptureMouse about auto-capture.
|
|
16e699a7
|
2022-08-01T07:59:04
|
|
Proposing exposing as public api the various arch dependent
pause instructions so could be used in app infinite loops.
A handful of games do already so we unify it in one place.
|
|
bcdef4aa
|
2022-08-03T13:07:47
|
|
Added separate hints for Nintendo Online classic controllers and Joy-Cons
This allows them to be enabled/disabled separately from Switch Pro HIDAPI support
|
|
60d1944e
|
2022-07-06T20:12:30
|
|
SDL_video: Added SDL_GL_FLOATBUFFERS to allow Cocoa GL contexts to use EDR
|
|
147a71b9
|
2022-06-30T12:57:37
|
|
Finish dummy driver
|
|
46f95a7a
|
2022-06-24T00:20:11
|
|
Create dummy PS2 Video driver
|
|
75f34fc5
|
2022-08-02T14:52:12
|
|
Sync SDL wiki -> header
|
|
307b0b78
|
2022-08-02T10:50:51
|
|
video: Add a warning to the docs about using SDL_GetDisplayDPI.
Fixes #5647.
|
|
ce5a23bd
|
2022-07-30T16:32:21
|
|
Applied DragonFly BSD patch
https://raw.githubusercontent.com/DragonFlyBSD/DeltaPorts/master/ports/devel/sdl20/dragonfly/patch-include_SDL__endian.h
|
|
2241bd66
|
2022-07-29T20:37:38
|
|
Added a command line option `--info event_motion` to show mouse and finger motion events
|
|
47265f37
|
2022-07-29T13:24:05
|
|
Sync SDL wiki -> header
|
|
f8aa00d1
|
2022-07-28T16:30:02
|
|
cmake: add HAVE_STDDEF_H to SDL_config.h.cmake
|
|
2fa2f9ff
|
2022-07-28T19:22:27
|
|
Greatly improved Nintendo Joy-Con support using the HIDAPI driver
* Added support for mini-gamepad mode for Joy-Con controllers, matching the mapping for hid-nintendo on Linux and iOS 16
* Added the ability to merge left and right Joy-Con controllers into a single Pro-style controller
* Added the hint SDL_HINT_JOYSTICK_HIDAPI_SWITCH_COMBINE_JOY_CONS to control this merging functionality
* Removed the hint SDL_HINT_JOYSTICK_HIDAPI_JOY_CONS
|
|
5d85c7d3
|
2022-07-26T00:19:16
|
|
kmsdrm: Added a hint to specify device index.
Fixes #2811.
|
|
cbb3f4ca
|
2022-07-25T19:52:46
|
|
Add SDL_guid.h to the global SDL header
|
|
41b89aec
|
2022-07-22T12:23:44
|
|
video: Improve the SDL_WINDOW_ALLOW_HIGHDPI flag documentation
Extend the SDL_WINDOW_ALLOW_HIGHDPI flag documentation to stress the importance of querying the window drawable size after every window event to avoid rendering issues in a mixed-DPI environment.
|
|
f73d07da
|
2022-07-19T22:13:31
|
|
audio: Headers said 5 channel is quad+center, but it's 4.1.
|
|
b8f30c02
|
2022-07-12T00:55:00
|
|
SDL_endian.h: check for __powerpc__ and __PPC__ in big endian decision.
Also remove the _M_PPC check from there.
Reference issue: https://github.com/libsdl-org/SDL/issues/5907
|
|
5d09b631
|
2022-07-11T17:35:11
|
|
Sync SDL wiki -> header
|
|
2f0816ad
|
2022-07-11T13:08:30
|
|
Add SDL_GetDefaultAudioInfo.
This API is supported on pipewire, pulseaudio, wasapi, and directsound.
Co-authored-by: Frank Praznik <frank.praznik@gmail.com>
|
|
2373da5d
|
2022-07-11T09:49:00
|
|
Exposed SDL_ResetKeyboard() as a public function
This will be used by Source 2 titles to reset keyboard state before showing assertion dialogs
|
|
2c22d720
|
2022-07-11T08:44:49
|
|
Fixed typo in description
|
|
6e712d24
|
2022-07-09T22:55:36
|
|
joystick: Add HIDAPI driver for NVIDIA SHIELD 2017 controller
Basic input already works using the OS HID driver, but this enables
force feedback and battery state reporting.
|
|
6187edd4
|
2022-07-04T23:57:05
|
|
Sync SDL wiki -> header
|
|
b085c182
|
2022-07-04T16:38:05
|
|
make SDL_SetTextInputRect take a pointer to const
The documentation doesn't state that the argument is ever modified,
and no implementation does so currently.
This is a non-breaking change to guarantee as much to callers.
|
|
fcb99d78
|
2022-07-04T13:42:05
|
|
Sync SDL wiki -> header
|
|
2a25b69b
|
2022-07-02T20:50:51
|
|
Check if GNC is defined before checking its value to solve warns in msvc
|
|
cd79e9c4
|
2022-07-01T14:04:07
|
|
Removed comment text that looks like doxygen commands
|
|
f317d619
|
2022-07-01T13:59:14
|
|
Xbox GDKX support (#5869)
* Xbox GDK support (14 squashed commits)
* Added basic keyboard testing
* Update readme
* Code review fixes
* Fixed issue where controller add/removal wasn't working (since the device notification events don't work on Xbox, have to use the joystick thread to poll XInput)
|
|
e9d5060c
|
2022-07-01T12:56:47
|
|
checkkeys will now render text that is input
Also added test functions for multi-line debug text display
Currently this only supports ASCII, as the font doesn't have the correct Latin-1 characters
|
|
6a2e6c82
|
2022-06-28T21:03:16
|
|
Add SDL_HINT_DIRECTINPUT_ENABLED (on by default)
|
|
cbd01874
|
2022-06-27T16:59:50
|
|
Removed the limit on the size of the SDL error message
Also added SDL_GetOriginalMemoryFunctions()
Fixes https://github.com/libsdl-org/SDL/issues/5795
|
|
e4a80875
|
2022-06-24T16:43:20
|
|
Initial Audio driver
|
|
0a9a0a79
|
2022-06-27T17:20:12
|
|
Sync SDL wiki -> header
|