zzag created this revision. zzag added reviewers: Breeze, VDG. Restricted Application added a project: Plasma. Restricted Application added a subscriber: plasma-devel. zzag requested review of this revision.
REVISION SUMMARY 5.12 release introduced new decoration shadows. These new shadows are bigger, centered, and they try to solve a problem related to depth. Yet, there are still some problems: - new(5.12) shadows are hard. - lighting model is broken. Because 5.12 shadows have been centered and made bigger, they should be casted from north. This change refines how decoration shadows look: - shadows are casted from north(shadow under window is bigger and darker, side shadows are smaller, etc); - shadows are made up of several separate shadows(one for overall shape, another for contrast). The separate shadows are produced by using box shadow helper(something similar to CSS box-shadow property, except there are no inset and spread properties); - shadow sizes(e.g. Small, Medium, and so on) haven't changed. Because GPUs can't be used for blurring images(in our case), the box shadow helper is using CPU to blur images. More precisely, when blur radius is < 64, images are blurred with "separable convolutions", otherwise, images are blurred with a two-dimensional Fourier Transform. Depends on D10942 <https://phabricator.kde.org/D10942> Depends on D10811 <https://phabricator.kde.org/D10811> REPOSITORY R31 Breeze BRANCH shadows REVISION DETAIL https://phabricator.kde.org/D11069 AFFECTED FILES cmake/FindFFTW.cmake kdecoration/CMakeLists.txt kdecoration/breezeboxshadowhelper.cpp kdecoration/breezeboxshadowhelper.h kdecoration/breezedecoration.cpp kdecoration/breezedecoration.h To: zzag, #breeze, #vdg Cc: plasma-devel, ZrenBot, lesliezhai, ali-mohamed, jensreuterberg, abetts, sebas, apol, mart