summaryrefslogtreecommitdiff
path: root/src/render/Renderer.cpp
diff options
context:
space:
mode:
authoroutfoxxed <outfoxxed@outfoxxed.me>2025-01-12 09:10:36 -0800
committerGitHub <noreply@github.com>2025-01-12 17:10:36 +0000
commita6b263713a2b862ed41362082e2147e081934077 (patch)
tree2f6b32a7450b1210f9b9598f7de807f7ebd43269 /src/render/Renderer.cpp
parent4f0f512cab5a8052c80b365449b69b953a97e169 (diff)
protocols: allow hyprland-toplevel-export to capture hidden windows (#9041)
Diffstat (limited to 'src/render/Renderer.cpp')
-rw-r--r--src/render/Renderer.cpp14
1 files changed, 7 insertions, 7 deletions
diff --git a/src/render/Renderer.cpp b/src/render/Renderer.cpp
index b9c8dd98..d4523a31 100644
--- a/src/render/Renderer.cpp
+++ b/src/render/Renderer.cpp
@@ -417,8 +417,8 @@ void CHyprRenderer::renderWorkspaceWindows(PHLMONITOR pMonitor, PHLWORKSPACE pWo
}
}
-void CHyprRenderer::renderWindow(PHLWINDOW pWindow, PHLMONITOR pMonitor, timespec* time, bool decorate, eRenderPassMode mode, bool ignorePosition, bool ignoreAllGeometry) {
- if (pWindow->isHidden())
+void CHyprRenderer::renderWindow(PHLWINDOW pWindow, PHLMONITOR pMonitor, timespec* time, bool decorate, eRenderPassMode mode, bool ignorePosition, bool standalone) {
+ if (pWindow->isHidden() && !standalone)
return;
if (pWindow->m_bFadingOut) {
@@ -450,7 +450,7 @@ void CHyprRenderer::renderWindow(PHLWINDOW pWindow, PHLMONITOR pMonitor, timespe
renderdata.pos.y = pMonitor->vecPosition.y;
}
- if (ignoreAllGeometry)
+ if (standalone)
decorate = false;
// whether to use m_fMovingToWorkspaceAlpha, only if fading out into an invisible ws
@@ -463,12 +463,12 @@ void CHyprRenderer::renderWindow(PHLWINDOW pWindow, PHLMONITOR pMonitor, timespe
(USE_WORKSPACE_FADE_ALPHA ? pWindow->m_fMovingToWorkspaceAlpha->value() : 1.F) * pWindow->m_fMovingFromWorkspaceAlpha->value();
renderdata.alpha = pWindow->m_fActiveInactiveAlpha->value();
renderdata.decorate = decorate && !pWindow->m_bX11DoesntWantBorders && !pWindow->isEffectiveInternalFSMode(FSMODE_FULLSCREEN);
- renderdata.rounding = ignoreAllGeometry || renderdata.dontRound ? 0 : pWindow->rounding() * pMonitor->scale;
- renderdata.roundingPower = ignoreAllGeometry || renderdata.dontRound ? 2.0f : pWindow->roundingPower();
- renderdata.blur = !ignoreAllGeometry && *PBLUR && !DONT_BLUR;
+ renderdata.rounding = standalone || renderdata.dontRound ? 0 : pWindow->rounding() * pMonitor->scale;
+ renderdata.roundingPower = standalone || renderdata.dontRound ? 2.0f : pWindow->roundingPower();
+ renderdata.blur = !standalone && *PBLUR && !DONT_BLUR;
renderdata.pWindow = pWindow;
- if (ignoreAllGeometry) {
+ if (standalone) {
renderdata.alpha = 1.f;
renderdata.fadeAlpha = 1.f;
}