some ICCCM clearifications

svn path=/trunk/kdebase/kwin/; revision=60306
icc-effect-5.14.5
Matthias Ettrich 2000-08-09 12:06:03 +00:00
parent ffbe75dfba
commit 21dbeccdad
1 changed files with 13 additions and 3 deletions

View File

@ -848,13 +848,23 @@ bool Client::configureRequest( XConfigureRequestEvent& e )
}
if ( e.value_mask & (CWX | CWY ) ) {
int nx = x() + windowWrapper()->x();
int ny = y() + windowWrapper()->y();
int ox = 0;
int oy = 0;
int gravity = NorthWestGravity;
if ( xSizeHint.flags & PWinGravity)
gravity = xSizeHint.win_gravity;
if ( TRUE || gravity == StaticGravity ) {
// the TRUE makes it work with real programs, but it's not ICCCM.
ox = windowWrapper()->x();
oy = windowWrapper()->y();
}
int nx = x() + ox;
int ny = y() + oy;
if ( e.value_mask & CWX )
nx = e.x;
if ( e.value_mask & CWY )
ny = e.y;
move( nx - windowWrapper()->x(), ny - windowWrapper()->y() );
move( nx - ox, ny - oy );
}
if ( e.value_mask & (CWWidth | CWHeight ) ) {