diff --git a/effects/slidingpopups/slidingpopups.cpp b/effects/slidingpopups/slidingpopups.cpp --- a/effects/slidingpopups/slidingpopups.cpp +++ b/effects/slidingpopups/slidingpopups.cpp @@ -103,76 +103,6 @@ data.setTransformed(); w->enablePainting(EffectWindow::PAINT_DISABLED | EffectWindow::PAINT_DISABLED_BY_DELETE); - const int start = mWindowsData[ w ].start; - if (start != 0) { - const QRect screenRect = effects->clientArea(FullScreenArea, w->screen(), effects->currentDesktop()); - const QRect geo = w->expandedGeometry(); - const qreal t = (*animationIt).timeLine.value(); - // filter out window quads, but only if the window does not start from the edge - int slideLength; - if (mWindowsData[ w ].slideLength > 0) { - slideLength = mWindowsData[ w ].slideLength; - } else { - slideLength = mSlideLength; - } - - switch(mWindowsData[ w ].from) { - case West: { - const double splitPoint = geo.width() - (geo.x() + geo.width() - screenRect.x() - start) + interpolate(qMin(geo.width(), slideLength), 0, t); - data.quads = data.quads.splitAtX(splitPoint); - WindowQuadList filtered; - filtered.reserve(data.quads.count()); - for (const WindowQuad &quad : qAsConst(data.quads)) { - if (quad.left() >= splitPoint) { - filtered << quad; - } - } - data.quads = filtered; - break; - } - case North: { - const double splitPoint = geo.height() - (geo.y() + geo.height() - screenRect.y() - start) + interpolate(qMin(geo.height(), slideLength), 0, t); - data.quads = data.quads.splitAtY(splitPoint); - WindowQuadList filtered; - filtered.reserve(data.quads.count()); - for (const WindowQuad &quad : qAsConst(data.quads)) { - if (quad.top() >= splitPoint) { - filtered << quad; - } - } - data.quads = filtered; - break; - } - case East: { - const double splitPoint = screenRect.x() + screenRect.width() - geo.x() - start - interpolate(qMin(geo.width(), slideLength), 0, t); - data.quads = data.quads.splitAtX(splitPoint); - WindowQuadList filtered; - filtered.reserve(data.quads.count()); - for (const WindowQuad &quad : qAsConst(data.quads)) { - if (quad.right() <= splitPoint) { - filtered << quad; - } - } - data.quads = filtered; - break; - } - case South: - default: { - const double splitPoint = screenRect.y() + screenRect.height() - geo.y() - start - interpolate(qMin(geo.height(), slideLength), 0, t); - data.quads = data.quads.splitAtY(splitPoint); - WindowQuadList filtered; - filtered.reserve(data.quads.count()); - for (const WindowQuad &quad : qAsConst(data.quads)) { - if (quad.bottom() <= splitPoint) { - filtered << quad; - } - } - data.quads = filtered; - break; - } - } - } - effects->prePaintWindow(w, data, time); }