diff --git a/src/render/Renderer.cpp b/src/render/Renderer.cpp index 9aa794b4ff0..f3690fd06a7 100644 --- a/src/render/Renderer.cpp +++ b/src/render/Renderer.cpp @@ -807,13 +807,16 @@ void CHyprRenderer::renderAllClientsForWorkspace(PHLMONITOR pMonitor, PHLWORKSPA if (scale != 1.f) RENDERMODIFDATA.modifs.emplace_back(std::make_pair<>(SRenderModifData::eRenderModifType::RMOD_TYPE_SCALE, scale)); - CScopeGuard x([] {}); - if (!RENDERMODIFDATA.modifs.empty()) { g_pHyprRenderer->m_sRenderPass.add(makeShared(CRendererHintsPassElement::SData{RENDERMODIFDATA})); - x = CScopeGuard([] { g_pHyprRenderer->m_sRenderPass.add(makeShared(CRendererHintsPassElement::SData{SRenderModifData{}})); }); } + CScopeGuard x([&RENDERMODIFDATA] { + if (!RENDERMODIFDATA.modifs.empty()) { + g_pHyprRenderer->m_sRenderPass.add(makeShared(CRendererHintsPassElement::SData{SRenderModifData{}})); + } + }); + if (!pWorkspace) { // allow rendering without a workspace. In this case, just render layers. @@ -1893,7 +1896,6 @@ void CHyprRenderer::ensureCursorRenderingMode() { } void CHyprRenderer::setCursorHidden(bool hide) { - if (hide == m_bCursorHidden) return; @@ -1935,7 +1937,6 @@ std::tuple CHyprRenderer::getRenderTimes(PHLMONITOR pMonito } static int handleCrashLoop(void* data) { - g_pHyprNotificationOverlay->addNotification("Hyprland will crash in " + std::to_string(10 - (int)(g_pHyprRenderer->m_fCrashingDistort * 2.f)) + "s.", CHyprColor(0), 5000, ICON_INFO); @@ -2053,7 +2054,6 @@ void CHyprRenderer::unsetEGL() { } bool CHyprRenderer::beginRender(PHLMONITOR pMonitor, CRegion& damage, eRenderMode mode, SP buffer, CFramebuffer* fb, bool simple) { - makeEGLCurrent(); m_sRenderPass.clear(); diff --git a/subprojects/hyprland-protocols b/subprojects/hyprland-protocols index 271df559dd3..c7c3f4cd0fa 160000 --- a/subprojects/hyprland-protocols +++ b/subprojects/hyprland-protocols @@ -1 +1 @@ -Subproject commit 271df559dd30e4bc5ec6af02d017ac0aaabd63a7 +Subproject commit c7c3f4cd0faed21fc90ba6bd06fe4f3e0e057ea8