From f108ec78e261940d271e18caa509dbb93de90165 Mon Sep 17 00:00:00 2001 From: vaxerski <43317083+vaxerski@users.noreply.github.com> Date: Wed, 23 Mar 2022 16:51:48 +0100 Subject: Added movetoworkspace --- src/layout/DwindleLayout.cpp | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) (limited to 'src/layout/DwindleLayout.cpp') diff --git a/src/layout/DwindleLayout.cpp b/src/layout/DwindleLayout.cpp index b03f0ffd..3c1ee742 100644 --- a/src/layout/DwindleLayout.cpp +++ b/src/layout/DwindleLayout.cpp @@ -116,6 +116,9 @@ void CHyprDwindleLayout::applyNodeDataToWindow(SDwindleNodeData* pNode) { } void CHyprDwindleLayout::onWindowCreated(CWindow* pWindow) { + if (pWindow->m_bIsFloating) + return; + m_lDwindleNodesData.push_back(SDwindleNodeData()); const auto PNODE = &m_lDwindleNodesData.back(); @@ -127,7 +130,13 @@ void CHyprDwindleLayout::onWindowCreated(CWindow* pWindow) { PNODE->isNode = false; PNODE->layout = this; - SDwindleNodeData* OPENINGON = getNodeFromWindow(g_pCompositor->vectorToWindowTiled(g_pInputManager->getMouseCoordsInternal())); + SDwindleNodeData* OPENINGON; + const auto MONFROMCURSOR = g_pCompositor->getMonitorFromCursor(); + + if (PMONITOR == MONFROMCURSOR) + OPENINGON = getNodeFromWindow(g_pCompositor->vectorToWindowTiled(g_pInputManager->getMouseCoordsInternal())); + else + OPENINGON = getFirstNodeOnWorkspace(MONFROMCURSOR->activeWorkspace); // if it's the first, it's easy. Make it fullscreen. if (!OPENINGON) { -- cgit v1.2.3