From 51aebb284531f1203d44841c2872a63da8458978 Mon Sep 17 00:00:00 2001 From: vaxerski <43317083+vaxerski@users.noreply.github.com> Date: Tue, 29 Nov 2022 11:21:03 +0000 Subject: fix minor issues with blur w/o new optim --- src/render/OpenGL.cpp | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/src/render/OpenGL.cpp b/src/render/OpenGL.cpp index 5d5f9e55..bee6449b 100644 --- a/src/render/OpenGL.cpp +++ b/src/render/OpenGL.cpp @@ -786,12 +786,21 @@ void CHyprOpenGLImpl::renderTextureWithBlur(const CTexture& tex, wlr_box* pBox, renderTexture(tex, pBox, a, round, false, true); return; } + } else { + pixman_region32_init_rect(&inverseOpaque, 0, 0, pBox->width, pBox->height); } // vvv TODO: layered blur fbs? const bool USENEWOPTIMIZE = (*PBLURNEWOPTIMIZE && m_pCurrentWindow && !m_pCurrentWindow->m_bIsFloating && m_RenderData.pCurrentMonData->blurFB.m_cTex.m_iTexID && !g_pCompositor->isWorkspaceSpecial(m_pCurrentWindow->m_iWorkspaceID)); - const auto POUTFB = USENEWOPTIMIZE ? &m_RenderData.pCurrentMonData->blurFB : blurMainFramebufferWithDamage(a, pBox, &inverseOpaque); + CFramebuffer* POUTFB = nullptr; + if (!USENEWOPTIMIZE) { + pixman_region32_translate(&inverseOpaque, pBox->x, pBox->y); + + POUTFB = blurMainFramebufferWithDamage(a, pBox, &inverseOpaque); + } else { + POUTFB = &m_RenderData.pCurrentMonData->blurFB; + } pixman_region32_fini(&inverseOpaque); -- cgit v1.2.3