7637cfc22b
Summary: This problem appears if shadow corner tiles are too big and some window has size smaller than 2 * shadowTileSize. This change tries to address the problem above by exclusing overlapping tile parts. If there are any two overlapping corners then tile between them(top/right/bottom/left) is not rendered. Also, because some corner tile parts can be excluded, corner tiles are expected to be symmetrical(i.e. if we remove right half from the top-left tile and left half from the top-right tile and stick them together, they still look fine, there are no misalignments, etc). Most shadows(e.g. shadows from Breeze) have such behaviour. No tiles are overlapping {F5728514, layout=center, size=full} Overlapping tiles {F5728516, layout=center, size=full} And this is how it supposed to be {F5728517, layout=center, size=full} Test Plan: * apply D11069 to Breeze * in System Settings/Application Style/Window Decorations, choose "Very Large" shadow size * open Konsole * resize it to a minimum possible size Reviewers: #kwin, graesslin, davidedmundson Reviewed By: #kwin, davidedmundson Subscribers: davidedmundson, ngraham, anemeth, abetts, kwin Tags: #kwin Differential Revision: https://phabricator.kde.org/D10811 |
||
---|---|---|
.. | ||
org.kde.kdecoration2 | ||
CMakeLists.txt |