Remove clipped area immediately after painting. Should fix bug 193094.
CCBUG: 193094 svn path=/trunk/KDE/kdebase/workspace/; revision=969412
This commit is contained in:
parent
fc21b3099c
commit
03c84e7789
1 changed files with 8 additions and 9 deletions
|
@ -192,15 +192,6 @@ void SlideBackEffect::prePaintWindow( EffectWindow *w, WindowPrePaintData &data,
|
||||||
|
|
||||||
void SlideBackEffect::paintWindow( EffectWindow *w, int mask, QRegion region, WindowPaintData &data )
|
void SlideBackEffect::paintWindow( EffectWindow *w, int mask, QRegion region, WindowPaintData &data )
|
||||||
{
|
{
|
||||||
if( !clippedRegions.isEmpty() )
|
|
||||||
{
|
|
||||||
foreach( const QRegion ®ion, clippedRegions )
|
|
||||||
{
|
|
||||||
PaintClipper::pop( region );
|
|
||||||
}
|
|
||||||
clippedRegions.clear();
|
|
||||||
}
|
|
||||||
|
|
||||||
if( stackingOrderChanged() && ( w == newTopWindow() ) )
|
if( stackingOrderChanged() && ( w == newTopWindow() ) )
|
||||||
{
|
{
|
||||||
/* This can happen because of two reasons:
|
/* This can happen because of two reasons:
|
||||||
|
@ -229,6 +220,14 @@ void SlideBackEffect::paintWindow( EffectWindow *w, int mask, QRegion region, Wi
|
||||||
motionManager.apply( w, data );
|
motionManager.apply( w, data );
|
||||||
}
|
}
|
||||||
effects->paintWindow( w, mask, region, data );
|
effects->paintWindow( w, mask, region, data );
|
||||||
|
if( !clippedRegions.isEmpty() )
|
||||||
|
{
|
||||||
|
foreach( const QRegion ®ion, clippedRegions )
|
||||||
|
{
|
||||||
|
PaintClipper::pop( region );
|
||||||
|
}
|
||||||
|
clippedRegions.clear();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void SlideBackEffect::postPaintWindow( EffectWindow* w )
|
void SlideBackEffect::postPaintWindow( EffectWindow* w )
|
||||||
|
|
Loading…
Reference in a new issue