aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRoberto E. Vargas Caballero <k0ga@shike2.com>2012-09-24 10:26:50 +0200
committerRoberto E. Vargas Caballero <k0ga@shike2.com>2012-09-24 10:26:50 +0200
commitb6cfff16254bb9014f27ff4c5c9e49953ee91735 (patch)
treee2eee119e45c70e407b561824f546eba204698fb
parent21a0c4a2e08ede1d04c472497db7d9aef644d00c (diff)
downloadst-b6cfff16254bb9014f27ff4c5c9e49953ee91735.tar.gz
st-b6cfff16254bb9014f27ff4c5c9e49953ee91735.zip
Clear X window in tsetreset()
tsetreset() is called when it is necessary a full initialization of the terminal, so it also should clean the full X window and not only the terminal content. It is necessary change the order of the initialization in main(), and put xinit before of tnew(), because tnew() calls to tsetreset(), and this can cause a call to xreset() with incorrect values. --- st.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)
-rw-r--r--st.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/st.c b/st.c
index 3c158c0..4c8d67f 100644
--- a/st.c
+++ b/st.c
@@ -952,6 +952,7 @@ treset(void) {
952 term.tabs[i] = 1; 952 term.tabs[i] = 1;
953 term.top = 0, term.bot = term.row - 1; 953 term.top = 0, term.bot = term.row - 1;
954 term.mode = MODE_WRAP; 954 term.mode = MODE_WRAP;
955 xclear(0, 0, xw.w, xw.h);
955 tclearregion(0, 0, term.col-1, term.row-1); 956 tclearregion(0, 0, term.col-1, term.row-1);
956} 957}
957 958
@@ -2433,9 +2434,9 @@ main(int argc, char *argv[]) {
2433 2434
2434 run: 2435 run:
2435 setlocale(LC_CTYPE, ""); 2436 setlocale(LC_CTYPE, "");
2437 xinit();
2436 tnew(80, 24); 2438 tnew(80, 24);
2437 ttynew(); 2439 ttynew();
2438 xinit();
2439 selinit(); 2440 selinit();
2440 run(); 2441 run();
2441 return 0; 2442 return 0;