mirror of
https://github.com/tmux/tmux.git
synced 2025-09-05 08:07:03 +00:00
Add flags to refresh-client (-U -D -L -R and -c) to pan a window that
is larger than the client manually. Bound to S-Up, S-Down, S-Left, S-Right and Delete manually. Also add aliases for keys DC = Delete, IC = Insert, and make refresh-client -C accept XxY as well as X,Y to match default-size.
This commit is contained in:
13
tty.c
13
tty.c
@ -738,12 +738,24 @@ tty_window_offset1(struct tty *tty, u_int *ox, u_int *oy, u_int *sx, u_int *sy)
|
||||
*oy = 0;
|
||||
*sx = w->sx;
|
||||
*sy = w->sy;
|
||||
|
||||
c->pan_window = NULL;
|
||||
return (0);
|
||||
}
|
||||
|
||||
*sx = tty->sx;
|
||||
*sy = tty->sy - lines;
|
||||
|
||||
if (c->pan_window == w) {
|
||||
if (c->pan_ox + *sx > w->sx)
|
||||
c->pan_ox = w->sx - *sx;
|
||||
*ox = c->pan_ox;
|
||||
if (c->pan_oy + *sy > w->sy)
|
||||
c->pan_oy = w->sy - *sy;
|
||||
*oy = c->pan_oy;
|
||||
return (1);
|
||||
}
|
||||
|
||||
if (~wp->screen->mode & MODE_CURSOR) {
|
||||
*ox = 0;
|
||||
*oy = 0;
|
||||
@ -766,6 +778,7 @@ tty_window_offset1(struct tty *tty, u_int *ox, u_int *oy, u_int *sx, u_int *sy)
|
||||
*oy = cy - *sy / 2;
|
||||
}
|
||||
|
||||
c->pan_window = NULL;
|
||||
return (1);
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user