summaryrefslogtreecommitdiff
path: root/src/layout/IHyprLayout.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/layout/IHyprLayout.cpp')
-rw-r--r--src/layout/IHyprLayout.cpp10
1 files changed, 9 insertions, 1 deletions
diff --git a/src/layout/IHyprLayout.cpp b/src/layout/IHyprLayout.cpp
index 4a3f1800..173668bc 100644
--- a/src/layout/IHyprLayout.cpp
+++ b/src/layout/IHyprLayout.cpp
@@ -206,8 +206,16 @@ void IHyprLayout::onMouseMove(const Vector2D& mousePos) {
if (PMONITOR) {
DRAGGINGWINDOW->m_iMonitorID = PMONITOR->ID;
- DRAGGINGWINDOW->m_iWorkspaceID = PMONITOR->activeWorkspace;
+
+ if (DRAGGINGWINDOW->m_iWorkspaceID != PMONITOR->activeWorkspace) {
+ DRAGGINGWINDOW->m_iWorkspaceID = PMONITOR->activeWorkspace;
+ auto PWORKSPACE = g_pCompositor->getWorkspaceByID(DRAGGINGWINDOW->m_iWorkspaceID);
+ if (PWORKSPACE) {
+ g_pEventManager->postEvent(SHyprIPCEvent{"movewindow", getFormat("%x,%s", DRAGGINGWINDOW, PWORKSPACE->m_szName.c_str())});
+ }
+ }
+
DRAGGINGWINDOW->updateToplevel();
}