mirror of
https://github.com/tmate-io/tmate.git
synced 2024-11-08 09:14:22 +01:00
Use screen_* versions to avoid range checks (s->dy may be wrong), fix miscalculated free.
This commit is contained in:
parent
c424ef37d0
commit
08a0c5e661
10
TODO
10
TODO
@ -66,16 +66,14 @@
|
||||
some -s after, some no -s, there are various uses of -n. the differences are
|
||||
sort of logical, but confusing. needs rethought
|
||||
- XXX should -i for win idx be before cmd too??
|
||||
- bind non prefix keys (useful for shift-pageup for scrollback, when we
|
||||
have scrollback)
|
||||
- for scrollback (?) or copy/paste, modal key/display handling (key/draw
|
||||
through function pointers in screen). also move ? etc to that too
|
||||
- bind non prefix keys
|
||||
- stuff like rename would be nice to be able to do in-client like screen, if
|
||||
it could be implemented in a non-icky way
|
||||
- there is to much redrawing. use flags? (there was a problem with this idea..?)
|
||||
- use modes for help etc
|
||||
- scrollback should only draw scrolled line on up/down
|
||||
|
||||
|
||||
-- For 0.2 --------------------------------------------------------------------
|
||||
- copy and paste
|
||||
- scrollback
|
||||
phys screen vs virt screen? or seperate scrollback buffer?
|
||||
- window splitting?
|
||||
|
10
screen.c
10
screen.c
@ -1,4 +1,4 @@
|
||||
/* $Id: screen.c,v 1.28 2007-11-21 13:11:41 nicm Exp $ */
|
||||
/* $Id: screen.c,v 1.29 2007-11-21 14:30:15 nicm Exp $ */
|
||||
|
||||
/*
|
||||
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
|
||||
@ -160,8 +160,8 @@ screen_resize(struct screen *s, u_int sx, u_int sy)
|
||||
if (my > ny)
|
||||
my = ny;
|
||||
|
||||
screen_display_free_lines(s, 0, my);
|
||||
screen_display_move_lines(s, 0, my, oy - my);
|
||||
screen_free_lines(s, s->hsize, my);
|
||||
screen_move_lines(s, s->hsize, my, oy - my);
|
||||
|
||||
s->cy -= my;
|
||||
oy -= my;
|
||||
@ -172,7 +172,7 @@ screen_resize(struct screen *s, u_int sx, u_int sy)
|
||||
/*
|
||||
* Remove any remaining lines from the bottom.
|
||||
*/
|
||||
screen_display_free_lines(s, oy, ny);
|
||||
screen_free_lines(s, s->hsize + oy - ny, ny);
|
||||
if (s->cy >= sy)
|
||||
s->cy = sy - 1;
|
||||
}
|
||||
@ -187,7 +187,7 @@ screen_resize(struct screen *s, u_int sx, u_int sy)
|
||||
|
||||
/* Size increasing. */
|
||||
if (sy > oy)
|
||||
screen_display_make_lines(s, oy, sy - oy);
|
||||
screen_make_lines(s, s->hsize + oy, sy - oy);
|
||||
|
||||
s->rupper = 0;
|
||||
s->rlower = s->dy - 1;
|
||||
|
Loading…
Reference in New Issue
Block a user