summaryrefslogtreecommitdiffstats
path: root/server-client.c
diff options
context:
space:
mode:
authorNicholas Marriott <nicm@openbsd.org>2011-04-18 19:49:05 +0000
committerNicholas Marriott <nicm@openbsd.org>2011-04-18 19:49:05 +0000
commit0bb211978121292518d59430e3547685882078bc (patch)
tree0fbcc60e35bddb0cc2536ab08485a7131f4f1ad2 /server-client.c
parent4e75e82cc35050a244193830bd4d252eee9ad323 (diff)
Add an option (mouse-select-window) which allows the mouse to be used by
clicking on the status line, written by hsim at gmx dot li.
Diffstat (limited to 'server-client.c')
-rw-r--r--server-client.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/server-client.c b/server-client.c
index 66e5caf0..36bce79b 100644
--- a/server-client.c
+++ b/server-client.c
@@ -319,6 +319,12 @@ server_client_handle_key(int key, struct mouse_event *mouse, void *data)
server_redraw_window_borders(w);
wp = w->active;
}
+ if (mouse->y + 1 == c->tty.sy && mouse->b == MOUSE_UP &&
+ options_get_number(oo, "mouse-select-window") &&
+ options_get_number(oo, "status")) {
+ status_set_window_at(c, mouse->x);
+ return;
+ }
window_pane_mouse(wp, c->session, mouse);
return;
}
@@ -459,6 +465,10 @@ server_client_reset_state(struct client *c)
(mode & ALL_MOUSE_MODES) == 0)
mode |= MODE_MOUSE_STANDARD;
+ if (options_get_number(oo, "mouse-select-window") &&
+ (mode & ALL_MOUSE_MODES) == 0)
+ mode |= MODE_MOUSE_STANDARD;
+
/*
* Set UTF-8 mouse input if required. If the terminal is UTF-8, the
* user has set mouse-utf8 and any mouse mode is in effect, turn on