summaryrefslogtreecommitdiff
path: root/src/render/OpenGL.cpp
diff options
context:
space:
mode:
authorvaxerski <43317083+vaxerski@users.noreply.github.com>2022-04-19 19:01:23 +0200
committervaxerski <43317083+vaxerski@users.noreply.github.com>2022-04-19 19:01:23 +0200
commit08ee14b4a0a93793f0f65295056889597ea8af56 (patch)
tree709cb33221c98bf29286299f52a0071ce8fcbdef /src/render/OpenGL.cpp
parent1eec8c374151bdb74559749bb76fa732e41cb0ba (diff)
Added dynamic monitor rules
Diffstat (limited to 'src/render/OpenGL.cpp')
-rw-r--r--src/render/OpenGL.cpp13
1 files changed, 12 insertions, 1 deletions
diff --git a/src/render/OpenGL.cpp b/src/render/OpenGL.cpp
index 02909e36..32e30e7a 100644
--- a/src/render/OpenGL.cpp
+++ b/src/render/OpenGL.cpp
@@ -685,4 +685,15 @@ void CHyprOpenGLImpl::clearWithTex() {
wlr_box box = {0, 0, m_RenderData.pMonitor->vecSize.x, m_RenderData.pMonitor->vecSize.y};
renderTexture(m_mMonitorBGTextures[m_RenderData.pMonitor], &box, 255, 0);
-} \ No newline at end of file
+}
+
+void CHyprOpenGLImpl::destroyMonitorResources(SMonitor* pMonitor) {
+ g_pHyprOpenGL->m_mMonitorRenderResources[pMonitor].mirrorFB.release();
+ g_pHyprOpenGL->m_mMonitorRenderResources[pMonitor].primaryFB.release();
+ g_pHyprOpenGL->m_mMonitorRenderResources[pMonitor].stencilTex.destroyTexture();
+ g_pHyprOpenGL->m_mMonitorBGTextures[pMonitor].destroyTexture();
+ g_pHyprOpenGL->m_mMonitorRenderResources.erase(pMonitor);
+ g_pHyprOpenGL->m_mMonitorBGTextures.erase(pMonitor);
+
+ Debug::log(LOG, "Monitor %s -> destroyed all render data", pMonitor->szName.c_str());
+}