From a4b026df2b7f94b2985d38b1ef6fb127782c1a27 Mon Sep 17 00:00:00 2001 From: vaxerski <43317083+vaxerski@users.noreply.github.com> Date: Sun, 20 Mar 2022 11:14:24 +0100 Subject: floating windows support --- src/managers/InputManager.cpp | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) (limited to 'src/managers/InputManager.cpp') diff --git a/src/managers/InputManager.cpp b/src/managers/InputManager.cpp index ecf63bf2..cc7d302c 100644 --- a/src/managers/InputManager.cpp +++ b/src/managers/InputManager.cpp @@ -41,6 +41,7 @@ void CInputManager::mouseMoveUnified(uint32_t time) { wlr_seat_pointer_notify_motion(g_pCompositor->m_sWLRSeat, time, surfaceLocal.x, surfaceLocal.y); g_pCompositor->m_pLastMonitor = g_pCompositor->getMonitorFromCursor(); + g_pLayoutManager->getCurrentLayout()->onMouseMove(getMouseCoordsInternal()); } void CInputManager::onMouseButton(wlr_event_pointer_button* e) { @@ -48,10 +49,16 @@ void CInputManager::onMouseButton(wlr_event_pointer_button* e) { switch (e->state) { case WLR_BUTTON_PRESSED: - // todo: keybinds + if (e->button == BTN_LEFT || e->button == BTN_RIGHT) { + currentlyDraggedWindow = g_pCompositor->windowFloatingFromCursor(); + dragButton = e->button; + + g_pLayoutManager->getCurrentLayout()->onBeginDragWindow(); + } break; case WLR_BUTTON_RELEASED: - // todo: keybinds + currentlyDraggedWindow = nullptr; + dragButton = -1; break; } -- cgit v1.2.3