diff options
Diffstat (limited to 'src/Compositor.cpp')
| -rw-r--r-- | src/Compositor.cpp | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/src/Compositor.cpp b/src/Compositor.cpp index 8cdd9889..56e8e8ff 100644 --- a/src/Compositor.cpp +++ b/src/Compositor.cpp @@ -769,4 +769,22 @@ bool CCompositor::isPointOnAnyMonitor(const Vector2D& point) { } return false; +} + +CWindow* CCompositor::getConstraintWindow(SMouse* pMouse) { + if (!pMouse->currentConstraint) + return nullptr; + + const auto PSURFACE = pMouse->currentConstraint->surface; + + for (auto& w : m_lWindows) { + if (PSURFACE == g_pXWaylandManager->getWindowSurface(&w)) { + if (!w.m_bIsX11 && !windowValidMapped(&w)) + continue; + + return &w; + } + } + + return nullptr; }
\ No newline at end of file |
