version 1.1, 2012/09/03 09:32:38 |
version 1.2, 2012/09/25 07:41:22 |
|
|
((c) != NULL && ((c)->flags & CLIENT_CONTROL)) |
((c) != NULL && ((c)->flags & CLIENT_CONTROL)) |
|
|
void |
void |
|
control_notify_input(struct client *c, struct window_pane *wp, |
|
struct evbuffer *input) |
|
{ |
|
u_char *buf; |
|
size_t len; |
|
struct evbuffer *message; |
|
u_int i; |
|
|
|
if (c->session == NULL) |
|
return; |
|
|
|
buf = EVBUFFER_DATA(input); |
|
len = EVBUFFER_LENGTH(input); |
|
|
|
/* |
|
* Only write input if the window pane is linked to a window belonging |
|
* to the client's session. |
|
*/ |
|
if (winlink_find_by_window(&c->session->windows, wp->window) != NULL) { |
|
message = evbuffer_new(); |
|
evbuffer_add_printf(message, "%%output %%%u ", wp->id); |
|
for (i = 0; i < len; i++) |
|
evbuffer_add_printf(message, "%02hhx", buf[i]); |
|
control_write_buffer(c, message); |
|
evbuffer_free(message); |
|
} |
|
} |
|
|
|
void |
control_notify_window_layout_changed(struct window *w) |
control_notify_window_layout_changed(struct window *w) |
{ |
{ |
struct client *c; |
struct client *c; |