summaryrefslogtreecommitdiff
path: root/src/input_common (follow)
Commit message (Collapse)AuthorAgeFilesLines
* input_common: fix build when SDL2 is disabledGravatar FearlessTobi2020-05-021-0/+6
|
* Merge pull request #3673 from lioncash/extraGravatar bunnei2020-04-161-0/+1
|\ | | | | CMakeLists: Specify -Wextra on linux builds
| * CMakeLists: Specify -Wextra on linux buildsGravatar Lioncash2020-04-151-0/+1
| | | | | | | | | | | | | | | | | | | | | | Allows reporting more cases where logic errors may exist, such as implicit fallthrough cases, etc. We currently ignore unused parameters, since we currently have many cases where this is intentional (virtual interfaces). While we're at it, we can also tidy up any existing code that causes warnings. This also uncovered a few bugs as well.
* | input_common: Use the CMake target instead of the variable.Gravatar Markus Wick2020-04-161-1/+1
|/
* Merge pull request #3525 from FearlessTobi/linux-compile-errorGravatar bunnei2020-03-211-1/+1
|\ | | | | input_common/udp: Fix Linux build by using a backwards compatible way of error checking
| * input_common/udp: Fix Linux build by using a backwards compatible way of ↵Gravatar FearlessTobi2020-03-171-1/+1
| | | | | | | | | | | | | | | | | | error checking Should fix https://github.com/yuzu-emu/yuzu/issues/3487. error_code::failed is a function which has been introduced in Boost 1.69. This version of boost hasn't landed in most major distros yet.
* | input_common/udp: Fix clang build issuesGravatar ReinUsesLisp2020-03-181-1/+2
|/
* input/udp - Add minor error handling to prevent bad input from crashingGravatar James Rowe2020-03-031-4/+13
|
* input/udp - Dont log on invalid packet receivedGravatar James Rowe2020-03-031-1/+0
|
* analog_from_button get direction implementationGravatar CJBok2020-02-181-0/+14
|
* input_common/udp: Ensure that UDP is shut down within Shutdown()Gravatar Lioncash2020-02-031-0/+1
| | | | Previously the UDP backend would never actually get shut down.
* input_common/udp: Add missing override specifiersGravatar Lioncash2020-02-031-2/+2
| | | | | Prevents trivial warnings and ensures interfaces are properly maintained between the base class.
* input_common/udp: std::move SocketCallback instances where applicableGravatar Lioncash2020-02-031-2/+2
| | | | | | std::function is allowed to heap allocate if the size of the captures associated with each lambda exceed a certain threshold. This prevents potentially unnecessary reallocations from occurring.
* input_common/udp: std::move shared_ptr within Client constructorGravatar Lioncash2020-02-031-1/+1
| | | | | Gets rid of a trivially avoidable atomic reference count increment and decrement.
* udp/client: Replace deprecated from_string() call with make_address_v4()Gravatar Lioncash2020-02-031-2/+2
| | | | Future-proofs code if boost is ever updated.
* input_common/udp: Silence -Wreorder warning for SocketGravatar Lioncash2020-02-031-4/+3
| | | | | Amends the constructor initializer list to specify the order of its elements in the same order that initialization would occur.
* input_common/udp: Remove unnecessary inclusionsGravatar Lioncash2020-02-034-8/+4
|
* input_common/udp: Add missing header guardGravatar Lioncash2020-02-031-0/+2
|
* Merge pull request #3284 from CJBok/hid-fixGravatar bunnei2020-02-011-0/+16
|\ | | | | hid: Fix analog sticks directional states
| * Moved analog direction logic to sdl_implGravatar CJBok2020-01-151-0/+16
| |
* | Address second part of review commentsGravatar FearlessTobi2020-01-233-13/+17
| |
* | Address review commentsGravatar FearlessTobi2020-01-234-65/+72
| |
* | Input: UDP Client to provide motion and touch controlsGravatar fearlessTobi2020-01-238-4/+846
|/ | | | | | | | An implementation of the cemuhook motion/touch protocol, this adds the ability for users to connect several different devices to citra to send direct motion and touch data to citra. Co-Authored-By: jroweboy <jroweboy@gmail.com>
* input_common/sdl/sdl_impl: Correct logging string in SDLState constructorGravatar Lioncash2019-06-031-1/+1
| | | | | | If this path was ever taken, a runtime exception would occur due to the lack of a formatting specifier to insert the error code into the format string.
* input_common/sdl/sdl_impl: Move documentation comments to header where ↵Gravatar Lioncash2019-06-032-7/+6
| | | | | | | applicable Places the documentation comments with the rest of SDLState's member function documentation.
* input_common/sdl/sdl_impl: Amend names for axes for SDLAnalogPollerGravatar Lioncash2019-06-031-13/+13
| | | | Adds another underscore to clearly indicate the axis names.
* input_common/sdl/sdl_impl: Mark variables const where applicableGravatar Lioncash2019-06-031-10/+11
| | | | | Make it explicit that these aren't modified elsewhere (either through functions by reference, or by other operations).
* input_common/sdl/sdl_impl: Mark SDLEventToButtonParamPackage() as staticGravatar Lioncash2019-06-031-1/+1
| | | | | | Its prototype declared at the top of the translation unit contains the static qualifier, so the function itself should also contain it to make it a proper internally linked function.
* input_common/sdl/sdl_impl: Convert reinterpret_cast into a static_castGravatar Lioncash2019-06-031-2/+4
| | | | It's valid to static_cast a void pointer back into its proper type.
* input_common/sdl/sdl_impl: Use insert_or_assign() where applicableGravatar Lioncash2019-06-031-3/+3
| | | | | Same behavior, but without a potential need to unnecessarily default construct a value.
* input_common/sdl/sdl_impl: Simplify SDL_Joystick deleter handlingGravatar Lioncash2019-06-031-15/+14
| | | | | | | | | The deleter can just be set in the constructor and maintained throughout the lifetime of the object. If a contained pointer is null, then the deleter won't execute, so this is safe to do. We don't need to swap it out with a version of a deleter that does nothing.
* input_common/sdl/sdl_impl: Resolve two sign conversion warningsGravatar Lioncash2019-06-031-10/+16
| | | | Silences the final two warnings in SDL code.
* input_common/sdl: Remove unused header includes and forward declarationsGravatar Lioncash2019-06-033-11/+5
| | | | | Gets rid of a few unnecessary inclusion dependencies. It also uncovered a few indirect inclusion dependencies being relied upon.
* input_common/sdl/sdl_impl: Use nested namespace specifiers where applicableGravatar Lioncash2019-06-031-5/+2
|
* input_common/sdl/sdl_impl: Silence sign conversion warningsGravatar Lioncash2019-05-311-3/+3
| | | | Makes the conversions explicit, as opposed to implicit.
* general: Use deducation guides for std::lock_guard and std::unique_lockGravatar Lioncash2019-04-013-21/+23
| | | | | | | Since C++17, the introduction of deduction guides for locking facilities means that we no longer need to hardcode the mutex type into the locks themselves, making it easier to switch mutex types, should it ever be necessary in the future.
* input_common/sdl: Correct return values within implementations of GetPollers()Gravatar Lioncash2019-03-182-2/+6
| | | | | In both cases, we weren't actually returning anything, which is undefined behavior.
* input_common/sdl: Use a type alias to shorten declaration of GetPollersGravatar Lioncash2019-03-183-11/+9
| | | | Just makes the definitions a little bit more tidy.
* input_common/sdl_impl: Make lambda capture more specific in SDLState constructorGravatar Lioncash2019-03-171-1/+1
| | | | | We don't need to universally capture by reference. We specifically just need to capture the this pointer.
* input_common/sdl_impl: Remove unnecessary std::chrono::duration constructionGravatar Lioncash2019-03-171-1/+1
| | | | Specifying the time unit itself is sufficient here.
* input_common/sdl_impl: Remove unused variable in SDLState constructorGravatar Lioncash2019-03-171-1/+0
|
* fixup! Joystick: Allow for background events; Add deadzone to SDLAnalogGravatar B3n302019-03-021-6/+17
|
* input/sdl: lock map mutex after SDL callGravatar Weiyi 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 InputGravatar James 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 implGravatar James 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 namespaceGravatar Lioncash2019-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 namespaceGravatar Lioncash2019-02-261-11/+11
| | | | | These types are within the common library, so they should be using the Common namespace.
* common/quaternion: Move Quaternion into the Common namespaceGravatar Lioncash2019-02-261-4/+4
| | | | | Quaternion is within the common library, so it should be using the Common namespace.
* Port #4141 from citra: Joystick hotplug support (#1275)Gravatar Tobias2018-09-104-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 applicableGravatar Lioncash2018-08-022-5/+6
| | | | Avoids unnecessary atomic reference count increments and decrements