zzag added a comment. Restricted Application edited projects, added Plasma; removed KWin.
In https://phabricator.kde.org/D9638#195979, @graesslin wrote: > What you could try is using the PaintClipper to perform clipping. But I don't know whether it's still fully functional on OpenGL. So, adding PaintClipper pc(QRegion( QPoint(0, 0), effects->virtualScreenSize() )); in `SlideEffect::paintScreen` would be enough? Doesn't KWin do something like that somewhere else? I've just realized, maybe, this effect doesn't need to clip... --- Also, I've noticed that there is no blur behind docks when docks are painted above all windows(`Slide docks` checkbox is unchecked). F5674581: 2018-01-25 17-55-02.mp4 <https://phabricator.kde.org/F5674581> Effect chain positions: - slide effect: 50 - blur: 75 - background contrast: 76 Docks are drawn above all windows by the following code: for (EffectWindow* w : windows) { if (! w->isDock()) { continue; } WindowPaintData dockData(w); int dockMask = mask | (w->hasAlpha() ? PAINT_WINDOW_TRANSLUCENT : PAINT_WINDOW_OPAQUE); effects->drawWindow(w, dockMask, infiniteRegion(), dockData); } (`WindowForceBackgroundContrastRole` and `WindowForceBlurRole` are set at the beginning of the slide animation) Am I missing something? --- Quick side note: when the `Slide docks` checkbox is unchecked, docks are drawn above other windows so they can properly animate themselves if an user enters or leaves a virtual desktop with a window in full screen mode. REPOSITORY R108 KWin REVISION DETAIL https://phabricator.kde.org/D9638 To: zzag, #vdg, #kwin, #plasma Cc: mart, graesslin, abetts, ngraham, plasma-devel, kwin, ZrenBot, progwolff, lesliezhai, ali-mohamed, jensreuterberg, sebas, apol