diff options
| author | Devin J. Pohly <djpohly@djpohly.com> | 2010-10-25 16:45:13 -0400 | 
|---|---|---|
| committer | Devin J. Pohly <djpohly@djpohly.com> | 2010-10-25 16:45:13 -0400 | 
| commit | edfbc9b432bc779ec9c41f7523be52b99edeec85 (patch) | |
| tree | f4211f187a7ebfc42d0d0dbb4c31301a11facb81 | |
| parent | 638a30359d26c1f84a87f0f8df17df1765068029 (diff) | |
| download | st-edfbc9b432bc779ec9c41f7523be52b99edeec85.tar.xz st-edfbc9b432bc779ec9c41f7523be52b99edeec85.zip  | |
redraw if we scroll on resize
| -rw-r--r-- | st.c | 10 | 
1 files changed, 6 insertions, 4 deletions
@@ -170,7 +170,7 @@ static void tputtab(void);  static void tputc(char);  static void tputs(char*, int);  static void treset(void); -static void tresize(int, int); +static int tresize(int, int);  static void tscrollup(int, int);  static void tscrolldown(int, int);  static void tsetattr(int*, int); @@ -1202,7 +1202,7 @@ tputs(char *s, int len) {  		tputc(*s++);  } -void +int  tresize(int col, int row) {  	int i, x;  	int minrow = MIN(row, term.row); @@ -1210,7 +1210,7 @@ tresize(int col, int row) {  	int slide = term.c.y - row + 1;  	if(col < 1 || row < 1) -		return; +		return 0;  	/* free unneeded rows */  	i = 0; @@ -1256,6 +1256,7 @@ tresize(int col, int row) {  	tmoveto(term.c.x, term.c.y);  	/* reset scrolling region */  	tsetscroll(0, row-1); +	return (slide > 0);  }  void @@ -1650,7 +1651,8 @@ resize(XEvent *e) {  	row = (xw.h - 2*BORDER) / xw.ch;  	if(col == term.col && row == term.row)  		return; -	tresize(col, row); +	if(tresize(col, row)) +		draw(SCREEN_REDRAW);  	ttyresize(col, row);  	xresize(col, row);  }  | 
