From b09f157b93576ccd5bd1038df2ab8f84f03ec4c8 Mon Sep 17 00:00:00 2001 From: vaxerski <43317083+vaxerski@users.noreply.github.com> Date: Fri, 26 Aug 2022 11:33:36 +0200 Subject: [PATCH] fix fullscreen on workspace rule silent --- src/events/Windows.cpp | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/src/events/Windows.cpp b/src/events/Windows.cpp index 2ee73fc6..2beaea85 100644 --- a/src/events/Windows.cpp +++ b/src/events/Windows.cpp @@ -97,10 +97,12 @@ void Events::listener_mapWindow(void* owner, void* data) { PWINDOW->m_vPseudoSize = Vector2D(desiredGeometry.width, desiredGeometry.height); } + CWindow* pFullscreenWindow = nullptr; + if (PWORKSPACE->m_bHasFullscreenWindow && !PWINDOW->m_bIsFloating) { const auto PFULLWINDOW = g_pCompositor->getFullscreenWindowOnWorkspace(PWORKSPACE->m_iID); - g_pLayoutManager->getCurrentLayout()->fullscreenRequestForWindow(PFULLWINDOW, FULLSCREEN_FULL, false); - g_pXWaylandManager->setWindowFullscreen(PFULLWINDOW, PFULLWINDOW->m_bIsFullscreen); + pFullscreenWindow = PFULLWINDOW; + g_pCompositor->setWindowFullscreen(PFULLWINDOW, false, PWORKSPACE->m_efFullscreenMode); } // window rules @@ -330,6 +332,10 @@ void Events::listener_mapWindow(void* owner, void* data) { g_pCompositor->setWindowFullscreen(PWINDOW, true, FULLSCREEN_FULL); } + if (pFullscreenWindow && workspaceSilent) { + g_pCompositor->setWindowFullscreen(pFullscreenWindow, true, PWORKSPACE->m_efFullscreenMode); + } + // recheck idle inhibitors g_pInputManager->recheckIdleInhibitorStatus();