Paint desktop windows only once in multi screen setups as we know that a desktop window is bound to a screen and there is one desktop window per screen.

svn path=/trunk/KDE/kdebase/workspace/; revision=891952
icc-effect-5.14.5
Martin Gräßlin 2008-12-03 10:56:46 +00:00
parent 09b5e45bd4
commit 2387e701f6
1 changed files with 6 additions and 0 deletions

View File

@ -216,6 +216,9 @@ void DesktopGridEffect::paintWindow( EffectWindow* w, int mask, QRegion region,
for( int screen = 0; screen < effects->numScreens(); screen++ )
{
// Assume desktop windows can never be on two screens at once (Plasma makes one window per screen)
if( w->isDesktop() )
screen = w->screen();
QRect screenGeom = effects->clientArea( ScreenArea, screen, 0 );
// Display all quads on the same screen on the same pass
@ -260,6 +263,9 @@ void DesktopGridEffect::paintWindow( EffectWindow* w, int mask, QRegion region,
PaintClipper pc( effects->clientArea( ScreenArea, screen, 0 ));
effects->paintWindow( w, mask, region, d );
}
// Assume desktop windows can never be on two screens at once (Plasma makes one window per screen)
if( w->isDesktop() )
break;
}
}
else