diff -r 75aa81011594 -r c7b4661e8902 event.c --- a/event.c Wed May 09 10:12:55 2007 +0200 +++ b/event.c Wed May 09 11:31:14 2007 +0200 @@ -185,6 +185,10 @@ c->w = ev->width; if(ev->value_mask & CWHeight) c->h = ev->height; + if((c->x + c->w) > sw && c->isfloating) + c->x = sw / 2 - c->w / 2; /* center in x direction */ + if((c->y + c->h) > sh && c->isfloating) + c->y = sh / 2 - c->h / 2; /* center in y direction */ if((ev->value_mask & (CWX | CWY)) && !(ev->value_mask & (CWWidth | CWHeight))) configure(c);