summaryrefslogtreecommitdiff
path: root/src/protocols
diff options
context:
space:
mode:
authorVaxry <vaxry@vaxry.net>2023-11-25 17:56:38 +0000
committerVaxry <vaxry@vaxry.net>2023-11-25 17:56:38 +0000
commitb281d8647a557f51977c25cb6c0d2f818fe4e4e4 (patch)
tree7551be7ab61a0882c15f9e501c4f7cc15ae352e5 /src/protocols
parent15b282ee0c8b48724b7d068aa95bb1133fdda2d7 (diff)
screencopy: use new isNvidia() for format
Diffstat (limited to 'src/protocols')
-rw-r--r--src/protocols/Screencopy.cpp2
-rw-r--r--src/protocols/ToplevelExport.cpp2
2 files changed, 2 insertions, 2 deletions
diff --git a/src/protocols/Screencopy.cpp b/src/protocols/Screencopy.cpp
index cff84fc5..f0f0f69e 100644
--- a/src/protocols/Screencopy.cpp
+++ b/src/protocols/Screencopy.cpp
@@ -210,7 +210,7 @@ void CScreencopyProtocolManager::captureOutput(wl_client* client, wl_resource* r
PFRAME->client = PCLIENT;
PCLIENT->ref++;
- PFRAME->shmFormat = wlr_output_preferred_read_format(PFRAME->pMonitor->output);
+ PFRAME->shmFormat = g_pHyprRenderer->isNvidia() ? DRM_FORMAT_XRGB8888 : wlr_output_preferred_read_format(PFRAME->pMonitor->output);
if (PFRAME->shmFormat == DRM_FORMAT_INVALID) {
Debug::log(ERR, "No format supported by renderer in capture output");
zwlr_screencopy_frame_v1_send_failed(PFRAME->resource);
diff --git a/src/protocols/ToplevelExport.cpp b/src/protocols/ToplevelExport.cpp
index db602396..6c626e87 100644
--- a/src/protocols/ToplevelExport.cpp
+++ b/src/protocols/ToplevelExport.cpp
@@ -177,7 +177,7 @@ void CToplevelExportProtocolManager::captureToplevel(wl_client* client, wl_resou
const auto PMONITOR = g_pCompositor->getMonitorFromID(PFRAME->pWindow->m_iMonitorID);
- PFRAME->shmFormat = wlr_output_preferred_read_format(PMONITOR->output);
+ PFRAME->shmFormat = g_pHyprRenderer->isNvidia() ? DRM_FORMAT_XRGB8888 : wlr_output_preferred_read_format(PMONITOR->output);
if (PFRAME->shmFormat == DRM_FORMAT_INVALID) {
Debug::log(ERR, "No format supported by renderer in capture toplevel");
hyprland_toplevel_export_frame_v1_send_failed(resource);