version 1.30, 2016/10/16 17:55:14 |
version 1.31, 2016/10/16 19:04:05 |
|
|
* Enter copy or clock mode. |
* Enter copy or clock mode. |
*/ |
*/ |
|
|
static enum cmd_retval cmd_copy_mode_exec(struct cmd *, struct cmd_q *); |
static enum cmd_retval cmd_copy_mode_exec(struct cmd *, struct cmdq_item *); |
|
|
const struct cmd_entry cmd_copy_mode_entry = { |
const struct cmd_entry cmd_copy_mode_entry = { |
.name = "copy-mode", |
.name = "copy-mode", |
|
|
}; |
}; |
|
|
static enum cmd_retval |
static enum cmd_retval |
cmd_copy_mode_exec(struct cmd *self, struct cmd_q *cmdq) |
cmd_copy_mode_exec(struct cmd *self, struct cmdq_item *item) |
{ |
{ |
struct args *args = self->args; |
struct args *args = self->args; |
struct client *c = cmdq->client; |
struct client *c = item->client; |
struct session *s; |
struct session *s; |
struct window_pane *wp = cmdq->state.tflag.wp; |
struct window_pane *wp = item->state.tflag.wp; |
|
|
if (args_has(args, 'M')) { |
if (args_has(args, 'M')) { |
if ((wp = cmd_mouse_pane(&cmdq->mouse, &s, NULL)) == NULL) |
if ((wp = cmd_mouse_pane(&item->mouse, &s, NULL)) == NULL) |
return (CMD_RETURN_NORMAL); |
return (CMD_RETURN_NORMAL); |
if (c == NULL || c->session != s) |
if (c == NULL || c->session != s) |
return (CMD_RETURN_NORMAL); |
return (CMD_RETURN_NORMAL); |
|
|
if (args_has(args, 'M')) { |
if (args_has(args, 'M')) { |
if (wp->mode != NULL && wp->mode != &window_copy_mode) |
if (wp->mode != NULL && wp->mode != &window_copy_mode) |
return (CMD_RETURN_NORMAL); |
return (CMD_RETURN_NORMAL); |
window_copy_start_drag(c, &cmdq->mouse); |
window_copy_start_drag(c, &item->mouse); |
} |
} |
if (wp->mode == &window_copy_mode && args_has(self->args, 'u')) |
if (wp->mode == &window_copy_mode && args_has(self->args, 'u')) |
window_copy_pageup(wp, 0); |
window_copy_pageup(wp, 0); |