From 97e3bd0ca6cdc58c1915038eaf28822a60d0206e Mon Sep 17 00:00:00 2001 From: Alexander Golubev Date: Thu, 8 Jan 2026 06:08:21 +0300 Subject: twin: treat keepAbove() windows exactly as active Before this the keepAbove() windows were always completely when inactive regardless whether active windows have some degree of translucency or not. But as prompt in the config says they should be just treated as active. Signed-off-by: Alexander Golubev --- twin/client.cpp | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/twin/client.cpp b/twin/client.cpp index 050d1e965..e9e74e139 100644 --- a/twin/client.cpp +++ b/twin/client.cpp @@ -2827,7 +2827,7 @@ void Client::setShadowSize(uint shadowSize) uint Client::defaultOpacity() { - if (isActive()) + if (isActive() || (keepAbove() && options->keepAboveAsActive)) { if( ruleOpacityActive() ) return rule_opacity_active; @@ -2839,9 +2839,7 @@ uint Client::defaultOpacity() if( ruleOpacityInactive() ) return rule_opacity_inactive; else - return options->translucentInactiveWindows && !(keepAbove() && options->keepAboveAsActive) ? - options->inactiveWindowOpacity - : Opacity::Opaque; + return options->translucentInactiveWindows ? options->inactiveWindowOpacity : Opacity::Opaque; } } -- cgit v1.2.3