D9638: [effects] replace old slide effect with a new one
Vlad Zagorodniy
noreply at phabricator.kde.org
Thu Jan 25 17:10:04 UTC 2018
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
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/plasma-devel/attachments/20180125/a4d4e3bc/attachment-0001.html>
More information about the Plasma-devel
mailing list