From ff53c951d7810a967973e344d3ce7629e425faa9 Mon Sep 17 00:00:00 2001 From: Michael Zanetti Date: Tue, 19 May 2009 13:52:50 +0000 Subject: [PATCH] reverted 969982 svn path=/trunk/KDE/kdebase/workspace/; revision=970056 --- effects/slideback/slideback.cpp | 37 ++++++++++++++++++--------------- 1 file changed, 20 insertions(+), 17 deletions(-) diff --git a/effects/slideback/slideback.cpp b/effects/slideback/slideback.cpp index fa1648837d..8ead3df909 100644 --- a/effects/slideback/slideback.cpp +++ b/effects/slideback/slideback.cpp @@ -181,6 +181,16 @@ void SlideBackEffect::postPaintScreen() } void SlideBackEffect::prePaintWindow( EffectWindow *w, WindowPrePaintData &data, int time ) + { + if( motionManager.isManaging( w ) ) + { + data.setTransformed(); + } + + effects->prePaintWindow( w, data, time ); + } + +void SlideBackEffect::paintWindow( EffectWindow *w, int mask, QRegion region, WindowPaintData &data ) { if( stackingOrderChanged() && ( w == newTopWindow() ) ) { @@ -191,36 +201,25 @@ void SlideBackEffect::prePaintWindow( EffectWindow *w, WindowPrePaintData &data, { if( oldStackingOrder.lastIndexOf( tmp ) > oldStackingOrder.lastIndexOf( w ) && isWindowUsable( tmp ) ) { -// kDebug() << "screw detected." << "clip:" << data.paint << " clipping:" << tmp->geometry() ; - PaintClipper::push( data.paint.subtracted( tmp->geometry() ) ); - clippedRegions.prepend( data.paint.subtracted( tmp->geometry() ) ); + kDebug() << "screw detected. region:" << region << "clipping:" << tmp->geometry() ; + PaintClipper::push( region.subtracted( tmp->geometry() ) ); + clippedRegions.prepend( region.subtracted( tmp->geometry() ) ); +// region = region.subtracted( tmp->geometry() ); } } + // Add a full repaint to make sure the not painted area is repainted soon + effects->addRepaintFull(); // Finally call windowActivated in case a already active window is raised. if( !disabled ) { windowActivated( w ); } } - if( motionManager.isManaging( w ) ) - { - data.setTransformed(); - } - - effects->prePaintWindow( w, data, time ); - } - -void SlideBackEffect::paintWindow( EffectWindow *w, int mask, QRegion region, WindowPaintData &data ) - { if( motionManager.isManaging( w ) ) { motionManager.apply( w, data ); } effects->paintWindow( w, mask, region, data ); - } - -void SlideBackEffect::postPaintWindow( EffectWindow* w ) - { if( !clippedRegions.isEmpty() ) { foreach( const QRegion ®ion, clippedRegions ) @@ -229,6 +228,10 @@ void SlideBackEffect::postPaintWindow( EffectWindow* w ) } clippedRegions.clear(); } + } + +void SlideBackEffect::postPaintWindow( EffectWindow* w ) + { if( motionManager.isManaging( w ) ) { if( destinationList.contains( w ) )