dwm.c
changeset 1002 5cc2be8efeb4
parent 1001 2477f818215c
child 1003 19d4ccea9745
equal deleted inserted replaced
1001:2477f818215c 1002:5cc2be8efeb4
    62 	int rx, ry, rw, rh; /* revert geometry */
    62 	int rx, ry, rw, rh; /* revert geometry */
    63 	int basew, baseh, incw, inch, maxw, maxh, minw, minh;
    63 	int basew, baseh, incw, inch, maxw, maxh, minw, minh;
    64 	int minax, maxax, minay, maxay;
    64 	int minax, maxax, minay, maxay;
    65 	long flags; 
    65 	long flags; 
    66 	unsigned int border, oldborder;
    66 	unsigned int border, oldborder;
    67 	Bool isbanned, isfixed, ismax, isfloating;
    67 	Bool isbanned, isfixed, ismax, isfloating, wasfloating;
    68 	Bool *tags;
    68 	Bool *tags;
    69 	Client *next;
    69 	Client *next;
    70 	Client *prev;
    70 	Client *prev;
    71 	Client *snext;
    71 	Client *snext;
    72 	Window win;
    72 	Window win;
  1625 
  1625 
  1626 void
  1626 void
  1627 togglemax(const char *arg) {
  1627 togglemax(const char *arg) {
  1628 	XEvent ev;
  1628 	XEvent ev;
  1629 
  1629 
  1630 	if(!sel || (!isarrange(floating) && !sel->isfloating) || sel->isfixed)
  1630 	if(!sel || sel->isfixed)
  1631 		return;
  1631 		return;
  1632 	if((sel->ismax = !sel->ismax)) {
  1632 	if((sel->ismax = !sel->ismax)) {
       
  1633 		if(isarrange(floating) || sel->isfloating)
       
  1634 			sel->wasfloating = True;
       
  1635 		else {
       
  1636 			togglefloating(NULL);
       
  1637 			sel->wasfloating = False;
       
  1638 		}
  1633 		sel->rx = sel->x;
  1639 		sel->rx = sel->x;
  1634 		sel->ry = sel->y;
  1640 		sel->ry = sel->y;
  1635 		sel->rw = sel->w;
  1641 		sel->rw = sel->w;
  1636 		sel->rh = sel->h;
  1642 		sel->rh = sel->h;
  1637 		resize(sel, wax, way, waw - 2 * sel->border, wah - 2 * sel->border, True);
  1643 		resize(sel, wax, way, waw - 2 * sel->border, wah - 2 * sel->border, True);
  1638 	}
  1644 	}
  1639 	else
  1645 	else {
  1640 		resize(sel, sel->rx, sel->ry, sel->rw, sel->rh, True);
  1646 		resize(sel, sel->rx, sel->ry, sel->rw, sel->rh, True);
       
  1647 		if (!sel->wasfloating)
       
  1648 			togglefloating(NULL);
       
  1649 	}
  1641 	drawbar();
  1650 	drawbar();
  1642 	while(XCheckMaskEvent(dpy, EnterWindowMask, &ev));
  1651 	while(XCheckMaskEvent(dpy, EnterWindowMask, &ev));
  1643 }
  1652 }
  1644 
  1653 
  1645 void
  1654 void