From a618271e1287c90653cdda4442868c2d4e94de49 Mon Sep 17 00:00:00 2001 From: Nicholas Marriott Date: Mon, 10 Sep 2018 07:19:17 +0100 Subject: Bring back window_pane_visible to stop input going to panes which are hidden by zoom. --- window.c | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) (limited to 'window.c') diff --git a/window.c b/window.c index cf29ae48..aabfbdf1 100644 --- a/window.c +++ b/window.c @@ -1286,15 +1286,24 @@ window_pane_key(struct window_pane *wp, struct client *c, struct session *s, return; if (options_get_number(wp->window->options, "synchronize-panes")) { TAILQ_FOREACH(wp2, &wp->window->panes, entry) { - if (wp2 == wp || wp2->mode != NULL) - continue; - if (wp2->fd == -1 || wp2->flags & PANE_INPUTOFF) - continue; - input_key(wp2, key, NULL); + if (wp2 != wp && + wp2->mode == NULL && + wp2->fd != -1 && + (~wp2->flags & PANE_INPUTOFF) && + window_pane_visible(wp2)) + input_key(wp2, key, NULL); } } } +int +window_pane_visible(struct window_pane *wp) +{ + if (~wp->window->flags & WINDOW_ZOOMED) + return (1); + return (wp == wp->window->active); +} + u_int window_pane_search(struct window_pane *wp, const char *searchstr) { -- cgit