diff --git a/src/config/ConfigManager.cpp b/src/config/ConfigManager.cpp index 1f6b3829..2cda382f 100644 --- a/src/config/ConfigManager.cpp +++ b/src/config/ConfigManager.cpp @@ -1178,9 +1178,6 @@ void CConfigManager::loadConfigLoadVars() { // Force the compositor to fully re-render all monitors m->forceFullFrames = 2; - - // rearrange layers - g_pHyprRenderer->arrangeLayersForMonitor(m->ID); } // Reset no monitor reload @@ -1440,6 +1437,8 @@ void CConfigManager::performMonitorReload() { overAgain = true; break; } + + g_pHyprRenderer->arrangeLayersForMonitor(m->ID); } if (overAgain) diff --git a/src/render/Renderer.cpp b/src/render/Renderer.cpp index 6718f515..3db139e2 100644 --- a/src/render/Renderer.cpp +++ b/src/render/Renderer.cpp @@ -703,6 +703,8 @@ void CHyprRenderer::arrangeLayersForMonitor(const int& monitor) { if (PMONITOR->damage) damageMonitor(PMONITOR); + g_pLayoutManager->getCurrentLayout()->recalculateMonitor(monitor); + Debug::log(LOG, "Monitor %s layers arranged: reserved: %f %f %f %f", PMONITOR->szName.c_str(), PMONITOR->vecReservedTopLeft.x, PMONITOR->vecReservedTopLeft.y, PMONITOR->vecReservedBottomRight.x, PMONITOR->vecReservedBottomRight.y); }