D9638: [effects] replace old slide effect with a new one

Vlad Zagorodniy noreply at phabricator.kde.org
Thu Jan 25 21:33:52 UTC 2018


zzag added a comment.
Restricted Application edited projects, added KWin; removed Plasma.


  In https://phabricator.kde.org/D9638#196145, @graesslin wrote:
  
  > > 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?
  >
  > I have an idea: the problem might be how you create the WindowPaintData. The ctor you use creates the WindowPaintData with an identity screenProjectionMatrix. This might be wrong in this case. The blur effect seems to use it.
  
  
  Maybe just elevate docks? E.g. at the beginning for each dock call `effects->setElevatedWindow(w, true)` and paint docks with the last visible virtual desktop?

REPOSITORY
  R108 KWin

REVISION DETAIL
  https://phabricator.kde.org/D9638

To: zzag, #vdg, #kwin, #plasma
Cc: mart, graesslin, abetts, ngraham, plasma-devel, kwin, iodelay, bwowk, ZrenBot, progwolff, lesliezhai, ali-mohamed, hardening, jensreuterberg, sebas, apol
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/plasma-devel/attachments/20180125/c9509e74/attachment.html>


More information about the Plasma-devel mailing list