summaryrefslogtreecommitdiff
path: root/src/events/Devices.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/events/Devices.cpp')
-rw-r--r--src/events/Devices.cpp9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/events/Devices.cpp b/src/events/Devices.cpp
index 7a47df77..df4501cf 100644
--- a/src/events/Devices.cpp
+++ b/src/events/Devices.cpp
@@ -56,7 +56,16 @@ void Events::listener_mouseAxis(wl_listener* listener, void* data) {
void Events::listener_requestMouse(wl_listener* listener, void* data) {
const auto EVENT = (wlr_seat_pointer_request_set_cursor_event*)data;
+
+ if (!g_pHyprRenderer->shouldRenderCursor())
+ return;
+ if (!EVENT->surface) {
+ g_pHyprRenderer->m_bWindowRequestedCursorHide = true;
+ } else {
+ g_pHyprRenderer->m_bWindowRequestedCursorHide = false;
+ }
+
if (EVENT->seat_client == g_pCompositor->m_sSeat.seat->pointer_state.focused_client)
wlr_cursor_set_surface(g_pCompositor->m_sWLRCursor, EVENT->surface, EVENT->hotspot_x, EVENT->hotspot_y);
}