summaryrefslogtreecommitdiff
path: root/src/protocols/FocusGrab.hpp
diff options
context:
space:
mode:
authorVaxry <vaxry@vaxry.net>2024-05-11 01:02:57 +0100
committerVaxry <vaxry@vaxry.net>2024-05-14 23:13:33 +0100
commitfc72df8e58bc127442a245f2f29a3246acf77cce (patch)
treebe68c03888760af0c2a13bad4aed224fd6adfaa3 /src/protocols/FocusGrab.hpp
parent0cfdde3d1acbfbf698af17f6986fbc4d644214da (diff)
seatmgr: Add a grab class
Diffstat (limited to 'src/protocols/FocusGrab.hpp')
-rw-r--r--src/protocols/FocusGrab.hpp10
1 files changed, 5 insertions, 5 deletions
diff --git a/src/protocols/FocusGrab.hpp b/src/protocols/FocusGrab.hpp
index 3e5d36ab..40922c22 100644
--- a/src/protocols/FocusGrab.hpp
+++ b/src/protocols/FocusGrab.hpp
@@ -8,6 +8,7 @@
#include <vector>
class CFocusGrab;
+class CSeatGrab;
class CFocusGrabSurfaceState {
public:
@@ -40,14 +41,13 @@ class CFocusGrab {
void removeSurface(wlr_surface* surface);
void eraseSurface(wlr_surface* surface);
void refocusKeyboard();
- void commit();
+ void commit(bool removeOnly = false);
SP<CHyprlandFocusGrabV1> resource;
std::unordered_map<wlr_surface*, UP<CFocusGrabSurfaceState>> m_mSurfaces;
- // wlr_seat_pointer_grab m_sPointerGrab;
- // wlr_seat_keyboard_grab m_sKeyboardGrab;
- // wlr_seat_touch_grab m_sTouchGrab;
- bool m_bGrabActive = false;
+ SP<CSeatGrab> grab;
+
+ bool m_bGrabActive = false;
DYNLISTENER(pointerGrabStarted);
DYNLISTENER(keyboardGrabStarted);