From fa35537903bff620349df9192943cd92b93a7c4c Mon Sep 17 00:00:00 2001 From: vaxerski <43317083+vaxerski@users.noreply.github.com> Date: Fri, 24 Dec 2021 17:01:55 +0100 Subject: [PATCH] fixed #24 --- src/windowManager.cpp | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/src/windowManager.cpp b/src/windowManager.cpp index d3fbd48..95c3273 100644 --- a/src/windowManager.cpp +++ b/src/windowManager.cpp @@ -366,10 +366,8 @@ void CWindowManager::refreshDirtyWindows() { continue; // first and foremost, let's check if the window isn't on a hidden workspace - // or that it is not a non-fullscreen window in a fullscreen workspace thats under // or an animated workspace if (!isWorkspaceVisible(window.getWorkspaceID()) - || (bHasFullscreenWindow && !window.getFullscreen() && (window.getUnderFullscreen() || !window.getIsFloating())) || PWORKSPACE->getAnimationInProgress()) { Values[0] = (int)window.getRealPosition().x + (int)PWORKSPACE->getCurrentOffset().x; @@ -392,6 +390,18 @@ void CWindowManager::refreshDirtyWindows() { continue; } + // or that it is not a non-fullscreen window in a fullscreen workspace thats under + if (bHasFullscreenWindow && !window.getFullscreen() && (window.getUnderFullscreen() || !window.getIsFloating())) { + Values[0] = 150000; + Values[1] = 150000; + if (VECTORDELTANONZERO(window.getLastUpdatePosition(), Vector2D(Values[0], Values[1]))) { + xcb_configure_window(DisplayConnection, window.getDrawable(), XCB_CONFIG_WINDOW_X | XCB_CONFIG_WINDOW_Y, Values); + window.setLastUpdatePosition(Vector2D(Values[0], Values[1])); + } + + continue; + } + // Fullscreen window. No border, all screen. if (window.getFullscreen()) { Values[0] = 0;