summaryrefslogtreecommitdiff
path: root/src/render/Renderer.cpp
diff options
context:
space:
mode:
authorvaxerski <43317083+vaxerski@users.noreply.github.com>2022-04-22 14:37:38 +0200
committervaxerski <43317083+vaxerski@users.noreply.github.com>2022-04-22 14:37:38 +0200
commit94811485c9e50eb310d8abf19ab60ea01fc3860d (patch)
tree426645b8d7569775ebc51ddae9e28ac3d8d8487f /src/render/Renderer.cpp
parenta8e5e9c5587b02f6fbbd9bdff97b3913f32f490f (diff)
added opacity rule
Diffstat (limited to 'src/render/Renderer.cpp')
-rw-r--r--src/render/Renderer.cpp5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/render/Renderer.cpp b/src/render/Renderer.cpp
index 7b8a0e40..3315034f 100644
--- a/src/render/Renderer.cpp
+++ b/src/render/Renderer.cpp
@@ -92,11 +92,14 @@ void CHyprRenderer::renderWindow(CWindow* pWindow, SMonitor* pMonitor, timespec*
renderdata.fadeAlpha = pWindow->m_fAlpha;
renderdata.alpha = pWindow == g_pCompositor->m_pLastWindow ? g_pConfigManager->getFloat("decoration:active_opacity") : g_pConfigManager->getFloat("decoration:inactive_opacity");
+ // apply window special data
+ renderdata.alpha *= pWindow->m_sSpecialRenderData.alpha;
+
wlr_surface_for_each_surface(g_pXWaylandManager->getWindowSurface(pWindow), renderSurface, &renderdata);
// border
if (decorate && !pWindow->m_bX11DoesntWantBorders)
- drawBorderForWindow(pWindow, pMonitor, pWindow->m_fAlpha);
+ drawBorderForWindow(pWindow, pMonitor, pWindow->m_fAlpha * renderdata.alpha);
if (pWindow->m_bIsX11) {
if (pWindow->m_uSurface.xwayland->surface) {