summaryrefslogtreecommitdiff
path: root/src/render
diff options
context:
space:
mode:
authorVaxry <vaxry@vaxry.net>2024-04-03 21:35:16 +0100
committerVaxry <vaxry@vaxry.net>2024-04-03 21:35:16 +0100
commitd605e475118fd66e625a5a23c687cd01a34b302c (patch)
treeb178d082a46a8146909dbe21d58f583de0e513cb /src/render
parent10146f5ec50caeae2d835f5f6296137e2ac6f243 (diff)
renderer: block screen shader on screencopy
Diffstat (limited to 'src/render')
-rw-r--r--src/render/OpenGL.cpp3
-rw-r--r--src/render/OpenGL.hpp1
2 files changed, 3 insertions, 1 deletions
diff --git a/src/render/OpenGL.cpp b/src/render/OpenGL.cpp
index 8be8e54e..9e3fb47b 100644
--- a/src/render/OpenGL.cpp
+++ b/src/render/OpenGL.cpp
@@ -365,7 +365,7 @@ void CHyprOpenGLImpl::end() {
}
m_bEndFrame = true;
- m_bApplyFinalShader = true;
+ m_bApplyFinalShader = !m_RenderData.blockScreenShader;
if (m_RenderData.mouseZoomUseMouse)
m_RenderData.useNearestNeighbor = true;
@@ -388,6 +388,7 @@ void CHyprOpenGLImpl::end() {
m_RenderData.mouseZoomFactor = 1.f;
m_RenderData.mouseZoomUseMouse = true;
m_RenderData.forceIntrospection = false;
+ m_RenderData.blockScreenShader = false;
m_RenderData.currentFB = nullptr;
m_RenderData.mainFB = nullptr;
m_RenderData.outFB = nullptr;
diff --git a/src/render/OpenGL.hpp b/src/render/OpenGL.hpp
index 6af2a00f..08a1583d 100644
--- a/src/render/OpenGL.hpp
+++ b/src/render/OpenGL.hpp
@@ -112,6 +112,7 @@ struct SCurrentRenderData {
bool mouseZoomUseMouse = true; // true by default
bool useNearestNeighbor = false;
bool forceIntrospection = false; // cleaned in ::end()
+ bool blockScreenShader = false;
Vector2D primarySurfaceUVTopLeft = Vector2D(-1, -1);
Vector2D primarySurfaceUVBottomRight = Vector2D(-1, -1);