Bug 376593 - Clean window buffer for areas outside the window's mask
Summary: Clean window buffer for areas outside the window's mask
Status: RESOLVED NOT A BUG
Alias: None
Product: kwin
Classification: Plasma
Component: compositing (show other bugs)
Version: 5.9.2
Platform: openSUSE Linux
: NOR normal
Target Milestone: ---
Assignee: KWin default assignee
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2017-02-17 19:05 UTC by Michail Vourlakos
Modified: 2017-02-18 07:22 UTC (History)
0 users

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Michail Vourlakos 2017-02-17 19:05:21 UTC
Hello, 

there is the following issue with the Now Dock or the all new Latte Dock. As a reference both are docks that animate with parabolic zoom their tasks and plasmoids. They both use the QQuickWindow mask in order to free the areas of the window that are not needed from the dock.
We have the following issue and we are trying to understand whichone's responsibility is this case.

As you can see in the screenshot: https://cloud.githubusercontent.com/assets/24593950/22618122/43503764-ead5-11e6-9eb6-141bbd907b2e.png

when the parabolic zoom starts, the mask of the window increases directly to the maximum needed size but there are cases that the above painting is happening.

By reading at: http://doc.qt.io/qt-5/qwindow.html#setMask

Window manager responsibility: "The window manager may or may not choose to display any areas of the window not included in the mask"

Application responsibility: "it is the application's responsibility to clear to transparent the areas that are not part of the mask."

from our part we dont paint the areas outside the mask for the above screenshot to occur. Could you please provide with some wisdom, is this Qt, Kwin or our dock fault?

with regards,
michail
Comment 1 Michail Vourlakos 2017-02-17 19:31:17 UTC
it could be of course also an X11 painting issue that wayland would fix it...
Comment 2 Martin Flöser 2017-02-17 19:43:17 UTC
The Qt documentation does not make much sense for X11. The mask uses the shape extension https://www.x.org/releases/current/doc/xextproto/shape.html

The compositor has not much to do with it. You can easily see this by using common shaped windows such as xeyes.
Comment 3 Michail Vourlakos 2017-02-18 07:22:46 UTC
Martin, thank you very much...