Send synthetic configure notify event when manually moving/resizing.

svn path=/trunk/kdebase/kwin/; revision=258903
This commit is contained in:
Luboš Luňák 2003-10-14 15:33:05 +00:00
parent fa2f71549f
commit 20ffdc2263
2 changed files with 4 additions and 10 deletions

View file

@ -727,6 +727,7 @@ void Client::configureRequestEvent( XConfigureRequestEvent* e )
// TODO sending a synthetic configure notify always is fine, even in cases where // TODO sending a synthetic configure notify always is fine, even in cases where
// the ICCCM doesn't require this - it can be though of as 'the WM decided to move // the ICCCM doesn't require this - it can be though of as 'the WM decided to move
// the window later'. Perhaps those unnecessary ones could be saved though. // the window later'. Perhaps those unnecessary ones could be saved though.
// See also Client::setGeometry()/plainResize()/move().
sendSyntheticConfigureNotify(); sendSyntheticConfigureNotify();
// SELI TODO accept configure requests for isDesktop windows (because kdesktop // SELI TODO accept configure requests for isDesktop windows (because kdesktop

View file

@ -1024,8 +1024,7 @@ void Client::setGeometry( int x, int y, int w, int h, ForceGeometry_t force )
updateShape(); updateShape();
// SELI TODO won't this be too expensive? // SELI TODO won't this be too expensive?
updateWorkareaDiffs(); updateWorkareaDiffs();
if ( !isResize() ) sendSyntheticConfigureNotify(); // TODO optimize this?
sendSyntheticConfigureNotify(); // TODO make this ICCCM compliant
} }
} }
@ -1062,13 +1061,8 @@ void Client::plainResize( int w, int h, ForceGeometry_t force )
if( shape()) if( shape())
updateShape(); updateShape();
updateWorkareaDiffs(); updateWorkareaDiffs();
if ( !isResize() ) sendSyntheticConfigureNotify();
sendSyntheticConfigureNotify(); // TODO make this ICCCM compliant
} }
// TODO to be done with synt. notify cleanup
// resize() is called from manage(), can't send synt. notify here
// if ( !isResize() && isVisible() )
// sendSyntheticConfigureNotify();
} }
/*! /*!
@ -1083,8 +1077,7 @@ void Client::move( int x, int y, ForceGeometry_t force )
if( block_geometry == 0 ) if( block_geometry == 0 )
{ {
XMoveWindow( qt_xdisplay(), frameId(), x, y ); XMoveWindow( qt_xdisplay(), frameId(), x, y );
if ( !isResize() ) // TODO isMove() ? sendSyntheticConfigureNotify();
sendSyntheticConfigureNotify(); // TODO make this ICCCM compliant
} }
} }