mirror of
https://github.com/tmux/tmux.git
synced 2024-12-13 01:48:47 +00:00
Sync OpenBSD patchset 1091:
Do not fire name timer when automatic-rename is off, from Tim Ruehsen a while ago.
This commit is contained in:
parent
14e5cdf02e
commit
ce67a44a94
@ -87,6 +87,7 @@ cmd_set_option_exec(struct cmd *self, struct cmd_ctx *ctx)
|
|||||||
struct winlink *wl;
|
struct winlink *wl;
|
||||||
struct client *c;
|
struct client *c;
|
||||||
struct options *oo;
|
struct options *oo;
|
||||||
|
struct window *w;
|
||||||
const char *optstr, *valstr;
|
const char *optstr, *valstr;
|
||||||
u_int i;
|
u_int i;
|
||||||
|
|
||||||
@ -147,6 +148,18 @@ cmd_set_option_exec(struct cmd *self, struct cmd_ctx *ctx)
|
|||||||
return (-1);
|
return (-1);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* Start or stop timers when automatic-rename changed. */
|
||||||
|
if (strcmp (oe->name, "automatic-rename") == 0) {
|
||||||
|
for (i = 0; i < ARRAY_LENGTH(&windows); i++) {
|
||||||
|
if ((w = ARRAY_ITEM(&windows, i)) == NULL)
|
||||||
|
continue;
|
||||||
|
if (options_get_number(&w->options, "automatic-rename"))
|
||||||
|
queue_window_name(w);
|
||||||
|
else if (event_initialized(&w->name_timer))
|
||||||
|
evtimer_del(&w->name_timer);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/* Update sizes and redraw. May not need it but meh. */
|
/* Update sizes and redraw. May not need it but meh. */
|
||||||
recalculate_sizes();
|
recalculate_sizes();
|
||||||
for (i = 0; i < ARRAY_LENGTH(&clients); i++) {
|
for (i = 0; i < ARRAY_LENGTH(&clients); i++) {
|
||||||
|
4
names.c
4
names.c
@ -49,9 +49,7 @@ window_name_callback(unused int fd, unused short events, void *data)
|
|||||||
struct window *w = data;
|
struct window *w = data;
|
||||||
char *name, *wname;
|
char *name, *wname;
|
||||||
|
|
||||||
queue_window_name(w); /* XXX even if the option is off? */
|
queue_window_name(w); /* stopped when option turned off */
|
||||||
if (!options_get_number(&w->options, "automatic-rename"))
|
|
||||||
return;
|
|
||||||
|
|
||||||
if (w->active->screen != &w->active->base)
|
if (w->active->screen != &w->active->base)
|
||||||
name = NULL;
|
name = NULL;
|
||||||
|
4
window.c
4
window.c
@ -294,9 +294,9 @@ window_create1(u_int sx, u_int sy)
|
|||||||
w->sx = sx;
|
w->sx = sx;
|
||||||
w->sy = sy;
|
w->sy = sy;
|
||||||
|
|
||||||
queue_window_name(w);
|
|
||||||
|
|
||||||
options_init(&w->options, &global_w_options);
|
options_init(&w->options, &global_w_options);
|
||||||
|
if (options_get_number(&w->options, "automatic-rename"))
|
||||||
|
queue_window_name(w);
|
||||||
|
|
||||||
for (i = 0; i < ARRAY_LENGTH(&windows); i++) {
|
for (i = 0; i < ARRAY_LENGTH(&windows); i++) {
|
||||||
if (ARRAY_ITEM(&windows, i) == NULL) {
|
if (ARRAY_ITEM(&windows, i) == NULL) {
|
||||||
|
Loading…
Reference in New Issue
Block a user