diff --git a/src/helpers/Monitor.cpp b/src/helpers/Monitor.cpp index d322cee5..823066ac 100644 --- a/src/helpers/Monitor.cpp +++ b/src/helpers/Monitor.cpp @@ -96,8 +96,6 @@ void CMonitor::onConnect(bool noRule) { } m_bEnabled = true; - - wlr_xcursor_manager_load(g_pCompositor->m_sWLRXCursorMgr, monitorRule.scale); // create it in the arr vecPosition = monitorRule.offset; @@ -110,6 +108,8 @@ void CMonitor::onConnect(bool noRule) { if (!noRule) g_pHyprRenderer->applyMonitorRule(this, &monitorRule, true); + wlr_xcursor_manager_load(g_pCompositor->m_sWLRXCursorMgr, scale); + Debug::log(LOG, "Added new monitor with name %s at %i,%i with size %ix%i, pointer %x", output->name, (int)vecPosition.x, (int)vecPosition.y, (int)vecPixelSize.x, (int)vecPixelSize.y, output); damage = wlr_output_damage_create(output); diff --git a/src/helpers/Monitor.hpp b/src/helpers/Monitor.hpp index b5fea7a9..75cdb969 100644 --- a/src/helpers/Monitor.hpp +++ b/src/helpers/Monitor.hpp @@ -20,7 +20,7 @@ public: uint64_t ID = -1; int activeWorkspace = -1; - float scale = 1; + float scale = 1; std::string szName = ""; diff --git a/src/render/Renderer.cpp b/src/render/Renderer.cpp index 20e77afe..90dfaa71 100644 --- a/src/render/Renderer.cpp +++ b/src/render/Renderer.cpp @@ -1410,6 +1410,8 @@ bool CHyprRenderer::applyMonitorRule(CMonitor* pMonitor, SMonitorRule* pMonitorR pMonitor->vecPosition = pMonitorRule->offset; } + wlr_output_enable(pMonitor->output, 1); + // update renderer (here because it will call rollback, so we cannot do this before committing) g_pHyprOpenGL->destroyMonitorResources(pMonitor);