mirror of
https://github.com/vale981/bspwm
synced 2025-03-05 09:51:38 -05:00
Only emit one call to put_status
in focus_node
This commit is contained in:
parent
fee7d5146c
commit
6296eebd13
2 changed files with 15 additions and 13 deletions
21
messages.c
21
messages.c
|
@ -293,6 +293,7 @@ void process_message(char *msg, char *rsp)
|
|||
focus_node(m, m->desk, m->desk->focus);
|
||||
}
|
||||
}
|
||||
return;
|
||||
} else if (strcmp(cmd, "use") == 0) {
|
||||
char *name = strtok(NULL, TOK_SEP);
|
||||
if (name != NULL) {
|
||||
|
@ -304,6 +305,7 @@ void process_message(char *msg, char *rsp)
|
|||
focus_node(loc.monitor, loc.desktop, loc.desktop->focus);
|
||||
}
|
||||
}
|
||||
return;
|
||||
} else if (strcmp(cmd, "cycle_monitor") == 0) {
|
||||
char *dir = strtok(NULL, TOK_SEP);
|
||||
if (dir != NULL) {
|
||||
|
@ -442,21 +444,20 @@ void process_message(char *msg, char *rsp)
|
|||
if (name != NULL) {
|
||||
monitor_t *m = find_monitor(name);
|
||||
if (m != NULL && m != mon) {
|
||||
char *opt = strtok(NULL, TOK_SEP);
|
||||
send_option_t o;
|
||||
if (!parse_send_option(opt, &o))
|
||||
return;
|
||||
desktop_t *d = mon->desk;
|
||||
desktop_hide(d);
|
||||
transfer_desktop(mon, m, d);
|
||||
desktop_show(mon->desk);
|
||||
char *opt = strtok(NULL, TOK_SEP);
|
||||
send_option_t o;
|
||||
if (parse_send_option(opt, &o)) {
|
||||
if (o == SEND_OPTION_FOLLOW) {
|
||||
arrange(m, d);
|
||||
focus_node(m, d, d->focus);
|
||||
} else if (o == SEND_OPTION_DONT_FOLLOW) {
|
||||
update_current();
|
||||
}
|
||||
if (o == SEND_OPTION_FOLLOW) {
|
||||
arrange(m, d);
|
||||
focus_node(m, d, d->focus);
|
||||
} else if (o == SEND_OPTION_DONT_FOLLOW) {
|
||||
update_current();
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
return;
|
||||
|
|
7
tree.c
7
tree.c
|
@ -552,7 +552,10 @@ void focus_node(monitor_t *m, desktop_t *d, node_t *n)
|
|||
window_draw_border(n, true, true);
|
||||
}
|
||||
|
||||
select_desktop(m, d);
|
||||
if (mon != m || m->desk != d) {
|
||||
select_desktop(m, d);
|
||||
put_status();
|
||||
}
|
||||
|
||||
if (n == NULL) {
|
||||
ewmh_update_active_window();
|
||||
|
@ -764,7 +767,6 @@ void select_monitor(monitor_t *m)
|
|||
mon = m;
|
||||
|
||||
ewmh_update_current_desktop();
|
||||
put_status();
|
||||
}
|
||||
|
||||
void select_desktop(monitor_t *m, desktop_t *d)
|
||||
|
@ -785,7 +787,6 @@ void select_desktop(monitor_t *m, desktop_t *d)
|
|||
mon->desk = d;
|
||||
|
||||
ewmh_update_current_desktop();
|
||||
put_status();
|
||||
}
|
||||
|
||||
void cycle_monitor(cycle_dir_t dir)
|
||||
|
|
Loading…
Add table
Reference in a new issue