equal
deleted
inserted
replaced
373 } |
373 } |
374 } |
374 } |
375 |
375 |
376 void |
376 void |
377 attach(Client *c) { |
377 attach(Client *c) { |
378 c->next = selmon->clients; |
378 c->next = c->mon->clients; |
379 selmon->clients = c; |
379 c->mon->clients = c; |
380 } |
380 } |
381 |
381 |
382 void |
382 void |
383 attachstack(Client *c) { |
383 attachstack(Client *c) { |
384 c->snext = selmon->stack; |
384 c->snext = c->mon->stack; |
385 selmon->stack = c; |
385 c->mon->stack = c; |
386 } |
386 } |
387 |
387 |
388 void |
388 void |
389 buttonpress(XEvent *e) { |
389 buttonpress(XEvent *e) { |
390 unsigned int i, x, click; |
390 unsigned int i, x, click; |
1473 |
1473 |
1474 #ifdef XINERAMA |
1474 #ifdef XINERAMA |
1475 void |
1475 void |
1476 tagmon(const Arg *arg) { |
1476 tagmon(const Arg *arg) { |
1477 unsigned int i; |
1477 unsigned int i; |
|
1478 Client *c; |
1478 Monitor *m; |
1479 Monitor *m; |
1479 |
1480 |
|
1481 if(!(c = selmon->sel)) |
|
1482 return; |
1480 for(i = 0, m = mons; m; m = m->next, i++) |
1483 for(i = 0, m = mons; m; m = m->next, i++) |
1481 if(i == arg->ui) { |
1484 if(i == arg->ui) { |
1482 selmon->sel->m = m; |
1485 detach(c); |
|
1486 detachstack(c); |
|
1487 c->mon = m; |
|
1488 attach(c); |
|
1489 attachstack(c); |
|
1490 selmon->sel = selmon->stack; |
|
1491 m->sel = c; |
1483 arrange(); |
1492 arrange(); |
1484 break; |
1493 break; |
1485 } |
1494 } |
1486 } |
1495 } |
1487 #endif /* XINERAMA */ |
1496 #endif /* XINERAMA */ |
1693 updatebarpos(m); |
1702 updatebarpos(m); |
1694 /* reassign all clients with same screen number */ |
1703 /* reassign all clients with same screen number */ |
1695 for(tm = mons; tm; tm = tm->next) |
1704 for(tm = mons; tm; tm = tm->next) |
1696 if(tm->screen_number == m->screen_number) { |
1705 if(tm->screen_number == m->screen_number) { |
1697 m->clients = tm->clients; |
1706 m->clients = tm->clients; |
1698 m->stack = tm->stack; |
1707 m->sel = m->stack = tm->stack; |
1699 tm->clients = NULL; |
1708 tm->clients = NULL; |
1700 tm->stack = NULL; |
1709 tm->stack = NULL; |
1701 for(c = m->clients; c; c = c->next) |
1710 for(c = m->clients; c; c = c->next) |
1702 c->mon = m; |
1711 c->mon = m; |
1703 } |
1712 } |
1713 tm->clients = c; |
1722 tm->clients = c; |
1714 } |
1723 } |
1715 while(tm->stack) { |
1724 while(tm->stack) { |
1716 c = tm->stack->snext; |
1725 c = tm->stack->snext; |
1717 tm->stack->snext = newmons->stack; |
1726 tm->stack->snext = newmons->stack; |
1718 newmons->stack = tm->stack; |
1727 newmons->sel = newmons->stack = tm->stack; |
1719 tm->stack = c; |
1728 tm->stack = c; |
1720 } |
1729 } |
1721 } |
1730 } |
1722 |
1731 |
1723 /* select focused monitor */ |
1732 /* select focused monitor */ |