summaryrefslogtreecommitdiffstats
path: root/src/input_common (follow)
Commit message (Collapse)AuthorAgeFilesLines
* fixup! Joystick: Allow for background events; Add deadzone to SDLAnalogB3n302019-03-021-6/+17
|
* input/sdl: lock map mutex after SDL callWeiyi Wang2019-03-021-11/+17
| | | | Any SDL invocation can call the even callback on the same thread, which can call GetSDLJoystickBySDLID and eventually cause double lock on joystick_map_mutex. To avoid this, lock guard should be placed as closer as possible to the object accessing code, so that any SDL invocation is with the mutex unlocked
* Input: Remove global variables from SDL InputJames Rowe2019-03-027-800/+201
| | | | | | | | | Changes the interface as well to remove any unique methods that frontends needed to call such as StartJoystickEventHandler by conditionally starting the polling thread only if the frontend hasn't started it already. Additionally, moves all global state into a single SDLState class in order to guarantee that the destructors are called in the proper order
* Input: Copy current SDL.h/cpp files to implJames Rowe2019-03-022-0/+680
| | | | | This should make reviewing much easier as you can then see what changed happened between the old file and the new one
* common/math_util: Move contents into the Common namespaceLioncash2019-02-271-2/+2
| | | | | These types are within the common library, so they should be within the Common namespace.
* common/vector_math: Move Vec[x] types into the Common namespaceLioncash2019-02-271-11/+11
| | | | | These types are within the common library, so they should be using the Common namespace.
* common/quaternion: Move Quaternion into the Common namespaceLioncash2019-02-271-4/+4
| | | | | Quaternion is within the common library, so it should be using the Common namespace.
* Port #4141 from citra: Joystick hotplug support (#1275)Tobias2018-09-114-88/+322
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Joystick hotplug support (#4141) * use SDL_PollEvent instead of SDL_JoystickUpdate Register hot plugged controller by GUID if they were configured in a previous session * Move SDL_PollEvent into its own thread * Don't store SDLJoystick pointer in Input Device; Get pointer on each GetStatus call * Fix that joystick_list gets cleared after SDL_Quit * Add VirtualJoystick for InputDevices thats never nullptr * fixup! Add VirtualJoystick for InputDevices thats never nullptr * fixup! fixup! Add VirtualJoystick for InputDevices thats never nullptr * Remove SDL_GameController, make SDL_Joystick* unique_ptr * fixup! Remove SDL_GameController, make SDL_Joystick* unique_ptr * Adressed feedback; fixed handling of same guid reconnects * fixup! Adressed feedback; fixed handling of same guid reconnects * merge the two joystick_lists into one * make SDLJoystick a member of VirtualJoystick * fixup! make SDLJoystick a member of VirtualJoystick * fixup! make SDLJoystick a member of VirtualJoystick * fixup! fixup! make SDLJoystick a member of VirtualJoystick * SDLJoystick: Addressed review comments * Address one missed review comment
* input_common: Use std::move where applicableLioncash2018-08-032-5/+6
| | | | Avoids unnecessary atomic reference count increments and decrements
* input_common: Add missing override specifiersLioncash2018-08-033-14/+2
|
* Rename logging macro back to LOG_*James Rowe2018-07-031-3/+3
|
* input_common: Move old logging macros over to fmt-capable onesLioncash2018-04-271-3/+3
|
* math_util: Remove the Clamp() functionLioncash2018-04-201-2/+3
| | | | | C++17 adds clamp() to the standard library, so we can remove ours in favor of it.
* Format: Run the new clang format on everythingJames Rowe2018-01-211-1/+2
|
* Merge pull request #84 from lioncash/cmakebunnei2018-01-181-19/+12
|\ | | | | CMakeLists: Derive the source directory grouping from targets themselves
| * CMakeLists: Derive the source directory grouping from targets themselvesLioncash2018-01-181-19/+12
| | | | | | | | | | Removes the need to store to separate SRC and HEADER variables, and then construct the target in most cases.
* | input_common/sdl: Silence a -Wpessimizing-move warningLioncash2018-01-181-1/+1
|/
* Adding meumart's Citra SDL Joystick support. Citra PR #3116muemart2018-01-164-1/+248
|
* motion_emu: fix initialization orderwwylele2017-08-221-1/+4
|
* Merge pull request #2861 from wwylele/motion-refactorJames Rowe2017-08-205-2/+231
|\ | | | | Refactor MotionEmu into a InputDevice
| * motion_emu: no need to include thread in headerwwylele2017-08-192-2/+7
| |
| * move MotionEmu from core/frontend to input_common as a InputDevicewwylele2017-08-115-2/+226
| |
* | Fix Spelling/English mistakesDave Leaver2017-08-131-1/+1
|/
* Fix some spelling mistakesdanzel2017-08-111-1/+1
|
* CMake: Define an interface target for SDL2 definitionsYuri Kunde Schlesner2017-05-281-2/+1
|
* CMake: Correct inter-module dependencies and library visibilityYuri Kunde Schlesner2017-05-281-3/+3
| | | | | | | | | | Modules didn't correctly define their dependencies before, which relied on the frontends implicitly including every module for linking to succeed. Also changed every target_link_libraries call to specify visibility of dependencies to avoid leaking definitions to dependents when not necessary.
* input_common/sdl: add support for binding button to axiswwylele2017-04-171-4/+53
|
* citra-qt: release all buttons when render window focus is lostwwylele2017-03-172-0/+13
| | | | credit to @Hawkheart for the original idea
* InputCommon: add SDL joystick supportwwylele2017-03-014-0/+241
|
* InputCommon: add AnalogFromButtonwwylele2017-03-015-0/+113
|
* InputCommon: add Keyboardwwylele2017-03-015-0/+202