Commit Graph

11489 Commits

Author SHA1 Message Date
Oleg
bf8c9cd6bf Detect Logitech PRO Racing Wheel for Xbox (PC mode) as wheel
Logitech PRO Racing Wheel have two different versions - for Playstation and Xbox. Vendor + Product ID for Playstation version already present in SDL sources, but not an Xbox version

(cherry picked from commit cde67ea49ad812088bd5c8cfd67ef090ac1c1d86)
(cherry picked from commit 242b25aba47871a571457bc6e71ff4c89bbafc3b)
2023-09-04 11:02:09 -07:00
Sam Lantinga
8a5ba43d00 Updated to version 2.28.3 for release 2023-09-01 11:22:07 -07:00
Jeremy Demeule
c25a49c406 metal: Add hint to select low power device instead of the default one (#8182)
On some system like MacBook Pro Intel with AMD card, asking for the default device will always return the AMD GPU.
This is not an issue for 99% of the case when the renderer context is here to provide the maximum performance level like for game.
However, for video application using GPU for 1 quad and 1 texture, using the discrete GPU for that lead to an important power consumption (4 to 8W), heat increase, and fan noise.
With this patch, I successfully amend ffplay to only use the integrated GPU (i.e. the Intel one), instead of the discrete GPU (i.e. the AMD one).

(cherry picked from commit aa7ba629784ebf4a253cf78d85c286c310ad0cb5)
2023-08-31 01:55:40 -07:00
Anonymous Maarten
d46fdfa3ee wayland: add SDL_VIDEO_DRIVER_WAYLAND_DYNAMIC_EGL 2023-08-30 23:03:29 +02:00
Anonymous Maarten
787d339282 wayland: don't define SDL_VIDEO_DRIVER_WAYLAND_DYNAMIC_* macro's
They mess with #ifdef conditional in headers.
2023-08-30 22:46:53 +02:00
Sam Lantinga
874f6feab4 Fixed the report format for the Razer Wolverine V2 Pro
(cherry picked from commit 69aec8c915b5cddae2bb6171d7d5404f4d779db3)
(cherry picked from commit 6ff48dddcb34736a3550ba94f8ef3f3ce3e79de5)
2023-08-24 11:39:15 -07:00
Sam Lantinga
1df4dce78f Accept key events from any source
This allows TV remotes to navigate SDL applications (with source HDMI)

Fixes https://github.com/libsdl-org/SDL/issues/8137
2023-08-24 10:12:04 -07:00
Sam Lantinga
cc58a09c09 Updated to Android minSdkVersion 19 and targetSdkVersion 34
This is updated to meet the latest requirements for apps on the Google Play store

(cherry picked from commit 8e27a693706a76cbe0fcd1b877a2847afe19c513)
2023-08-24 08:33:04 -07:00
Sam Lantinga
ae72cd57b5 Quiet spurious warning
Fixes https://github.com/libsdl-org/SDL/issues/8112

(cherry picked from commit 0b9d8e679a26ee98bb055efd244c703b7dda8727)
2023-08-13 13:54:45 -07:00
David CARLIER
8f858d7908 SDL_TriggerBreakppoint for riscv arch (both 32/64) version.
`ebreak` acts like int3 for x86, giving control of running process to debuggers.
(cherry picked from commit 723bcd0a8be4e816f6555b6bbbd5e9c26ab27137)
2023-08-13 23:02:20 +03:00
Anonymous Maarten
5bfdb6e02f Fix overflow when doing SDL_sscanf("%hd", ...)
An overflow occured in the stdlib_sscanf test, when using msys2 clang32 toolchain.

(cherry picked from commit 342ec5113171214154cb197bb3e0e3a0056ea2ad)
(cherry picked from commit 10135b2d7bbed6ea0cba24410ebc12887d92968d)
2023-08-10 15:07:11 -07:00
Mathieu Eyraud
739d3ec189 Fix out of bound read of 'has_hat' array
(cherry picked from commit 94b3f78c440bfd52182848adf39db71325861e9c)
(cherry picked from commit f348370e1b3416f70e3fd1e5668a385b661b4a48)
2023-08-10 08:27:11 -07:00
Sam Lantinga
2319b2635b Fixed testautomation --filter pixels_allocFreePalette
Error messages are not part of the ABI, so we can't validate those.

Hand-picked from c9323f8fac
2023-08-08 11:50:00 +03:00
Sam Lantinga
bda161d22b Fixed testautomation --filter pixels_allocFreeFormat
Error messages are not part of the ABI, so we can't validate those.

Technically SDL_AllocFormat() on a FOURCC format in SDL2 should fail, but SDL3 supports it and we don't expect SDL2 applications to actually do this, so skip that test.

Hand-picked from 5cf9438f88
2023-08-08 11:50:00 +03:00
Anonymous Maarten
dbfd47e77d cmake: update cmake_minimum_required to avoid deprecated warning 2023-08-07 19:03:18 +02:00
Ryan C. Gordon
dbb6cd02aa
include: fixed a typo in SDL_RenderGetMetalCommandEncoder docs.
(cherry picked from commit 8087c0a5d2e2e47b7841cdd9d3fdff8cfb23e241)
2023-08-06 10:45:34 -04:00
Ozkan Sezer
841263c9d6 updated config.guess and config.sub from mainstream 2023-08-05 14:03:02 +03:00
Sam Lantinga
2ccb311cb7 Added a gamepad mapping for the G-Shark GS-GP702
Fixes https://github.com/libsdl-org/SDL/issues/8068

(cherry picked from commit 06bea1eb5544e778c1258d3d7f47f6d06110c379)
(cherry picked from commit 2304b4e86a05cbf418b96055b72fc4eaf874531f)
2023-08-02 14:39:09 -07:00
Sam Lantinga
e0a345702d The Flydigi Vader and Apex series controllers all have the same VID, PID, and name
(cherry picked from commit 58e3084477afe344bae42ab352d56eba25b4a36b)
(cherry picked from commit 0f753d97940d0a5ba01f0274ac742ee427263bd5)
2023-08-02 14:39:09 -07:00
Sam Lantinga
9fba36511f Removed Flydigi Vader 2 mappings
Many of the Flydigi controllers use the same VID/PID and have different mappings, so let's revisit this once we have more data.

(cherry picked from commit 5388edd5494030b8c43b2f79e3f5c9b71f57a703)
(cherry picked from commit 805fc29ae8aead9fba8e0fa2b155dd3a9f6618f2)
2023-08-02 14:39:09 -07:00
Ozkan Sezer
45fb778fe5 adjusted coding style in SDL_os2_joystick.c to match rest of SDL better
(cherry picked from commit 57f3c41b9727d8cfb701401bc539be45285a0399)
2023-08-02 20:40:24 +03:00
Sam Lantinga
031912c4b6 Updated to version 2.28.2 for release 2023-08-02 08:31:42 -07:00
Ozkan Sezer
348cc05b4f minor os/2 stuff merged from the bitwiseworks' fork
(cosmetics only.)
(cherry picked from commit b58557a3a60de6e945536c41147061afa8468286)
2023-08-02 17:10:50 +03:00
Ozkan Sezer
e2e87a536c SDL_video.c: move ngage video before offscreen.
Reference issue: https://github.com/libsdl-org/SDL/pull/8069.
2023-08-02 17:00:10 +03:00
Ozkan Sezer
66d5ad19f0 SDL_video.c: move os2 video before offscreen.
as offscreen is enabled in CMakeLists.txt, we get a blanks window
otherwise.

From a patch by Silvan Scherrer, at Bitwiseworks' fork.
2023-08-02 09:26:41 -04:00
Sam Lantinga
94e945ccff Fixed build
(cherry picked from commit ebf2c49b505b67838f8fb00c0b2ed0ce03856f38)
2023-08-02 01:37:24 -07:00
Sam Lantinga
3f93f56b6e Fixed duplicate key press/release events on iOS
When a hardware keyboard is attached, it can take over 100 ms for the keyboard event to generate text input. In that case we want to record that we recently received a keyboard event so we don't synthesize duplicate virtual key press/release events for the input text.

(cherry picked from commit 648de4f9b8ebcf9e794aba2ec2955d129167c48b)
(cherry picked from commit 38c63afd64450cab8166485c7f93f2cf6c0fa038)
2023-08-02 01:29:30 -07:00
Sam Lantinga
ed5ef8fed4 Synchronize on-screen keyboard state with text input active state
When a hardware keyboard is attached to an iPad, you can easily trigger a set of on-screen keyboard transitions that will take place over time, and we need to track whether we're currently showing or hiding the keyboard and make sure we don't clobber the existing state during those transitions.

Testing:
* Connected a hardware keyboard to an iPad
* Launched checkkeys
* Noted the keyboard bar was active at the bottom of the screen and text input was active
* Tapped with both fingers to quickly toggle text input off and back on
* Noted the keyboard bar slid down and then back up, and text input was active
* Tapped on the keyboard bar to bring up the full on-screen keyboard and then closed it so the keyboard bar was still active, and text input was still active
* Tapped on the screen to turn text input off, noted the keyboard bar slid down
* Tapped with both fingers to quickly toggle text input on and back off
* Noted that the keyboard bar slid up and then back down, and text input was inactive
* Tapped on the screen to turn text input on, tapped on the keyboard bar to bring up the full on-screen keyboard, and text input was active
* Pressed a key on the physical keyboard, the on-screen keyboard closed, the key press and release was delivered (with no text input) and then the keyboard bar slid up, and text input was active again

Fixes https://github.com/libsdl-org/SDL/issues/7979

(cherry picked from commit c3288d113e434b20d2f0dda73210d3a52504d199)
(cherry picked from commit 030bb7282a8c93caf15fd023e02de888def7f582)
2023-08-02 01:29:30 -07:00
Sam Lantinga
39781eef09 Only pass keypresses up the responder chain when text input is active
This is another attempt to make sure we don't cause beeps from unhandled key presses while still allowing full text input functionalty.

If this isn't selective enough, we might need to go up the responder chain to see what's going to handle the event before passing it along.

Fixes https://github.com/libsdl-org/SDL/pull/6962

(cherry picked from commit a8abe612ed5597cbaabb903c0121b5b48baee91d)
(cherry picked from commit 335e9c769a5d49fe023b528c48a45c8ce3ed60d0)
2023-08-02 01:29:30 -07:00
Sam Lantinga
3436124804 Revert "Stop beep when running iOS apps on ARM-based Macs"
This reverts commit bbf38bbbc334bc0ee90d3eec228a968d8fc1689e, which prevented text input from working when a hardware keyboard was connected, since key strokes don't get to the text input field.

Fixes https://github.com/libsdl-org/SDL/issues/7958

(cherry picked from commit f5ea6ae18d860796184b9b31a2005957cb7e30a2)
(cherry picked from commit 5e9320f6b5f4492fea026f1d9c14a4b9787f7a22)
2023-08-02 01:29:30 -07:00
Sam Lantinga
9267a9032e Fixed build
(cherry picked from commit e2afc1f37a2f0b38716e71147e41737e24ed4be7)
2023-08-01 18:58:40 -07:00
Sam Lantinga
02be870c54 Fixed crash if a display is enumerated twice
This can happen if a monitor is in the process of becoming primary because another monitor was disconnected.

(cherry picked from commit 07578fde3dad2dadd605f5b18399c8d021f6ae5d)
(cherry picked from commit 2468fccf7fa7fa315d6652c7babf85f2d09f035b)
2023-08-01 18:30:46 -07:00
Ryan C. Gordon
84ad531689 cocoa: Ignore first mouse motion event after enabling relative mode.
Fixes #7918.

(cherry picked from commit dc5dda0f311ea596a5152ec2f8f062f9309eb1d9)
2023-08-01 18:40:24 -04:00
Ryan C. Gordon
e73a81b28a
x11: Blocking for window maximization should wait 100 ms, not 1000.
Reference Issue #7070.

(cherry picked from commit 3030fd815c4d05b5286f7cb9c8a8a2b42cff7bb1)
2023-08-01 13:55:58 -04:00
Ryan C. Gordon
133ad1915c
Revert "x11: check if window size/position has changed during SDL_ShowWindow."
This reverts commit aa536217b3.

(cherry picked from commit 5c3df60ec913f5b0fd04835af56f3afd42694893)
2023-08-01 13:51:37 -04:00
Sam Lantinga
5733f42c7c Fall back to Xlib if XRandR isn't available
This fixes video initialization on headless systems with VNC

Fixes https://github.com/libsdl-org/SDL/issues/8054

(cherry picked from commit 71099149b8fc062ea0ece232ccdd9f0ee9b3588b)
(cherry picked from commit 8825fbf71391631f1a7ee7ca224a2f4e01cd8814)
2023-07-31 14:41:51 -07:00
Mathieu Eyraud
dda971833e Add missing break
(cherry picked from commit 0500fca00c141cc4ab9be15ce5ddb7bc8c5c17b2)
2023-07-29 17:33:20 +03:00
Ozkan Sezer
38a5aed974 minor os/2 stuff merged from the bitwiseworks' fork 2023-07-28 23:56:20 +03:00
Ozkan Sezer
3845fd3c49 fixed typo in prev. patch. 2023-07-28 07:35:24 +03:00
Ozkan Sezer
0d62ce6070 test/testnativecocoa.m: fixed deprecation warnings. 2023-07-28 07:21:28 +03:00
Sam Lantinga
301f227879 Sorted controller list
(cherry picked from commit 3174d0b97025376e4a7b6e881501a43472238e0e)
(cherry picked from commit 507be6c3f819ad24b08eb3d28e7e14c9aeb6b60a)
2023-07-27 12:50:32 -07:00
Max Maisel
2ca4c0233a Add Steam Deck controller mapping to database.
This adds support for the back paddles, and the "..." key
which are not automatically detected.
* "Back" is mapped to the top left "two windows" key.
* "Start" is mapped to the top right "hambuger menu" key.
* "Guide" is mapped to the "Steam" key.
* The "..." key is just a generic button.

When looking at the screen, paddles are number
* P1: Top right
* P2: Top left
* P3: Bottom right
* P4: Botom Left

The new controller mapping was created with the SDL3 gamepadmap tool.

(cherry picked from commit 27b8abb0562f46e64337d5d799b877c357001254)
(cherry picked from commit f4561db69a6c534e9e041f890cc06e42bdbdec4d)
2023-07-27 12:50:32 -07:00
Anonymous Maarten
44903d8aee SDL_atomic.h: __ARM_ARCH is not always defined for an arm platform
e.g. riscos toolchain
(cherry picked from commit 8105f1d5b5b83328f4d0017a562674efca821077)
2023-07-26 20:39:30 +03:00
Ozkan Sezer
e3f90c6068 remove unused vulkan/*.hpp files.
(cherry picked from commit 611b3dd1fd7aec30ba9c830c7c5f8a0cdbaf9ff5)
2023-07-26 18:10:00 +03:00
Ozkan Sezer
8cdc2b3eec update docs/README-os2 after the last os/2 audio patch. 2023-07-25 20:51:32 +03:00
Ozkan Sezer
b4d8765426 os2 audio refactoring and capture support
- Fixed audio device detection and usage.
- Implemented audio capture support
- Refactored buffer handling to separate pointers to fill and drain buffers.

Based on patches by josch1710 and Lars Erdmann:
https://github.com/bitwiseworks/SDL2-os2/pull/7
(cherry picked from commit 890bee64a4494b8575c53c68adfaf7c594d07c27)
2023-07-25 14:03:00 +03:00
Anonymous Maarten
e6f044ddda ci: bump mymindstorm/setup-emsdk to latest tag 2023-07-22 18:09:14 +02:00
Weng Xuetian
2eb73e2419 Remove the unimplemented CloseIC in fcitx module
This call is actually a left-over when porting from fcitx4 service to the new org.freedesktop.portal.Fcitx supported by both fcitx4/fcitx5. CloseIC is actually never a part of the new interface on org.freedesktop.portal.Fcitx. It cause any issue user visible effect.
2023-07-20 13:37:31 -07:00
Sam Lantinga
fb57ba763d Fixed LED pending check failing when the controller timestamp is very large
In this case we know the controller has been on for a while and the Bluetooth connection LED cycle is complete.

Also fixed the timestamp being zero the first time it is checked

(cherry picked from commit bd4f155bbbdc4be34505535e4bd936ae12671925)
(cherry picked from commit f7dc8c0eaa66cf33dcacb31cc3d09dee197bacbe)
2023-07-17 17:46:30 -07:00
Sam Lantinga
63a98d0da2 Don't send k_EPS5FeatureReportIdCapabilities to Sony PS5 controllers
This report is for third party controllers only.

(cherry picked from commit 16dd5f0da4ee950e9f998a757dcb4789463e67e2)
(cherry picked from commit bb036ef5441f6e0374eed6a02adb9dc66273c629)
2023-07-17 17:46:29 -07:00