diff options
Diffstat (limited to 'src/layout/DwindleLayout.cpp')
| -rw-r--r-- | src/layout/DwindleLayout.cpp | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/src/layout/DwindleLayout.cpp b/src/layout/DwindleLayout.cpp index ce1e2a3f..5e4be345 100644 --- a/src/layout/DwindleLayout.cpp +++ b/src/layout/DwindleLayout.cpp @@ -324,12 +324,25 @@ void CHyprDwindleLayout::onBeginDragWindow() { return; } + if (!DRAGGINGWINDOW->m_bIsFloating) { + DRAGGINGWINDOW->m_bDraggingTiled = true; + changeWindowFloatingMode(DRAGGINGWINDOW); + } else { + DRAGGINGWINDOW->m_bDraggingTiled = false; + } m_vBeginDragXY = g_pInputManager->getMouseCoordsInternal(); m_vBeginDragPositionXY = DRAGGINGWINDOW->m_vRealPosition; m_vBeginDragSizeXY = DRAGGINGWINDOW->m_vRealSize; } +void CHyprDwindleLayout::onEndDragWindow() { + const auto DRAGGINGWINDOW = g_pInputManager->currentlyDraggedWindow; + + if (DRAGGINGWINDOW->m_bDraggingTiled) + changeWindowFloatingMode(DRAGGINGWINDOW); +} + void CHyprDwindleLayout::onMouseMove(const Vector2D& mousePos) { const auto DRAGGINGWINDOW = g_pInputManager->currentlyDraggedWindow; |
