aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--cmd-rename-window.c1
-rw-r--r--cmd-resize-pane.c1
-rw-r--r--cmd-respawn-pane.c1
-rw-r--r--cmd-select-pane.c4
-rw-r--r--input.c19
-rw-r--r--names.c1
-rw-r--r--options-table.c2
-rw-r--r--window.c2
8 files changed, 23 insertions, 8 deletions
diff --git a/cmd-rename-window.c b/cmd-rename-window.c
index 1fb17ad9..593e0b9e 100644
--- a/cmd-rename-window.c
+++ b/cmd-rename-window.c
@@ -54,6 +54,7 @@ cmd_rename_window_exec(struct cmd *self, struct cmdq_item *item)
window_set_name(wl->window, newname);
options_set_number(wl->window->options, "automatic-rename", 0);
+ server_redraw_window_borders(wl->window);
server_status_window(wl->window);
free(newname);
diff --git a/cmd-resize-pane.c b/cmd-resize-pane.c
index 105f48e0..563c95fb 100644
--- a/cmd-resize-pane.c
+++ b/cmd-resize-pane.c
@@ -91,7 +91,6 @@ cmd_resize_pane_exec(struct cmd *self, struct cmdq_item *item)
else
window_zoom(wp);
server_redraw_window(w);
- server_status_window(w);
return (CMD_RETURN_NORMAL);
}
server_unzoom_window(w);
diff --git a/cmd-respawn-pane.c b/cmd-respawn-pane.c
index 498a89a7..9db280b4 100644
--- a/cmd-respawn-pane.c
+++ b/cmd-respawn-pane.c
@@ -90,6 +90,7 @@ cmd_respawn_pane_exec(struct cmd *self, struct cmdq_item *item)
}
wp->flags |= PANE_REDRAW;
+ server_redraw_window_borders(wp->window);
server_status_window(wp->window);
environ_free(sc.environ);
diff --git a/cmd-select-pane.c b/cmd-select-pane.c
index c2b53bff..224370ab 100644
--- a/cmd-select-pane.c
+++ b/cmd-select-pane.c
@@ -193,8 +193,10 @@ cmd_select_pane_exec(struct cmd *self, struct cmdq_item *item)
if (args_has(args, 'T')) {
title = format_single_from_target(item, args_get(args, 'T'));
- if (screen_set_title(&wp->base, title))
+ if (screen_set_title(&wp->base, title)) {
+ server_redraw_window_borders(wp->window);
server_status_window(wp->window);
+ }
free(title);
return (CMD_RETURN_NORMAL);
}
diff --git a/input.c b/input.c
index aad08ed3..5b4c42f8 100644
--- a/input.c
+++ b/input.c
@@ -1859,8 +1859,10 @@ input_csi_dispatch_winops(struct input_ctx *ictx)
case 0:
case 2:
screen_pop_title(sctx->s);
- if (wp != NULL)
+ if (wp != NULL) {
+ server_redraw_window_borders(wp->window);
server_status_window(wp->window);
+ }
break;
}
break;
@@ -2251,8 +2253,10 @@ input_exit_osc(struct input_ctx *ictx)
switch (option) {
case 0:
case 2:
- if (screen_set_title(sctx->s, p) && wp != NULL)
- server_status_window(ictx->wp->window);
+ if (screen_set_title(sctx->s, p) && wp != NULL) {
+ server_redraw_window_borders(wp->window);
+ server_status_window(wp->window);
+ }
break;
case 4:
input_osc_4(ictx, p);
@@ -2260,8 +2264,10 @@ input_exit_osc(struct input_ctx *ictx)
case 7:
if (utf8_isvalid(p)) {
screen_set_path(sctx->s, p);
- if (wp != NULL)
+ if (wp != NULL) {
+ server_redraw_window_borders(wp->window);
server_status_window(wp->window);
+ }
}
break;
case 10:
@@ -2312,8 +2318,10 @@ input_exit_apc(struct input_ctx *ictx)
return;
log_debug("%s: \"%s\"", __func__, ictx->input_buf);
- if (screen_set_title(sctx->s, ictx->input_buf) && wp != NULL)
+ if (screen_set_title(sctx->s, ictx->input_buf) && wp != NULL) {
+ server_redraw_window_borders(wp->window);
server_status_window(wp->window);
+ }
}
/* Rename string started. */
@@ -2353,6 +2361,7 @@ input_exit_rename(struct input_ctx *ictx)
}
window_set_name(wp->window, ictx->input_buf);
options_set_number(wp->window->options, "automatic-rename", 0);
+ server_redraw_window_borders(wp->window);
server_status_window(wp->window);
}
diff --git a/names.c b/names.c
index 661ba06e..07c689d1 100644
--- a/names.c
+++ b/names.c
@@ -96,6 +96,7 @@ check_window_name(struct window *w)
if (strcmp(name, w->name) != 0) {
log_debug("@%u new name %s (was %s)", w->id, name, w->name);
window_set_name(w, name);
+ server_redraw_window_borders(w);
server_status_window(w);
} else
log_debug("@%u name not changed (still %s)", w->id, w->name);
diff --git a/options-table.c b/options-table.c
index 7c60e404..b0c5bcc5 100644
--- a/options-table.c
+++ b/options-table.c
@@ -717,7 +717,7 @@ const struct options_table_entry options_table[] = {
{ .name = "pane-active-border-style",
.type = OPTIONS_TABLE_STRING,
.scope = OPTIONS_TABLE_WINDOW,
- .default_str = "fg=green",
+ .default_str = "#{?pane_in_mode,fg=yellow,#{?synchronize-panes,fg=red,,fg=green}}",
.flags = OPTIONS_TABLE_IS_STYLE,
.separator = ","
},
diff --git a/window.c b/window.c
index cbbc0d3e..b1d812fc 100644
--- a/window.c
+++ b/window.c
@@ -1109,6 +1109,7 @@ window_pane_set_mode(struct window_pane *wp, struct window_pane *swp,
wp->screen = wme->screen;
wp->flags |= (PANE_REDRAW|PANE_CHANGED);
+ server_redraw_window_borders(wp->window);
server_status_window(wp->window);
notify_pane("pane-mode-changed", wp);
@@ -1140,6 +1141,7 @@ window_pane_reset_mode(struct window_pane *wp)
}
wp->flags |= (PANE_REDRAW|PANE_CHANGED);
+ server_redraw_window_borders(wp->window);
server_status_window(wp->window);
notify_pane("pane-mode-changed", wp);
}