diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/input_common/mouse/mouse_input.cpp | 38 | ||||
-rw-r--r-- | src/input_common/mouse/mouse_input.h | 9 | ||||
-rw-r--r-- | src/input_common/mouse/mouse_poller.cpp | 4 |
3 files changed, 25 insertions, 26 deletions
diff --git a/src/input_common/mouse/mouse_input.cpp b/src/input_common/mouse/mouse_input.cpp index d0ee64ad7..10786a541 100644 --- a/src/input_common/mouse/mouse_input.cpp +++ b/src/input_common/mouse/mouse_input.cpp @@ -2,9 +2,6 @@ // Licensed under GPLv2+ // Refer to the license.txt file included. -#include "common/logging/log.h" -#include "common/math_util.h" -#include "common/param_package.h" #include "input_common/mouse/mouse_input.h" namespace MouseInput { @@ -24,8 +21,11 @@ void Mouse::UpdateThread() { constexpr int update_time = 10; while (update_thread_running) { for (MouseInfo& info : mouse_info) { - Common::Vec3f angular_direction = {-info.tilt_direction.y, 0.0f, - -info.tilt_direction.x}; + const Common::Vec3f angular_direction{ + -info.tilt_direction.y, + 0.0f, + -info.tilt_direction.x, + }; info.motion.SetGyroscope(angular_direction * info.tilt_speed); info.motion.UpdateRotation(update_time * 1000); @@ -41,22 +41,24 @@ void Mouse::UpdateThread() { } void Mouse::UpdateYuzuSettings() { - MouseStatus pad_status{}; - if (buttons != 0) { - pad_status.button = last_button; - mouse_queue.Push(pad_status); + if (buttons == 0) { + return; } + + mouse_queue.Push(MouseStatus{ + .button = last_button, + }); } void Mouse::PressButton(int x, int y, int button_) { - if (button_ >= static_cast<int>(mouse_info.size())) { + const auto button_index = static_cast<std::size_t>(button_); + if (button_index >= mouse_info.size()) { return; } - int button = 1 << button_; - const auto button_index = static_cast<std::size_t>(button_); + const auto button = 1U << button_index; buttons |= static_cast<u16>(button); - last_button = static_cast<MouseButton>(button_); + last_button = static_cast<MouseButton>(button_index); mouse_info[button_index].mouse_origin = Common::MakeVec(x, y); mouse_info[button_index].last_mouse_position = Common::MakeVec(x, y); @@ -66,8 +68,8 @@ void Mouse::PressButton(int x, int y, int button_) { void Mouse::MouseMove(int x, int y) { for (MouseInfo& info : mouse_info) { if (info.data.pressed) { - auto mouse_move = Common::MakeVec(x, y) - info.mouse_origin; - auto mouse_change = Common::MakeVec(x, y) - info.last_mouse_position; + const auto mouse_move = Common::MakeVec(x, y) - info.mouse_origin; + const auto mouse_change = Common::MakeVec(x, y) - info.last_mouse_position; info.last_mouse_position = Common::MakeVec(x, y); info.data.axis = {mouse_move.x, -mouse_move.y}; @@ -82,12 +84,12 @@ void Mouse::MouseMove(int x, int y) { } void Mouse::ReleaseButton(int button_) { - if (button_ >= static_cast<int>(mouse_info.size())) { + const auto button_index = static_cast<std::size_t>(button_); + if (button_index >= mouse_info.size()) { return; } - int button = 1 << button_; - const auto button_index = static_cast<std::size_t>(button_); + const auto button = 1U << button_index; buttons &= static_cast<u16>(0xFF - button); mouse_info[button_index].tilt_speed = 0; diff --git a/src/input_common/mouse/mouse_input.h b/src/input_common/mouse/mouse_input.h index 761663334..65e64bee7 100644 --- a/src/input_common/mouse/mouse_input.h +++ b/src/input_common/mouse/mouse_input.h @@ -4,15 +4,14 @@ #pragma once -#include <algorithm> -#include <functional> +#include <array> #include <mutex> #include <thread> -#include <unordered_map> + #include "common/common_types.h" #include "common/threadsafe_queue.h" +#include "common/vector_math.h" #include "core/frontend/input.h" -#include "input_common/main.h" #include "input_common/motion_input.h" namespace MouseInput { @@ -50,7 +49,7 @@ public: * Signals that a button is pressed. * @param x the x-coordinate of the cursor * @param y the y-coordinate of the cursor - * @param button the button pressed + * @param button_ the button pressed */ void PressButton(int x, int y, int button_); diff --git a/src/input_common/mouse/mouse_poller.cpp b/src/input_common/mouse/mouse_poller.cpp index 6213f3dbd..7445ad3ad 100644 --- a/src/input_common/mouse/mouse_poller.cpp +++ b/src/input_common/mouse/mouse_poller.cpp @@ -2,11 +2,9 @@ // Licensed under GPLv2 or any later version // Refer to the license.txt file included. -#include <atomic> -#include <list> #include <mutex> #include <utility> -#include "common/assert.h" + #include "common/threadsafe_queue.h" #include "input_common/mouse/mouse_input.h" #include "input_common/mouse/mouse_poller.h" |