summaryrefslogtreecommitdiff
path: root/src/protocols/Screencopy.cpp
diff options
context:
space:
mode:
authorKamikadze <40305144+Kam1k4dze@users.noreply.github.com>2025-08-18 00:17:22 +0500
committerGitHub <noreply@github.com>2025-08-17 20:17:22 +0100
commitbca96a5d3be8f3b02171a031511848d031ffa4b0 (patch)
tree1e506688634be13f4912e06b50f3a54ab4b6f2a4 /src/protocols/Screencopy.cpp
parentdfe58c48093fc4c3799d26a28859d64c05a4bb98 (diff)
protocols: Fix fading out windows with noscreenshare being visible (#11457)
Diffstat (limited to 'src/protocols/Screencopy.cpp')
-rw-r--r--src/protocols/Screencopy.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/protocols/Screencopy.cpp b/src/protocols/Screencopy.cpp
index cd825b1b..804e144c 100644
--- a/src/protocols/Screencopy.cpp
+++ b/src/protocols/Screencopy.cpp
@@ -223,10 +223,11 @@ void CScreencopyFrame::renderMon() {
const auto PWORKSPACE = w->m_workspace;
- if UNLIKELY (!PWORKSPACE)
+ if UNLIKELY (!PWORKSPACE && !w->m_fadingOut && w->m_alpha->value() != 0.f)
continue;
- const auto REALPOS = w->m_realPosition->value() + (w->m_pinned ? Vector2D{} : PWORKSPACE->m_renderOffset->value());
+ const auto renderOffset = PWORKSPACE && !w->m_pinned ? PWORKSPACE->m_renderOffset->value() : Vector2D{};
+ const auto REALPOS = w->m_realPosition->value() + renderOffset;
const auto noScreenShareBox = CBox{REALPOS.x, REALPOS.y, std::max(w->m_realSize->value().x, 5.0), std::max(w->m_realSize->value().y, 5.0)}
.translate(-m_monitor->m_position)
.scale(m_monitor->m_scale)