CT: fix bogus shades with hover_unshade and fast mouse moving.

svn path=/trunk/kdebase/kwin/; revision=140376
This commit is contained in:
Cristian Tibirna 2002-03-02 23:23:52 +00:00
parent 5af9e44aa6
commit bf0cffbf81

View file

@ -635,10 +635,10 @@ bool Client::manage( bool isMapped, bool doNotShow, bool isInitial )
}
if ( isDesktop() ) {
// desktops are treated slightly special
geom = workspace()->geometry();
may_move = FALSE;
isMapped = TRUE;
// desktops are treated slightly special
geom = workspace()->geometry();
may_move = FALSE;
isMapped = TRUE;
}
if ( isMapped || session || isTransient() ) {
@ -849,7 +849,7 @@ bool Client::manage( bool isMapped, bool doNotShow, bool isInitial )
Client* ac = workspace()->activeClient();
if ( !isTransient() && !session && ac && !ac->isDesktop() &&
ac->userTime() > userTime() ) {
ac->userTime() > userTime() ) {
workspace()->stackClientUnderActive( this );
show();
} else {
@ -1137,9 +1137,9 @@ bool Client::configureRequest( XConfigureRequestEvent& e )
return TRUE; // we have better things to do right now
if ( isDesktop() ) {
setGeometry( workspace()->geometry() );
setGeometry( workspace()->geometry() );
sendSyntheticConfigureNotify();
return TRUE;
return TRUE;
}
if ( isShade() )
@ -1851,11 +1851,11 @@ void Client::releaseWindow( bool withdraw )
{
if ( win ) {
move(gravitate(TRUE));
if ( withdraw )
XUnmapWindow( qt_xdisplay(), win );
if ( withdraw )
XUnmapWindow( qt_xdisplay(), win );
windowWrapper()->releaseWindow();
if ( withdraw )
setMappingState( WithdrawnState );
if ( withdraw )
setMappingState( WithdrawnState );
win = 0;
}
}
@ -2182,7 +2182,7 @@ bool Client::x11Event( XEvent * e)
autoRaiseTimer = 0;
delete shadeHoverTimer;
shadeHoverTimer = 0;
if ( hover_unshade )
if ( hover_unshade && !isMove())
setShade( TRUE, 1 );
}
if ( options->focusPolicy == Options::FocusStrictlyUnderMouse )