dwm.c
changeset 1304 ef3327d0517a
parent 1303 01064454b311
child 1306 5f55d9b819a2
equal deleted inserted replaced
1303:01064454b311 1304:ef3327d0517a
    92 	uint tags;
    92 	uint tags;
    93 	Bool isfixed, isfloating, isurgent;
    93 	Bool isfixed, isfloating, isurgent;
    94 	Client *next;
    94 	Client *next;
    95 	Client *snext;
    95 	Client *snext;
    96 	Window win;
    96 	Window win;
       
    97 	void *aux;
       
    98 	void (*freeaux)(void *);
    97 };
    99 };
    98 
   100 
    99 typedef struct {
   101 typedef struct {
   100 	int x, y, w, h;
   102 	int x, y, w, h;
   101 	ulong norm[ColLast];
   103 	ulong norm[ColLast];
  1517 	XConfigureWindow(dpy, c->win, CWBorderWidth, &wc); /* restore border */
  1519 	XConfigureWindow(dpy, c->win, CWBorderWidth, &wc); /* restore border */
  1518 	detach(c);
  1520 	detach(c);
  1519 	detachstack(c);
  1521 	detachstack(c);
  1520 	if(sel == c)
  1522 	if(sel == c)
  1521 		focus(NULL);
  1523 		focus(NULL);
       
  1524 	if(c->aux && c->freeaux)
       
  1525 		c->freeaux(c->aux);
  1522 	XUngrabButton(dpy, AnyButton, AnyModifier, c->win);
  1526 	XUngrabButton(dpy, AnyButton, AnyModifier, c->win);
  1523 	setclientstate(c, WithdrawnState);
  1527 	setclientstate(c, WithdrawnState);
  1524 	free(c);
  1528 	free(c);
  1525 	XSync(dpy, False);
  1529 	XSync(dpy, False);
  1526 	XSetErrorHandler(xerror);
  1530 	XSetErrorHandler(xerror);
  1640 	}
  1644 	}
  1641 }
  1645 }
  1642 
  1646 
  1643 void
  1647 void
  1644 view(const Arg *arg) {
  1648 view(const Arg *arg) {
       
  1649 	if(arg && (arg->i & TAGMASK) == tagset[seltags])
       
  1650 		return;
  1645 	seltags ^= 1; /* toggle sel tagset */
  1651 	seltags ^= 1; /* toggle sel tagset */
  1646 	if(arg && (arg->ui & TAGMASK))
  1652 	if(arg && (arg->ui & TAGMASK))
  1647 		tagset[seltags] = arg->i & TAGMASK;
  1653 		tagset[seltags] = arg->i & TAGMASK;
  1648 	arrange();
  1654 	arrange();
  1649 }
  1655 }