From db35a1c6d0eaa6088a5e05dca83da1a21221678d Mon Sep 17 00:00:00 2001 From: vaxerski Date: Fri, 12 Aug 2022 17:10:07 +0200 Subject: [PATCH] ensure egl is current in begin --- src/render/OpenGL.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/render/OpenGL.cpp b/src/render/OpenGL.cpp index c5ebdb45..5eacc294 100644 --- a/src/render/OpenGL.cpp +++ b/src/render/OpenGL.cpp @@ -76,6 +76,10 @@ GLuint CHyprOpenGLImpl::compileShader(const GLuint& type, std::string src) { void CHyprOpenGLImpl::begin(CMonitor* pMonitor, pixman_region32_t* pDamage, bool fake) { m_RenderData.pMonitor = pMonitor; + if (eglGetCurrentContext() != wlr_egl_get_context(g_pCompositor->m_sWLREGL)) { + eglMakeCurrent(wlr_egl_get_display(g_pCompositor->m_sWLREGL), EGL_NO_SURFACE, EGL_NO_SURFACE, wlr_egl_get_context(g_pCompositor->m_sWLREGL)); + } + glViewport(0, 0, pMonitor->vecPixelSize.x, pMonitor->vecPixelSize.y); matrixProjection(m_RenderData.projection, pMonitor->vecPixelSize.x, pMonitor->vecPixelSize.y, WL_OUTPUT_TRANSFORM_NORMAL);