Client: Can swap 2 clients of different screen
This commit is contained in:
parent
23d00abb5a
commit
9e39ebd684
@ -637,6 +637,7 @@ void
|
||||
client_swap(Client *a, Client *b)
|
||||
{
|
||||
Client *an, *bn, *ap, *bp;
|
||||
int ts;
|
||||
|
||||
if(!a || !b)
|
||||
return;
|
||||
@ -645,6 +646,7 @@ client_swap(Client *a, Client *b)
|
||||
an = a->next;
|
||||
bp = b->prev;
|
||||
bn = b->next;
|
||||
ts = a->screen;
|
||||
|
||||
if(a == b->next)
|
||||
{
|
||||
@ -683,6 +685,9 @@ client_swap(Client *a, Client *b)
|
||||
else if(clients == b)
|
||||
clients = a;
|
||||
|
||||
a->screen = b->screen;
|
||||
b->screen = ts;
|
||||
|
||||
arrange(a->screen);
|
||||
arrange(b->screen);
|
||||
|
||||
|
||||
@ -247,9 +247,9 @@ int screen_get_with_geo(int x, int y);
|
||||
int screen_get_sel(void);
|
||||
void screen_set_sel(int screen);
|
||||
void screen_init_geo(void);
|
||||
void uicb_screen_select(uicb_t cmd);
|
||||
void uicb_screen_next(uicb_t cmd);
|
||||
void uicb_screen_prev(uicb_t cmd);
|
||||
void uicb_screen_select(uicb_t);
|
||||
void uicb_screen_next(uicb_t);
|
||||
void uicb_screen_prev(uicb_t);
|
||||
|
||||
/* layout.c */
|
||||
void arrange(int screen);
|
||||
@ -271,7 +271,7 @@ void uicb_layout_prev(uicb_t);
|
||||
void uicb_layout_next(uicb_t);
|
||||
void uicb_set_mwfact(uicb_t);
|
||||
void uicb_set_nmaster(uicb_t);
|
||||
void uicb_set_layout(uicb_t cmd);
|
||||
void uicb_set_layout(uicb_t);
|
||||
|
||||
/* init.c */
|
||||
void init(void);
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user