diff options
author | Nicholas Marriott <nicholas.marriott@gmail.com> | 2015-01-25 20:31:22 +0000 |
---|---|---|
committer | Nicholas Marriott <nicholas.marriott@gmail.com> | 2015-01-25 20:31:22 +0000 |
commit | 51233d8b2a8509405856439f11e7a60d08da8335 (patch) | |
tree | d02084aa6aa33ef415f343e809eefb1326613b13 /window-copy.c | |
parent | 68429cd0d3ebfa0a721814b097f03d95d532580c (diff) | |
parent | df6488a47088ec8bcddc6a1cfa85fec1a462c789 (diff) | |
download | rtmux-51233d8b2a8509405856439f11e7a60d08da8335.tar.gz rtmux-51233d8b2a8509405856439f11e7a60d08da8335.tar.bz2 rtmux-51233d8b2a8509405856439f11e7a60d08da8335.zip |
Merge branch 'master' of ssh://git.code.sf.net/p/tmux/tmux-code
Diffstat (limited to 'window-copy.c')
-rw-r--r-- | window-copy.c | 21 |
1 files changed, 12 insertions, 9 deletions
diff --git a/window-copy.c b/window-copy.c index 8aae09be..6447a2d5 100644 --- a/window-copy.c +++ b/window-copy.c @@ -390,13 +390,16 @@ window_copy_key(struct window_pane *wp, struct session *sess, int key) if (data->inputtype == WINDOW_COPY_JUMPFORWARD) { for (; np != 0; np--) window_copy_cursor_jump(wp); - } else if (data->inputtype == WINDOW_COPY_JUMPBACK) { + } + if (data->inputtype == WINDOW_COPY_JUMPBACK) { for (; np != 0; np--) window_copy_cursor_jump_back(wp); - } else if (data->inputtype == WINDOW_COPY_JUMPTOFORWARD) { + } + if (data->inputtype == WINDOW_COPY_JUMPTOFORWARD) { for (; np != 0; np--) window_copy_cursor_jump_to(wp); - } else if (data->inputtype == WINDOW_COPY_JUMPTOBACK) { + } + if (data->inputtype == WINDOW_COPY_JUMPTOBACK) { for (; np != 0; np--) window_copy_cursor_jump_to_back(wp); } @@ -1771,7 +1774,7 @@ window_copy_other_end(struct window_pane *wp) { struct window_copy_mode_data *data = wp->modedata; struct screen *s = &data->screen; - u_int selx, sely, cx, cy, yy; + u_int selx, sely, cx, cy, yy, hsize; if (!s->sel.flag && s->sel.lineflag == LINE_SEL_NONE) return; @@ -1791,13 +1794,13 @@ window_copy_other_end(struct window_pane *wp) data->sely = yy; data->cx = selx; - if (sely < screen_hsize(data->backing) - data->oy) { - data->oy = screen_hsize(data->backing) - sely; + hsize = screen_hsize(data->backing); + if (sely < hsize - data->oy) { + data->oy = hsize - sely; data->cy = 0; - } else if (sely > screen_hsize(data->backing) - data->oy + screen_size_y(s)) { - data->oy = screen_hsize(data->backing) - sely + screen_size_y(s) - 1; + } else if (sely > hsize - data->oy + screen_size_y(s)) { + data->oy = hsize - sely + screen_size_y(s) - 1; data->cy = screen_size_y(s) - 1; - } else data->cy = cy + sely - yy; |