[Contrast / Blur Effects] Port from QRegion::rects() to QRegion iterators

Especially the BlurEffect::expanded() method is called a lot.
Saves creating a temporary QVector.

Differential Revision: https://phabricator.kde.org/D9101
icc-effect-5.14.5
Kai Uwe Broulik 2017-12-02 17:38:14 +01:00
parent c3d41046a1
commit 9e8773cb43
2 changed files with 4 additions and 4 deletions

View File

@ -271,7 +271,7 @@ QRegion ContrastEffect::contrastRegion(const EffectWindow *w) const
void ContrastEffect::uploadRegion(QVector2D *&map, const QRegion &region)
{
foreach (const QRect &r, region.rects()) {
for (const QRect &r : region) {
const QVector2D topLeft(r.x(), r.y());
const QVector2D topRight(r.x() + r.width(), r.y());
const QVector2D bottomLeft(r.x(), r.y() + r.height());

View File

@ -238,7 +238,7 @@ QRegion BlurEffect::expand(const QRegion &region) const
{
QRegion expanded;
foreach (const QRect & rect, region.rects()) {
for (const QRect &rect : region) {
expanded += expand(rect);
}
@ -276,7 +276,7 @@ QRegion BlurEffect::blurRegion(const EffectWindow *w) const
void BlurEffect::uploadRegion(QVector2D *&map, const QRegion &region)
{
foreach (const QRect &r, region.rects()) {
for (const QRect &r : region) {
const QVector2D topLeft(r.x(), r.y());
const QVector2D topRight(r.x() + r.width(), r.y());
const QVector2D bottomLeft(r.x(), r.y() + r.height());
@ -339,7 +339,7 @@ void BlurEffect::prePaintWindow(EffectWindow* w, WindowPrePaintData& data, int t
QRegion newClip;
const QRegion oldClip = data.clip;
const int radius = shader->radius();
foreach (const QRect& rect, data.clip.rects()) {
for (const QRect &rect : data.clip) {
newClip |= rect.adjusted(radius,radius,-radius,-radius);
}
data.clip = newClip;