diff options
Diffstat (limited to 'src/input_common/mouse')
| -rw-r--r-- | src/input_common/mouse/mouse_input.cpp | 9 | ||||
| -rw-r--r-- | src/input_common/mouse/mouse_input.h | 8 | 
2 files changed, 16 insertions, 1 deletions
diff --git a/src/input_common/mouse/mouse_input.cpp b/src/input_common/mouse/mouse_input.cpp index fff1c6b45..a335e6da1 100644 --- a/src/input_common/mouse/mouse_input.cpp +++ b/src/input_common/mouse/mouse_input.cpp @@ -143,6 +143,15 @@ void Mouse::ReleaseButton(MouseButton button_) {      mouse_info[button_index].data.axis = {0, 0};  } +void Mouse::ReleaseAllButtons() { +    buttons = 0; +    for (auto& info : mouse_info) { +        info.tilt_speed = 0; +        info.data.pressed = false; +        info.data.axis = {0, 0}; +    } +} +  void Mouse::BeginConfiguration() {      buttons = 0;      last_button = MouseButton::Undefined; diff --git a/src/input_common/mouse/mouse_input.h b/src/input_common/mouse/mouse_input.h index 750d9b011..5a971ad67 100644 --- a/src/input_common/mouse/mouse_input.h +++ b/src/input_common/mouse/mouse_input.h @@ -65,10 +65,16 @@ public:      void MouseMove(int x, int y, int center_x, int center_y);      /** -     * Signals that a motion sensor tilt has ended. +     * Signals that a button is released. +     * @param button_ the button pressed       */      void ReleaseButton(MouseButton button_); +    /** +     * Signals that all buttons are released +     */ +    void ReleaseAllButtons(); +      [[nodiscard]] bool ToggleButton(std::size_t button_);      [[nodiscard]] bool UnlockButton(std::size_t button_);  | 
