diff options
Diffstat (limited to 'src/managers/input/InputManager.hpp')
| -rw-r--r-- | src/managers/input/InputManager.hpp | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/src/managers/input/InputManager.hpp b/src/managers/input/InputManager.hpp index 06e6cb07..1a50c585 100644 --- a/src/managers/input/InputManager.hpp +++ b/src/managers/input/InputManager.hpp @@ -6,6 +6,11 @@ #include "../../Window.hpp" #include "../../helpers/Timer.hpp" +enum eClickBehaviorMode { + CLICKMODE_DEFAULT = 0, + CLICKMODE_KILL +}; + class CInputManager { public: @@ -32,6 +37,10 @@ public: void updateDragIcon(); void updateCapabilities(wlr_input_device*); + void setClickMode(eClickBehaviorMode); + eClickBehaviorMode getClickMode(); + void processMouseRequest(wlr_seat_pointer_request_set_cursor_event*); + // for dragging floating windows CWindow* currentlyDraggedWindow = nullptr; @@ -58,6 +67,13 @@ public: private: + // for click behavior override + eClickBehaviorMode m_ecbClickBehavior = CLICKMODE_DEFAULT; + Vector2D m_vLastCursorPosFloored = Vector2D(); + + void processMouseDownNormal(wlr_pointer_button_event* e); + void processMouseDownKill(wlr_pointer_button_event* e); + uint32_t m_uiCapabilities = 0; void mouseMoveUnified(uint32_t, bool refocus = false); |
