From 86bb95c125563300a50973ab50eec44c2943b9d1 Mon Sep 17 00:00:00 2001 From: vaxerski <43317083+vaxerski@users.noreply.github.com> Date: Sun, 24 Apr 2022 17:42:59 +0200 Subject: some fixes for xwayland windows and focus --- src/layout/DwindleLayout.cpp | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) (limited to 'src/layout/DwindleLayout.cpp') diff --git a/src/layout/DwindleLayout.cpp b/src/layout/DwindleLayout.cpp index a3fdeecb..8a6bd6d9 100644 --- a/src/layout/DwindleLayout.cpp +++ b/src/layout/DwindleLayout.cpp @@ -449,6 +449,7 @@ void CHyprDwindleLayout::onMouseMove(const Vector2D& mousePos) { if (g_pInputManager->dragButton == BTN_LEFT) { DRAGGINGWINDOW->m_vRealPosition.setValueAndWarp(m_vBeginDragPositionXY + DELTA); + g_pXWaylandManager->setWindowSize(DRAGGINGWINDOW, DRAGGINGWINDOW->m_vRealSize.goalv()); } else { if (DRAGGINGWINDOW->m_bIsFloating) { DRAGGINGWINDOW->m_vRealSize.setValueAndWarp(m_vBeginDragSizeXY + DELTA); @@ -601,8 +602,6 @@ void CHyprDwindleLayout::fullscreenRequestForWindow(CWindow* pWindow) { // get back its' dimensions from position and size pWindow->m_vRealPosition = pWindow->m_vPosition; pWindow->m_vRealSize = pWindow->m_vSize; - - g_pXWaylandManager->setWindowSize(pWindow, pWindow->m_vRealSize.goalv()); } } else { // if it now got fullscreen, make it fullscreen @@ -616,10 +615,10 @@ void CHyprDwindleLayout::fullscreenRequestForWindow(CWindow* pWindow) { // apply new pos and size being monitors' box pWindow->m_vRealPosition = PMONITOR->vecPosition; pWindow->m_vRealSize = PMONITOR->vecSize; - - g_pXWaylandManager->setWindowSize(pWindow, pWindow->m_vRealSize.goalv()); } + g_pXWaylandManager->setWindowSize(pWindow, pWindow->m_vRealSize.goalv()); + g_pCompositor->moveWindowToTop(pWindow); // we need to fix XWayland windows by sending them to NARNIA -- cgit v1.2.3