diff options
| author | vaxerski <43317083+vaxerski@users.noreply.github.com> | 2022-06-23 20:39:48 +0200 |
|---|---|---|
| committer | vaxerski <43317083+vaxerski@users.noreply.github.com> | 2022-06-23 20:39:48 +0200 |
| commit | f76b9c485246849bc3af838503fedbadf68023f5 (patch) | |
| tree | f18fe6f0ca4fb0aa2b1ab6a2bf1f66259ea879b5 /src/Compositor.cpp | |
| parent | ae6007522600c969b5fe45b3888be5f12f343d1c (diff) | |
fix: ignore reserved in getWindowInDirection
Diffstat (limited to 'src/Compositor.cpp')
| -rw-r--r-- | src/Compositor.cpp | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/src/Compositor.cpp b/src/Compositor.cpp index 1861e5aa..be94c093 100644 --- a/src/Compositor.cpp +++ b/src/Compositor.cpp @@ -770,8 +770,11 @@ void CCompositor::cleanupFadingOut() { } CWindow* CCompositor::getWindowInDirection(CWindow* pWindow, char dir) { - const auto POSA = pWindow->m_vPosition; - const auto SIZEA = pWindow->m_vSize; + + const auto WINDOWIDEALBB = pWindow->getWindowIdealBoundingBoxIgnoreReserved(); + + const auto POSA = Vector2D(WINDOWIDEALBB.x, WINDOWIDEALBB.y); + const auto SIZEA = Vector2D(WINDOWIDEALBB.width, WINDOWIDEALBB.height); auto longestIntersect = -1; CWindow* longestIntersectWindow = nullptr; @@ -780,8 +783,11 @@ CWindow* CCompositor::getWindowInDirection(CWindow* pWindow, char dir) { if (&w == pWindow || !windowValidMapped(&w) || w.m_bIsFloating || !isWorkspaceVisible(w.m_iWorkspaceID)) continue; - const auto POSB = w.m_vPosition; - const auto SIZEB = w.m_vSize; + const auto BWINDOWIDEALBB = w.getWindowIdealBoundingBoxIgnoreReserved(); + + const auto POSB = Vector2D(BWINDOWIDEALBB.x, BWINDOWIDEALBB.y); + const auto SIZEB = Vector2D(BWINDOWIDEALBB.width, BWINDOWIDEALBB.height); + switch (dir) { case 'l': if (STICKS(POSA.x, POSB.x + SIZEB.x)) { |
