diff options
author | Tiago Cunha <tcunha@gmx.com> | 2009-10-12 00:04:56 +0000 |
---|---|---|
committer | Tiago Cunha <tcunha@gmx.com> | 2009-10-12 00:04:56 +0000 |
commit | cf9804f2a098695512394cf0f22196cb9213b83b (patch) | |
tree | 6149f7816cd13b99fa7ecce401e532e054cb7dac /window.c | |
parent | bc90c7c199be94d502777f0d857a646407f0699b (diff) | |
download | rtmux-cf9804f2a098695512394cf0f22196cb9213b83b.tar.gz rtmux-cf9804f2a098695512394cf0f22196cb9213b83b.tar.bz2 rtmux-cf9804f2a098695512394cf0f22196cb9213b83b.zip |
Sync OpenBSD patchset 376:
Accept key and mouse input for keys in zombified windows if they are in a mode..
Diffstat (limited to 'window.c')
-rw-r--r-- | window.c | 12 |
1 files changed, 7 insertions, 5 deletions
@@ -1,4 +1,4 @@ -/* $Id: window.c,v 1.112 2009-10-11 23:46:02 tcunha Exp $ */ +/* $Id: window.c,v 1.113 2009-10-12 00:04:56 tcunha Exp $ */ /* * Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net> @@ -636,15 +636,17 @@ window_pane_key(struct window_pane *wp, struct client *c, int key) { struct window_pane *wp2; - if (wp->fd == -1 || !window_pane_visible(wp)) + if (!window_pane_visible(wp)) return; if (wp->mode != NULL) { if (wp->mode->key != NULL) wp->mode->key(wp, c, key); return; - } + } + if (wp->fd == -1) + return; input_key(wp, key); if (options_get_number(&wp->window->options, "synchronize-panes")) { TAILQ_FOREACH(wp2, &wp->window->panes, entry) { @@ -660,7 +662,7 @@ void window_pane_mouse( struct window_pane *wp, struct client *c, u_char b, u_char x, u_char y) { - if (wp->fd == -1 || !window_pane_visible(wp)) + if (!window_pane_visible(wp)) return; /* XXX convert from 1-based? */ @@ -675,7 +677,7 @@ window_pane_mouse( if (wp->mode != NULL) { if (wp->mode->mouse != NULL) wp->mode->mouse(wp, c, b, x, y); - } else + } else if (wp->fd != -1) input_mouse(wp, b, x, y); } |