aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--st.c14
1 files changed, 10 insertions, 4 deletions
diff --git a/st.c b/st.c
index 11867b7..63c3f85 100644
--- a/st.c
+++ b/st.c
@@ -841,6 +841,8 @@ ttyresize(int x, int y) {
841 841
842 w.ws_row = term.row; 842 w.ws_row = term.row;
843 w.ws_col = term.col; 843 w.ws_col = term.col;
844 w.ws_xpixel = xw.w;
845 w.ws_ypixel = xw.h;
844 w.ws_xpixel = w.ws_ypixel = 0; 846 w.ws_xpixel = w.ws_ypixel = 0;
845 if(ioctl(cmdfd, TIOCSWINSZ, &w) < 0) 847 if(ioctl(cmdfd, TIOCSWINSZ, &w) < 0)
846 fprintf(stderr, "Couldn't set window size: %s\n", SERRNO); 848 fprintf(stderr, "Couldn't set window size: %s\n", SERRNO);
@@ -1910,12 +1912,15 @@ xinit(void) {
1910 xw.fx = sw + xw.fx - xw.fw - 1; 1912 xw.fx = sw + xw.fx - xw.fw - 1;
1911 if(xw.fy < 0) 1913 if(xw.fy < 0)
1912 xw.fy = sh + xw.fy - xw.fh - 1; 1914 xw.fy = sh + xw.fy - xw.fh - 1;
1915
1916 xw.h = xw.fh;
1917 xw.w = xw.fw;
1913 } else { 1918 } else {
1914 /* window - default size */ 1919 /* window - default size */
1915 xw.h = 2*BORDER + term.row * xw.ch; 1920 xw.h = 2*BORDER + term.row * xw.ch;
1916 xw.w = 2*BORDER + term.col * xw.cw; 1921 xw.w = 2*BORDER + term.col * xw.cw;
1917 xw.fw = xw.w; 1922 xw.fx = 0;
1918 xw.fh = xw.h; 1923 xw.fy = 0;
1919 } 1924 }
1920 1925
1921 /* font */ 1926 /* font */
@@ -1940,7 +1945,7 @@ xinit(void) {
1940 1945
1941 parent = opt_embed ? strtol(opt_embed, NULL, 0) : XRootWindow(xw.dpy, xw.scr); 1946 parent = opt_embed ? strtol(opt_embed, NULL, 0) : XRootWindow(xw.dpy, xw.scr);
1942 xw.win = XCreateWindow(xw.dpy, parent, xw.fx, xw.fy, 1947 xw.win = XCreateWindow(xw.dpy, parent, xw.fx, xw.fy,
1943 xw.fw, xw.fh, 0, XDefaultDepth(xw.dpy, xw.scr), InputOutput, 1948 xw.w, xw.h, 0, XDefaultDepth(xw.dpy, xw.scr), InputOutput,
1944 XDefaultVisual(xw.dpy, xw.scr), 1949 XDefaultVisual(xw.dpy, xw.scr),
1945 CWBackPixel | CWBorderPixel | CWBitGravity | CWEventMask 1950 CWBackPixel | CWBorderPixel | CWBitGravity | CWEventMask
1946 | CWColormap, 1951 | CWColormap,
@@ -2254,8 +2259,8 @@ resize(XEvent *e) {
2254 return; 2259 return;
2255 if(tresize(col, row)) 2260 if(tresize(col, row))
2256 draw(); 2261 draw();
2257 ttyresize(col, row);
2258 xresize(col, row); 2262 xresize(col, row);
2263 ttyresize(col, row);
2259} 2264}
2260 2265
2261bool 2266bool
@@ -2310,6 +2315,7 @@ main(int argc, char *argv[]) {
2310 unsigned int wr, hr; 2315 unsigned int wr, hr;
2311 2316
2312 xw.fw = xw.fh = xw.fx = xw.fy = 0; 2317 xw.fw = xw.fh = xw.fx = xw.fy = 0;
2318 xw.isfixed = False;
2313 2319
2314 for(i = 1; i < argc; i++) { 2320 for(i = 1; i < argc; i++) {
2315 switch(argv[i][0] != '-' || argv[i][2] ? -1 : argv[i][1]) { 2321 switch(argv[i][0] != '-' || argv[i][2] ? -1 : argv[i][1]) {