summaryrefslogtreecommitdiff
path: root/src/input_common/sdl (follow)
Commit message (Collapse)AuthorAgeFilesLines
* input_common: Rewrite SDLGravatar german772021-11-244-1842/+0
|
* input_common/sdl: Fix joystick rangeGravatar german772021-10-111-3/+4
|
* Merge pull request #6979 from german77/joycon_nameGravatar bunnei2021-10-021-2/+16
|\ | | | | input_common: Add alternative string for joycons
| * input_common: Add alternative string for joyconsGravatar german772021-09-061-2/+16
| |
* | input_common: Enable steam controllers and 8 player supportGravatar german772021-09-101-5/+7
|/
* input_common: Disable sdl raw input modeGravatar german772021-08-121-0/+3
|
* input_common: Improve SDL joystick and hide toggle optionGravatar german772021-08-071-24/+63
|
* Merge pull request #6654 from german77/custom_thresholdGravatar bunnei2021-07-211-3/+3
|\ | | | | input_common: Make button threshold customizable
| * input_common: Make button threshold customizableGravatar german772021-07-151-3/+3
| |
* | Merge pull request #6649 from german77/toggle_sdlGravatar bunnei2021-07-201-4/+51
|\ \ | | | | | | input_common: Support SDL toggle buttons
| * | input_common: Support SDL toggle buttonsGravatar german772021-07-151-4/+51
| |/
* | input/sdl_impl: fix rumble support on DualSense. (#6683)Gravatar Nicolas Jallamion2021-07-201-2/+2
| | | | | | - value return can be different 0, is not error is normal, error is only -1.
* | sdl_impl, emu_window: Remove clang ignoreGravatar lat9nq2021-07-161-8/+0
|/ | | | | Fixed upstream by libsdl-org/SDL@25fc40b0bd44c484051064bc6b945ea9943f88dd
* Merge pull request #6318 from german77/dualJoyconGravatar bunnei2021-06-012-60/+258
|\ | | | | input_common: Add dual joycon support
| * input_common: Add dual joycon supportGravatar german772021-05-222-60/+258
| |
* | Merge pull request #6312 from german77/analogMappingGravatar bunnei2021-05-241-26/+28
|\ \ | |/ |/| input_common: Rewrite sdl analog mapping and fix controller disconnection crash
| * input_common: Fix crash when controller disconnectsGravatar german772021-05-151-1/+3
| |
| * input_common: Rewrite sdl analog mappingGravatar german772021-05-141-25/+25
| |
* | input_common: Implement SDL motionGravatar german772021-05-153-3/+154
|/
* general: Ignore implicit-fallthrough for SDL.hGravatar lat9nq2021-04-181-0/+10
| | | | | | SDL 2.0.14 introduces an incompatibility with Clang, causing it to trigger -Wimplicit-fallthrough even though it is marked. Ignore it for now, with a comment mentioning why this is needed.
* Merge pull request #6119 from german77/SDLMappingGravatar bunnei2021-04-152-6/+24
|\ | | | | InputCommon: Address mapping and naming issues with SDL2
| * InputCommon: Name properly xbox 360 and one controllers, Fix mappings for ↵Gravatar german772021-03-302-6/+24
| | | | | | | | Nintendo Pro controllers
* | common: Move settings to common from core.Gravatar bunnei2021-04-141-1/+1
|/ | | | - Removes a dependency on core and input_common from common.
* Revert "Port citra-emu/citra#5123: "SDL: Disable hidapi drivers due to ↵Gravatar Morph2021-02-181-7/+0
| | | | compatibility problems with certain controllers""
* Merge pull request #3603 from FearlessTobi/port-5123Gravatar bunnei2021-02-151-0/+7
|\ | | | | Port citra-emu/citra#5123: "SDL: Disable hidapi drivers due to compatibility problems with certain controllers"
| * sdl_joystick: disable the use of the hidapi drivers due to many problems ↵Gravatar Vitor Kiguchi2020-08-301-0/+7
| | | | | | | | | | | | | | caused by them. The main problem is the loss of compatibility with some controllers, but there are also unwanted changes to the behaviour of PS4 controllers (hardcoded lightbar color).
* | Make settings controller image change with controller inputGravatar german2021-02-061-0/+10
| |
* | sdl_impl: Set the maximum vibration duration to 1 secondGravatar Morph2021-01-231-2/+6
| |
* | Merge pull request #5265 from german77/port5509Gravatar bunnei2020-12-301-2/+45
|\ \ | | | | | | Port citra-emu/citra#5509 "Look at direction of analog axis travel instead of instantaneous sample"
| * | Port citra-emu/citra#5509Gravatar german2020-12-301-2/+45
| | |
* | | Allow to invert analog axis with right clickGravatar german2020-12-261-5/+21
|/ /
* | input_common: Add more missing [[maybe_unused]] from #4927.Gravatar bunnei2020-11-231-1/+2
| |
* | input_common: Treat warnings as errorsGravatar Lioncash2020-11-222-2/+4
| | | | | | | | | | Migrates over warnings as errors for input common to match how the common library treats warnings as errors.
* | Modify rumble amplificationGravatar german772020-11-191-2/+1
| |
* | sdl_impl: Pump SDL Events at 1000 HzGravatar Morph2020-11-151-1/+1
| |
* | sdl_impl: Revert to the "old" method of mapping sticksGravatar Morph2020-11-151-32/+13
| | | | | | | | | | | | Not all controllers have a SDL_GameController binding. This caused controllers not present in the SDL GameController database to have buttons mapped instead of axes. Furthermore, it was not possible to invert the axes when it could be useful such as emulating a horizontal single joycon or other potential cases. This allows us to invert the axes by reversing the order of mapping (vertical, then horizontal).
* | controllers/npad: Remove the old vibration filterGravatar Morph2020-11-151-15/+0
| | | | | | | | Previously we used a vibration filter that filters out amplitudes close to each other. It turns out there are cases where this results into vibrations that are too inaccurate. Remove this and move the 100Hz vibration filter (Only allowing a maximum of 100 vibrations per second) from sdl_impl to npad when enable_accurate_vibrations is set to false.
* | input_common: Add VibrationDevice and VibrationDeviceFactoryGravatar Morph2020-11-152-16/+60
| | | | | | | | | | | | A vibration device is an input device that returns an unsigned byte as status. It represents whether the vibration device supports vibration or not. If the status returns 1, it supports vibration. Otherwise, it does not support vibration.
* | controllers/npad: Add heuristics to reduce rumble state changesGravatar Morph2020-11-151-29/+25
| | | | | | | | | | Sending too many state changes in a short period of time can cause massive performance issues. As a result, we have to use several heuristics to reduce the number of state changes to minimize/eliminate this performance impact while maintaining the quality of these vibrations as much as possible.
* | sdl_impl: Fix controller reconnection issuesGravatar Morph2020-10-211-85/+84
| | | | | | | | | | | | | | It turns out that after a controller is disconnected, there is a chance that events from the previous controller are sent/processed after it has been disconnected. This causes the previously disconnected controller to reappear as connected due to GetSDLJoystickBySDLID() emplacing this controller back to the map. Fix this by only returning an SDLJoystick if and only if it exists in the map.
* | sdl_impl: Erase the SDLJoystick entry after removing a controllerGravatar Morph2020-10-161-15/+13
| | | | | | | | | | | | | | Previously, disconnecting a controller still leaves a null SDLJoystick entry within the vector of SDLJoysticks mapped by GUID. When a DirectInput device of the same GUID is reconnected, it adds that device to a new port causing non-detectable input. Furthermore, opening the "Configure" menu would cause yuzu to crash since it first tries to resolve the name of a null SDLJoystick entry that was not removed. Resolve this by properly erasing the SDLJoystick entry from the vector.
* | input_common/CMakeLists: Make some warnings errorsGravatar Lioncash2020-10-151-37/+40
| | | | | | | | | | Makes the input_common code warnings consistent with the rest of the codebase.
* | Merge pull request #4677 from german77/ShakeFromButtonGravatar bunnei2020-10-082-0/+192
|\ \ | | | | | | InputCommon: Add random motion input for buttons
| * | Add random motion input to SDLGravatar german2020-09-252-0/+192
| | |
* | | First implementation of controller rumbleGravatar german2020-09-291-1/+38
|/ /
* | sdl_impl: Reduce allocations in GetButtonMappingForDevice()Gravatar Lioncash2020-08-281-31/+37
| | | | | | | | These maps can be constexpr arrays of std::pair.
* | sdl_impl: Make use of std::move on std::string where applicableGravatar Lioncash2020-08-281-3/+3
| | | | | | | | Avoids redundant copies.
* | sdl_impl: Make use of insert_or_assign() where applicableGravatar Lioncash2020-08-281-14/+18
| | | | | | | | Avoids churning ParamPackage instances.
* | sdl_impl: Prevent type truncation in BuildAnalogParamPackageForButton() ↵Gravatar Lioncash2020-08-281-1/+1
| | | | | | | | | | | | | | default arguments We need to add the 'f' suffix to make the right hand side a float and not a double.
* | sdl_impl: Simplify make_tuple callGravatar Lioncash2020-08-281-1/+1
| | | | | | | | | | | | | | The purpose of make_tuple is that you don't need to explicitly type out the types of the things that comprise said tuple. Given this just returns default values, we can simplify this a bit.