diff -r bf6792e3e700 -r dacd3f3c5823 event.c --- a/event.c Mon Aug 14 08:52:15 2006 +0200 +++ b/event.c Mon Aug 14 10:18:24 2006 +0200 @@ -118,21 +118,24 @@ } } else if((c = getclient(ev->window))) { - higher(c); focus(c); switch(ev->button) { default: break; case Button1: - if(!c->ismax && (arrange == dofloat || c->isfloat)) + if(!c->ismax && (arrange == dofloat || c->isfloat)) { + restack(c); movemouse(c); + } break; case Button2: zoom(NULL); break; case Button3: - if(!c->ismax && (arrange == dofloat || c->isfloat)) + if(!c->ismax && (arrange == dofloat || c->isfloat)) { + restack(c); resizemouse(c); + } break; } }