D25603: [XembedSNIProxy] Send all container windows to background on KWin restart
Konrad Materka
noreply at phabricator.kde.org
Thu Nov 28 20:08:09 GMT 2019
kmaterka created this revision.
kmaterka added reviewers: Plasma: Workspaces, Plasma, davidedmundson.
kmaterka added a project: Plasma.
kmaterka requested review of this revision.
REVISION SUMMARY
For each tray icon XEmbedSNIProxy is creating container window 32x32 in size. It is black with opaque set to 0 (fully transparent when compositor is enabled). All of these container windows are stacked below all windows, so normally you can't see them. On creation all container windows are created in top-left corner. When user clicks on the tray icon, container window is moved to the click location (to handle events correctly).
On KWin restart all windows are shuffled, usually KWin is able to restore ordering correctly, but for some reason not it this case. As a result black/transparent container windows are stacked above all other windows and panels.
To solve that, on KWin restart, XembedSNIProxy needs to iterate over all known container windows and stack them below again.
BUG: 357443
TEST PLAN
1. [Optional] Disable compositor - with disable container window is
black and easier to spot
2. Run applcaiton with XEmbed system tray icon, do not click on the icon
3. Restart KWin
a) Before: black/transparent rectangle in the top-left corner, reacts to
mouse click
b) After: no rectangle, mouse clicks work as expected
REPOSITORY
R120 Plasma Workspace
BRANCH
master
REVISION DETAIL
https://phabricator.kde.org/D25603
AFFECTED FILES
xembed-sni-proxy/fdoselectionmanager.cpp
xembed-sni-proxy/sniproxy.cpp
xembed-sni-proxy/sniproxy.h
To: kmaterka, #plasma_workspaces, #plasma, davidedmundson
Cc: plasma-devel, LeGast00n, The-Feren-OS-Dev, jraleigh, fbampaloukas, GB_2, ragreen, ZrenBot, ngraham, alexeymin, himcesjf, lesliezhai, ali-mohamed, jensreuterberg, abetts, sebas, apol, ahiemstra, mart
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/plasma-devel/attachments/20191128/700d609a/attachment-0001.html>
More information about the Plasma-devel
mailing list