client.c
changeset 450 728c9089b079
parent 448 8089f22fdb46
child 452 026aba558fdf
equal deleted inserted replaced
449:78d36a1dd1d9 450:728c9089b079
   412 }
   412 }
   413 
   413 
   414 void
   414 void
   415 unmanage(Client *c)
   415 unmanage(Client *c)
   416 {
   416 {
       
   417 	Client *nc;
       
   418 
   417 	XGrabServer(dpy);
   419 	XGrabServer(dpy);
   418 	XSetErrorHandler(xerrordummy);
   420 	XSetErrorHandler(xerrordummy);
   419 
   421 
   420 	detach(c);
   422 	detach(c);
   421 	detachstack(c);
   423 	detachstack(c);
   422 	if(sel == c) {
   424 	if(sel == c) {
   423 		for(sel = stack; sel && !isvisible(sel); sel = sel->snext);
   425 		for(nc = stack; nc && !isvisible(nc); nc = nc->snext);
   424 		focus(sel);
   426 		focus(nc);
   425 	}
   427 	}
   426 
   428 
   427 	XUngrabButton(dpy, AnyButton, AnyModifier, c->win);
   429 	XUngrabButton(dpy, AnyButton, AnyModifier, c->win);
   428 	XDestroyWindow(dpy, c->twin);
   430 	XDestroyWindow(dpy, c->twin);
   429 
   431