when you enable this effect all inactive windows are drawn a little darker. for normal windows the menu doesnt interact with this effect. -> a menu will not change the brightness of a window with steam its differen. every menu will darken the steam window itself. so this effect let steam flicker in this case. maybe stem menus arend real menus and are handled as normal windows but i cant get a windowid with all the known tools -> xwininfo, kwins doalog to get infos Reproducible: Always Steps to Reproduce: 1. enable the "Dim Inactive" effect 2. start steam (and login) 3. use the menus of steam Actual Results: it will flicker with every menu Expected Results: steam should stay the same.
I don't have steam installed, but that sounds like a bug in steam. A menu should be an override redirect window and not an actual window which can be active. xwininfo probably doesn't work because steam grabs the pointer. You can though use xwininfo -tree -root to get all windows. That way you should be able to find the window and also use xprop on it (accepts id). If you can get xprop of a steam menu please attach it to this bug report.
run "xprop -root -spy _NET_ACTIVE_WINDOW", if that updates when opening the popup, it's a managed client - and you likely just got it's WId to pass "-id <WID>" to xprop/xwininfo (the popup could activate some dummy window, but that's the less likely explanation)
Created attachment 97150 [details] vidoe thats shows buggy behavior of steam with dim-inective-effect with xprop: xprop -root -spy _NET_ACTIVE_WINDOW _NET_ACTIVE_WINDOW(WINDOW): window id # 0x0 xwininfo (i really dont know what the 'menu' could be ...) sleep 3 && xwininfo -tree -root xwininfo: Window id: 0x4c3 (the root window) (has no name) Root window id: 0x4c3 (the root window) (has no name) Parent window id: 0x0 (none) 127 children: 0xa00037 (has no name): ("Steam" "Steam") 160x168+772+140 +772+140 0x1e02e16 "KWin": ("kwin_x11" "kwin") 300x1092+0+0 +0+0 0x1e02d42 (has no name): () 1x1+0+0 +0+0 0x8800001 (has no name): () 1x1+0+0 +0+0 0xa00033 (has no name): ("Steam" "Steam") 132x144+484+294 +484+294 0xa000b2 (has no name): ("Steam" "Steam") 197x249+568+294 +568+294 0xa00035 (has no name): ("Steam" "Steam") 153x144+724+294 +724+294 0x200012 (has no name): () 3x3+0+0 +0+0 0x200006 (has no name): () 1x1+0+0 +0+0 0x200004 (has no name): () 1x1+0+0 +0+0 0x200003 (has no name): () 3x3+0+0 +0+0 0x7800001 (has no name): () 1x1+0+0 +0+0 0xa00073 (has no name): ("Steam" "Steam") 64x24+0+0 +0+0 0xa00071 (has no name): ("Steam" "Steam") 64x24+0+0 +0+0 0xa0006f (has no name): ("Steam" "Steam") 64x24+0+0 +0+0 0xa0006d (has no name): ("Steam" "Steam") 64x24+0+0 +0+0 0xa0006b (has no name): ("Steam" "Steam") 64x24+0+0 +0+0 0xa00069 (has no name): ("Steam" "Steam") 64x24+0+0 +0+0 0xa00067 (has no name): ("Steam" "Steam") 64x24+0+0 +0+0 0xa00065 (has no name): ("Steam" "Steam") 64x24+0+0 +0+0 0xa00063 (has no name): ("Steam" "Steam") 64x24+0+0 +0+0 0xa00061 (has no name): ("Steam" "Steam") 64x24+0+0 +0+0 0xa0005f (has no name): ("Steam" "Steam") 64x24+0+0 +0+0 0xa0005d (has no name): ("Steam" "Steam") 64x24+0+0 +0+0 0xa0005b (has no name): ("Steam" "Steam") 64x24+0+0 +0+0 0xa00059 (has no name): ("Steam" "Steam") 64x24+0+0 +0+0 0xa00057 (has no name): ("Steam" "Steam") 64x24+0+0 +0+0 0xa00055 (has no name): ("Steam" "Steam") 64x24+0+0 +0+0 0xa00053 (has no name): ("Steam" "Steam") 64x24+0+0 +0+0 0xa00051 (has no name): ("Steam" "Steam") 64x24+0+0 +0+0 0xa0004f (has no name): ("Steam" "Steam") 64x24+0+0 +0+0 0xa0004d (has no name): ("Steam" "Steam") 64x24+0+0 +0+0 0xa0004b (has no name): ("Steam" "Steam") 64x24+0+0 +0+0 0xa00049 "Server": ("Steam" "Steam") 64x24+0+0 +0+0 0xa00047 (has no name): ("Steam" "Steam") 64x24+0+0 +0+0 0xa00045 (has no name): ("Steam" "Steam") 64x24+0+0 +0+0 0xa00043 (has no name): ("Steam" "Steam") 64x24+0+0 +0+0 0xa00041 (has no name): ("Steam" "Steam") 64x24+0+0 +0+0 0xa0003f (has no name): ("Steam" "Steam") 64x24+0+0 +0+0 0xa0003d (has no name): ("Steam" "Steam") 64x24+0+0 +0+0 0xa0003b (has no name): ("Steam" "Steam") 64x24+0+0 +0+0 0xa00031 (has no name): ("Steam" "Steam") 64x24+0+0 +0+0 0xa0002f (has no name): ("Steam" "Steam") 64x24+0+0 +0+0 0xa0002d (has no name): ("Steam" "Steam") 64x24+0+0 +0+0 0xa0002b (has no name): ("Steam" "Steam") 64x24+0+0 +0+0 0xa00029 (has no name): ("Steam" "Steam") 64x24+0+0 +0+0 0xa00027 (has no name): ("Steam" "Steam") 64x24+0+0 +0+0 0xa00023 (has no name): ("Steam" "Steam") 64x24+0+0 +0+0 0xa00021 (has no name): ("Steam" "Steam") 64x24+0+0 +0+0 0xa0001f (has no name): ("Steam" "Steam") 64x24+0+0 +0+0 0xa0001d "Freunde": ("Steam" "Steam") 64x24+0+0 +0+0 0xa00005 (has no name): ("Steam" "Steam") 64x24+0+0 +0+0 0xe00001 "steam": ("steam" "Steam") 10x10+10+10 +10+10 1 child: 0xe00002 (has no name): () 1x1+-1+-1 +9+9 0x1400011 "krunner": ("krunner" "krunner") 586x689+667+43 +667+43 0x1400015 (has no name): () 3x3+0+0 +0+0 0x7400001 (has no name): () 1x1+0+0 +0+0 0x7200004 (has no name): () 1x1+0+0 +0+0 0x7200003 (has no name): () 3x3+0+0 +0+0 0x6e00003 (has no name): () 3x3+0+0 +0+0 0x6a00003 (has no name): () 3x3+0+0 +0+0 0x6800003 (has no name): () 3x3+0+0 +0+0 0x6200003 (has no name): () 3x3+0+0 +0+0 0x6600003 (has no name): () 3x3+0+0 +0+0 0x6000003 (has no name): () 3x3+0+0 +0+0 0x6400003 (has no name): () 3x3+0+0 +0+0 0x5e00003 (has no name): () 3x3+0+0 +0+0 0x5c00003 (has no name): () 3x3+0+0 +0+0 0x5800003 (has no name): () 3x3+0+0 +0+0 0x5a00003 (has no name): () 3x3+0+0 +0+0 0x5600003 (has no name): () 3x3+0+0 +0+0 0x5000003 (has no name): () 3x3+0+0 +0+0 0x5200003 (has no name): () 3x3+0+0 +0+0 0x5400003 (has no name): () 3x3+0+0 +0+0 0x4e00003 (has no name): () 3x3+0+0 +0+0 0x4c00003 (has no name): () 3x3+0+0 +0+0 0x4a00003 (has no name): () 3x3+0+0 +0+0 0x4800003 (has no name): () 3x3+0+0 +0+0 0x1e00034 (has no name): () 306x419+0+0 +0+0 0x4600003 (has no name): () 3x3+0+0 +0+0 0x4400003 (has no name): () 3x3+0+0 +0+0 0x4200003 (has no name): () 3x3+0+0 +0+0 0x4000003 (has no name): () 3x3+0+0 +0+0 0x3c00001 "solaar": ("solaar" "Solaar") 10x10+10+10 +10+10 0x3a0000a "kwalletd": ("kwalletd" "Kwalletd") 960x432+0+0 +0+0 0x3a00004 (has no name): () 1x1+0+0 +0+0 0x3a00002 "kwalletd": ("kwalletd" "Kwalletd") 960x432+0+0 +0+0 0x380000a "kded4": ("kded4" "Kded4") 960x432+0+0 +0+0 0x3800004 (has no name): () 1x1+0+0 +0+0 0x3800002 "kded4": ("kded4" "Kded4") 960x432+0+0 +0+0 0x3200003 (has no name): () 3x3+0+0 +0+0 0x1e0001c (has no name): () 1x1+0+0 +0+0 0x1e0001b (has no name): () 1x1+0+0 +0+0 0x800009 (has no name): () 1x1+0+0 +0+0 0x2e00003 (has no name): () 3x3+0+0 +0+0 0x1400014 (has no name): () 1x1+0+0 +0+0 0x2400004 (has no name): () 1x1+0+0 +0+0 0x2c00003 (has no name): () 3x3+0+0 +0+0 0x2a00003 (has no name): () 3x3+0+0 +0+0 0x2800003 (has no name): () 3x3+0+0 +0+0 0x1e00009 (has no name): () 1x1+0+0 +0+0 0x2400003 (has no name): () 3x3+0+0 +0+0 0x1e00007 (has no name): () 1x1+-1+-1 +-1+-1 0x1400012 (has no name): () 1x1+0+0 +0+0 0x2200003 (has no name): () 3x3+0+0 +0+0 0x1e00004 (has no name): () 1x1+0+0 +0+0 0x1e00003 (has no name): () 3x3+0+0 +0+0 0x1400003 (has no name): () 3x3+0+0 +0+0 0x1200005 (has no name): () 1x1+0+0 +0+0 0x1a00004 (has no name): () 1x1+0+0 +0+0 0x1a00003 (has no name): () 3x3+0+0 +0+0 0x1600004 (has no name): () 1x1+0+0 +0+0 0xc00004 (has no name): () 1x1+0+0 +0+0 0x1800003 (has no name): () 3x3+0+0 +0+0 0x1600003 (has no name): () 3x3+0+0 +0+0 0x1200003 (has no name): () 3x3+0+0 +0+0 0xc00003 (has no name): () 3x3+0+0 +0+0 0x600001 (has no name): () 1x1+0+0 +0+0 0x800003 (has no name): () 3x3+0+0 +0+0 0x400003 (has no name): () 3x3+0+0 +0+0 0x1e00008 "KWin": () 1x1+0+0 +0+0 0x1e00012 (has no name): () 1x1+0+0 +0+0 0x1e00013 (has no name): () 32x32+0+0 +0+0 0x1e00019 (has no name): () 1x1+1919+0 +1919+0 0x1e0001a (has no name): () 32x32+1888+0 +1888+0 0x1e019e4 (has no name): () 1286x660+293+73 +293+73 1 child: 0x1e019e5 (has no name): () 1286x660+0+0 +293+73 1 child: 0xa00025 "Steam": ("Steam" "Steam") 1286x660+0+0 +293+73 0x1e01aab (has no name): () 1193x639+561+453 +561+453 0x1e01aa8 (has no name): () 1169x627+573+453 +573+453 1 child: 0x1e01aa9 (has no name): () 1169x590+0+37 +573+490 1 child: 0x200005 "fabi : sleep — Konsole": ("konsole" "konsole") 1169x590+0+0 +573+490
These ones make splendid candidates: 0xa00033 (has no name): ("Steam" "Steam") 132x144+484+294 +484+294 0xa000b2 (has no name): ("Steam" "Steam") 197x249+568+294 +568+294 0xa00035 (has no name): ("Steam" "Steam") 153x144+724+294 +724+294 It however seems they simply deactivate their main window (if the property turns to 0x0 and nothing else afterwards when showing such popup) An inspection of the windows might stil show up interesting things, but clients are free to deactivate themselves whenever it pleases them. Is the steam client written in Qt5 (sorry for my ignorance ;-)
(In reply to Thomas Lübking from comment #4) > Is the steam client written in Qt5 (sorry for my ignorance ;-) AFAIK it's sdl
Git commit 5165ee45b5e3448f46490edfe9326375ffa91a29 by Vlad Zagorodniy. Committed on 21/08/2018 at 08:50. Pushed by vladz into branch 'master'. [effects] Rewrite the Dim Inactive effect Summary: The Dim Inactive effect was rewritten mostly to fix most of issues with it, e.g. after leaving a full screen effect(e.g. Desktop Grid) windows sometimes are not dimmed back, or when a window becomes inactive there is no smooth transition, etc. {F5956124} //Before: the window is not smoothly dimmed.// {F5956127} //After: the window is smoothly dimmed.// In combination with an effect that animates the disappearing of windows, e.g. Glide, the rewritten Dim Inactive effect doesn't "flash" windows. If an active window has been closed, it will stay bright. If an inactive window has been closed, it will stay dimmed. Among other changes, the KCM has been re-designed to follow common KCM design in Plasma: {F5956128, layout=center, size=full} The way the rewritten Dim Inactive effect handles flashing/flickering problem can be reused in the Dialog Parent effect. ### Demo {F5959885} //Before: dimming of a window group.// {F5959886} //After: Dimming of a window group.// Depends on D13740 Test Plan: Test plan #1 * Activated the Desktop Grid effect * Dimmed windows smoothly brightened * Left desktop grid * Windows dimmed back Test plan #2 * Opened Dolphin and its Preferences window * Clicked on desktop, both Dolphin and the Preferences window dimmed * Clicked on Dolphin, both windows smoothly brightened back Reviewers: #kwin, #plasma, #vdg, davidedmundson Reviewed By: #kwin, #plasma, #vdg, davidedmundson Subscribers: davidedmundson, abetts, ngraham, kwin Tags: #kwin Differential Revision: https://phabricator.kde.org/D13720 M +329 -81 effects/diminactive/diminactive.cpp M +91 -48 effects/diminactive/diminactive.h M +11 -20 effects/diminactive/diminactive_config.cpp M +8 -12 effects/diminactive/diminactive_config.h M +39 -107 effects/diminactive/diminactive_config.ui https://commits.kde.org/kwin/5165ee45b5e3448f46490edfe9326375ffa91a29
The rewritten effect has a fix for this bug, so marking it as fixed. Also, maybe we have to report bug upstream.