=================================================================== RCS file: /cvsrepo/anoncvs/cvs/src/usr.bin/tmux/window.c,v retrieving revision 1.26 retrieving revision 1.27 diff -u -r1.26 -r1.27 --- src/usr.bin/tmux/window.c 2009/09/20 14:58:12 1.26 +++ src/usr.bin/tmux/window.c 2009/10/09 07:27:00 1.27 @@ -1,4 +1,4 @@ -/* $OpenBSD: window.c,v 1.26 2009/09/20 14:58:12 nicm Exp $ */ +/* $OpenBSD: window.c,v 1.27 2009/10/09 07:27:00 nicm Exp $ */ /* * Copyright (c) 2007 Nicholas Marriott @@ -610,14 +610,26 @@ void window_pane_key(struct window_pane *wp, struct client *c, int key) { + struct window_pane *wp2; + if (wp->fd == -1 || !window_pane_visible(wp)) return; if (wp->mode != NULL) { if (wp->mode->key != NULL) wp->mode->key(wp, c, key); - } else - input_key(wp, key); + return; + } + + input_key(wp, key); + 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 && window_pane_visible(wp2)) + input_key(wp2, key); + } + } } void