diff options
| author | Vaxry <vaxry@vaxry.net> | 2025-06-15 12:11:28 +0200 |
|---|---|---|
| committer | Vaxry <vaxry@vaxry.net> | 2025-06-15 12:11:28 +0200 |
| commit | 3db3baa19e55a039c1a64a29c8e9aaadea4e5f01 (patch) | |
| tree | 018b367a9c57b2d2fca0e89a435e29d0b22444b0 /src/render/OpenGL.hpp | |
| parent | 57d20a1bf67676dc63347e4f1df2e4b66133733f (diff) | |
opengl: use a stack for storing monitor transform enabled
fixes #10487
Diffstat (limited to 'src/render/OpenGL.hpp')
| -rw-r--r-- | src/render/OpenGL.hpp | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/src/render/OpenGL.hpp b/src/render/OpenGL.hpp index fade4a9d..341ee575 100644 --- a/src/render/OpenGL.hpp +++ b/src/render/OpenGL.hpp @@ -11,6 +11,7 @@ #include <list> #include <string> #include <unordered_map> +#include <stack> #include <map> #include <cairo/cairo.h> @@ -195,7 +196,9 @@ class CHyprOpenGLImpl { int outerRound = -1 /* use round */); void renderTextureMatte(SP<CTexture> tex, const CBox& pBox, CFramebuffer& matte); - void setMonitorTransformEnabled(bool enabled); + void pushMonitorTransformEnabled(bool enabled); + void popMonitorTransformEnabled(); + void setRenderModifEnabled(bool enabled); void saveMatrix(); @@ -310,12 +313,14 @@ class CHyprOpenGLImpl { std::string m_extensions; bool m_fakeFrame = false; - bool m_endFrame = false; bool m_applyFinalShader = false; bool m_blend = false; bool m_offloadedFramebuffer = false; bool m_cmSupported = true; + bool m_monitorTransformEnabled = false; // do not modify directly + std::stack<bool> m_monitorTransformStack; + SShader m_finalScreenShader; CTimer m_globalTimer; GLuint m_currentProgram; |
