diff options
| author | Vaxry <vaxry@vaxry.net> | 2025-04-29 22:02:50 +0100 |
|---|---|---|
| committer | Vaxry <vaxry@vaxry.net> | 2025-04-29 22:02:55 +0100 |
| commit | 6483f4ec220a301ea3eb9a61124bc5fcb8259ed2 (patch) | |
| tree | c2b1166c9d90351bd1a1556c382af08b2432fcb9 /src/protocols/Screencopy.cpp | |
| parent | ae1fe860ff73071cd14803c4495049a8969bb8f9 (diff) | |
screencopy: don't render cursor when frame doesn't want it
Diffstat (limited to 'src/protocols/Screencopy.cpp')
| -rw-r--r-- | src/protocols/Screencopy.cpp | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/src/protocols/Screencopy.cpp b/src/protocols/Screencopy.cpp index 6b60abfd..3862dddd 100644 --- a/src/protocols/Screencopy.cpp +++ b/src/protocols/Screencopy.cpp @@ -208,8 +208,9 @@ void CScreencopyFrame::copyDmabuf(std::function<void(bool)> callback) { g_pHyprOpenGL->renderTexture(TEXTURE, monbox, 1); g_pHyprOpenGL->setRenderModifEnabled(true); g_pHyprOpenGL->setMonitorTransformEnabled(false); - g_pPointerManager->renderSoftwareCursorsFor(pMonitor.lock(), Time::steadyNow(), fakeDamage, g_pInputManager->getMouseCoordsInternal() - pMonitor->vecPosition - box.pos(), - true); + if (overlayCursor) + g_pPointerManager->renderSoftwareCursorsFor(pMonitor.lock(), Time::steadyNow(), fakeDamage, + g_pInputManager->getMouseCoordsInternal() - pMonitor->vecPosition - box.pos(), true); } else if (PERM == PERMISSION_RULE_ALLOW_MODE_PENDING) g_pHyprOpenGL->clear(Colors::BLACK); else { @@ -263,8 +264,9 @@ bool CScreencopyFrame::copyShm() { g_pHyprOpenGL->renderTexture(TEXTURE, monbox, 1); g_pHyprOpenGL->setRenderModifEnabled(true); g_pHyprOpenGL->setMonitorTransformEnabled(false); - g_pPointerManager->renderSoftwareCursorsFor(pMonitor.lock(), Time::steadyNow(), fakeDamage, g_pInputManager->getMouseCoordsInternal() - pMonitor->vecPosition - box.pos(), - true); + if (overlayCursor) + g_pPointerManager->renderSoftwareCursorsFor(pMonitor.lock(), Time::steadyNow(), fakeDamage, + g_pInputManager->getMouseCoordsInternal() - pMonitor->vecPosition - box.pos(), true); } else if (PERM == PERMISSION_RULE_ALLOW_MODE_PENDING) g_pHyprOpenGL->clear(Colors::BLACK); else { |
