Store state shared between multiple commands in the queue in a shared

structure.
This commit is contained in:
nicm
2017-04-21 14:01:19 +00:00
parent 311dad8c28
commit bba588752f
14 changed files with 68 additions and 43 deletions

View File

@ -49,6 +49,7 @@ static enum cmd_retval
cmd_resize_pane_exec(struct cmd *self, struct cmdq_item *item)
{
struct args *args = self->args;
struct cmdq_shared *shared = item->shared;
struct window_pane *wp = item->state.tflag.wp;
struct winlink *wl = item->state.tflag.wl;
struct window *w = wl->window;
@ -60,12 +61,12 @@ cmd_resize_pane_exec(struct cmd *self, struct cmdq_item *item)
int x, y;
if (args_has(args, 'M')) {
if (cmd_mouse_window(&item->mouse, &s) == NULL)
if (cmd_mouse_window(&shared->mouse, &s) == NULL)
return (CMD_RETURN_NORMAL);
if (c == NULL || c->session != s)
return (CMD_RETURN_NORMAL);
c->tty.mouse_drag_update = cmd_resize_pane_mouse_update;
cmd_resize_pane_mouse_update(c, &item->mouse);
cmd_resize_pane_mouse_update(c, &shared->mouse);
return (CMD_RETURN_NORMAL);
}