From 9c09f2a847a1372c73cf67dc9e7e9ebe309b142e Mon Sep 17 00:00:00 2001 From: Vaxry Date: Fri, 1 Dec 2023 17:20:56 +0000 Subject: screencopy: fix shm exports with 10-bit fixes #4019 --- src/render/OpenGL.cpp | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'src/render/OpenGL.cpp') diff --git a/src/render/OpenGL.cpp b/src/render/OpenGL.cpp index dbdabdad..4eb45d8f 100644 --- a/src/render/OpenGL.cpp +++ b/src/render/OpenGL.cpp @@ -2064,3 +2064,16 @@ void CHyprOpenGLImpl::bindBackOnMain() { void CHyprOpenGLImpl::setMonitorTransformEnabled(bool enabled) { m_bEndFrame = !enabled; } + +uint32_t CHyprOpenGLImpl::getPreferredReadFormat(CMonitor* pMonitor) { + if (g_pHyprRenderer->isNvidia()) + return DRM_FORMAT_XRGB8888; + + if (pMonitor->drmFormat == DRM_FORMAT_XRGB8888) + return DRM_FORMAT_XRGB8888; + if (pMonitor->drmFormat == DRM_FORMAT_XBGR8888) + return DRM_FORMAT_XBGR8888; + if (pMonitor->drmFormat == DRM_FORMAT_XRGB2101010 || pMonitor->drmFormat == DRM_FORMAT_XBGR2101010) + return DRM_FORMAT_XBGR2101010; + return DRM_FORMAT_INVALID; +} -- cgit v1.2.3