https://bugs.kde.org/show_bug.cgi?id=395725
--- Comment #23 from Kristopher Ives <kristopher.i...@gmail.com> --- After some debugging it seems the easiest way to move forward past these problems would be to add support in KDecoration2::Decoration so that it can calculate the shape of a window. Then these lines could be modified in the blur plugin to have an additional mask afterwards: https://github.com/KDE/kwin/blob/e8fe3f2fb7195fe562a073d1a78eb05d74670cfd/effects/blur/blur.cpp#L389-L413 Basically, it would end up having something like this near the end of it: if (AbstractClient *c = dynamic_cast< AbstractClient * > (toplevel)) { if (KDecoration2::Decoration *d = c->decoration()) { if (d->hasWindowShape()) { region &= d->windowShape(w); } } } "hasWindowShape" and "windowShape" are just example names, but would be the new methods added to KDecoration2::Decoration. The default implementation would be for hasWindowShape() to return false and the default implementation for windowshape() would be to return the rectangle of the window. However, a decoration could opt to return a QRegion from windowShape() that better describes the shape of the window with it's decorations - such as a rectangle with rounded corners. If this can already be done with the existing KWin frameworks I am interested to know how. Thanks -- You are receiving this mail because: You are watching all bug changes.