From f6067816fb2bbd7dc9a00da6391cc6dcf5991035 Mon Sep 17 00:00:00 2001 From: vaxerski <43317083+vaxerski@users.noreply.github.com> Date: Wed, 23 Nov 2022 23:40:05 +0000 Subject: [PATCH] skip covered windows on fullscreen workspaces in getWindowInDirection --- src/Compositor.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/Compositor.cpp b/src/Compositor.cpp index f0c51dc5..68635423 100644 --- a/src/Compositor.cpp +++ b/src/Compositor.cpp @@ -1152,6 +1152,10 @@ CWindow* CCompositor::getWindowInDirection(CWindow* pWindow, char dir) { if (w.get() == pWindow || !w->m_bIsMapped || w->isHidden() || w->m_bIsFloating || !isWorkspaceVisible(w->m_iWorkspaceID)) continue; + const auto PWORKSPACE = g_pCompositor->getWorkspaceByID(w->m_iWorkspaceID); + if (PWORKSPACE->m_bHasFullscreenWindow && !w->m_bIsFullscreen && !w->m_bCreatedOverFullscreen) + continue; + const auto BWINDOWIDEALBB = w->getWindowIdealBoundingBoxIgnoreReserved(); const auto POSB = Vector2D(BWINDOWIDEALBB.x, BWINDOWIDEALBB.y);