factor and cleanup code.
This commit is contained in:
		
							parent
							
								
									f732ca5f1f
								
							
						
					
					
						commit
						ef69118028
					
				
							
								
								
									
										19
									
								
								st.c
								
								
								
								
							
							
						
						
									
										19
									
								
								st.c
								
								
								
								
							| 
						 | 
					@ -387,10 +387,10 @@ dump(char c) {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void
 | 
					void
 | 
				
			||||||
ttyread(void) {
 | 
					ttyread(void) {
 | 
				
			||||||
	char buf[BUFSIZ] = {0};
 | 
						char buf[BUFSIZ];
 | 
				
			||||||
	int ret;
 | 
						int ret;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	if((ret = read(cmdfd, buf, BUFSIZ)) < 0)
 | 
						if((ret = read(cmdfd, buf, LEN(buf))) < 0)
 | 
				
			||||||
		die("Couldn't read from shell: %s\n", SERRNO);
 | 
							die("Couldn't read from shell: %s\n", SERRNO);
 | 
				
			||||||
	else
 | 
						else
 | 
				
			||||||
		tputs(buf, ret);
 | 
							tputs(buf, ret);
 | 
				
			||||||
| 
						 | 
					@ -465,8 +465,7 @@ tscrolldown (int n) {
 | 
				
			||||||
	
 | 
						
 | 
				
			||||||
	LIMIT(n, 0, term.bot-term.top+1);
 | 
						LIMIT(n, 0, term.bot-term.top+1);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	for(i = 0; i < n; i++)
 | 
						tclearregion(0, term.bot-n+1, term.col-1, term.bot);
 | 
				
			||||||
		memset(term.line[term.bot-i], 0, term.col*sizeof(Glyph));
 | 
					 | 
				
			||||||
	
 | 
						
 | 
				
			||||||
	for(i = term.bot; i >= term.top+n; i--) {
 | 
						for(i = term.bot; i >= term.top+n; i--) {
 | 
				
			||||||
		temp = term.line[i];
 | 
							temp = term.line[i];
 | 
				
			||||||
| 
						 | 
					@ -481,8 +480,7 @@ tscrollup (int n) {
 | 
				
			||||||
	Line temp;
 | 
						Line temp;
 | 
				
			||||||
	LIMIT(n, 0, term.bot-term.top+1);
 | 
						LIMIT(n, 0, term.bot-term.top+1);
 | 
				
			||||||
	
 | 
						
 | 
				
			||||||
	for(i = 0; i < n; i++)
 | 
						tclearregion(0, term.top, term.col-1, term.top+n-1);
 | 
				
			||||||
		memset(term.line[term.top+i], 0, term.col*sizeof(Glyph));
 | 
					 | 
				
			||||||
	
 | 
						
 | 
				
			||||||
	for(i = term.top; i <= term.bot-n; i++) { 
 | 
						for(i = term.top; i <= term.bot-n; i++) { 
 | 
				
			||||||
		 temp = term.line[i];
 | 
							 temp = term.line[i];
 | 
				
			||||||
| 
						 | 
					@ -957,6 +955,7 @@ tputc(char c) {
 | 
				
			||||||
				term.esc = 0;
 | 
									term.esc = 0;
 | 
				
			||||||
				csiparse(), csihandle();
 | 
									csiparse(), csihandle();
 | 
				
			||||||
			}
 | 
								}
 | 
				
			||||||
 | 
								/* TODO: handle other OSC */
 | 
				
			||||||
		} else if(term.esc & ESC_OSC) { 
 | 
							} else if(term.esc & ESC_OSC) { 
 | 
				
			||||||
			if(c == ';') {
 | 
								if(c == ';') {
 | 
				
			||||||
				term.titlelen = 0;
 | 
									term.titlelen = 0;
 | 
				
			||||||
| 
						 | 
					@ -1201,14 +1200,14 @@ xinit(void) {
 | 
				
			||||||
	xloadcols();
 | 
						xloadcols();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	/* windows */
 | 
						/* windows */
 | 
				
			||||||
	xw.h = term.row * xw.ch + 2*BORDER;
 | 
						xw.bufh = term.row * xw.ch;
 | 
				
			||||||
	xw.w = term.col * xw.cw + 2*BORDER;
 | 
						xw.bufw = term.col * xw.cw;
 | 
				
			||||||
 | 
						xw.h = xw.bufh + 2*BORDER;
 | 
				
			||||||
 | 
						xw.w = xw.bufw + 2*BORDER;
 | 
				
			||||||
	xw.win = XCreateSimpleWindow(xw.dis, XRootWindow(xw.dis, xw.scr), 0, 0,
 | 
						xw.win = XCreateSimpleWindow(xw.dis, XRootWindow(xw.dis, xw.scr), 0, 0,
 | 
				
			||||||
			xw.w, xw.h, 0,
 | 
								xw.w, xw.h, 0,
 | 
				
			||||||
			dc.col[DefaultBG],
 | 
								dc.col[DefaultBG],
 | 
				
			||||||
			dc.col[DefaultBG]);
 | 
								dc.col[DefaultBG]);
 | 
				
			||||||
	xw.bufw = xw.w - 2*BORDER;
 | 
					 | 
				
			||||||
	xw.bufh = xw.h - 2*BORDER;
 | 
					 | 
				
			||||||
	xw.buf = XCreatePixmap(xw.dis, xw.win, xw.bufw, xw.bufh, XDefaultDepth(xw.dis, xw.scr));
 | 
						xw.buf = XCreatePixmap(xw.dis, xw.win, xw.bufw, xw.bufh, XDefaultDepth(xw.dis, xw.scr));
 | 
				
			||||||
	/* gc */
 | 
						/* gc */
 | 
				
			||||||
	dc.gc = XCreateGC(xw.dis, xw.win, 0, NULL);
 | 
						dc.gc = XCreateGC(xw.dis, xw.win, 0, NULL);
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in New Issue