Unreference window after the window has been rendered.

CCBUG: 209723

svn path=/trunk/KDE/kdebase/workspace/; revision=1036021
This commit is contained in:
Lucas Murray 2009-10-16 10:20:43 +00:00
parent d05ff926f9
commit 9f05419d06

View file

@ -70,8 +70,6 @@ void SlidingPopupsEffect::prePaintWindow( EffectWindow* w, WindowPrePaintData& d
w->enablePainting( EffectWindow::PAINT_DISABLED_BY_DELETE );
mDisappearingWindows[ w ].addTime( time );
if( mDisappearingWindows[ w ].value() >= 1 )
w->unrefWindow();
}
effects->prePaintWindow( w, data, time );
}
@ -127,6 +125,8 @@ void SlidingPopupsEffect::postPaintWindow( EffectWindow* w )
if( mAppearingWindows.contains( w ) || mDisappearingWindows.contains( w ) )
w->addRepaintFull(); // trigger next animation repaint
effects->postPaintWindow( w );
if( mDisappearingWindows.contains( w ) && mDisappearingWindows[ w ].value() >= 1 )
w->unrefWindow();
}
void SlidingPopupsEffect::windowAdded( EffectWindow* w )