Add repaint when window is closed.

Fixes shadows left on desktop when kickoff or app menus are closed

svn path=/trunk/KDE/kdebase/workspace/; revision=732268
icc-effect-5.14.5
Rivo Laks 2007-11-03 11:35:39 +00:00
parent f556feda15
commit b070bc842b
2 changed files with 6 additions and 0 deletions

View File

@ -73,6 +73,11 @@ QRect ShadowEffect::transformWindowDamage( EffectWindow* w, const QRect& r )
QRect r2 = r | shadowRectangle( r );
return effects->transformWindowDamage( w, r2 );
}
void ShadowEffect::windowClosed( EffectWindow* c )
{
effects->addRepaint( shadowRectangle( c->geometry() ));
}
bool ShadowEffect::useShadow( EffectWindow* w ) const
{

View File

@ -28,6 +28,7 @@ class ShadowEffect
virtual void paintWindow( EffectWindow* w, int mask, QRegion region, WindowPaintData& data );
virtual void postPaintWindow( EffectWindow* w );
virtual QRect transformWindowDamage( EffectWindow* w, const QRect& r );
virtual void windowClosed( EffectWindow* c );
private:
void drawShadow( EffectWindow* w, int mask, QRegion region, WindowPaintData& data );
void addQuadVertices(QVector<float>& verts, float x1, float y1, float x2, float y2) const;