tGeneral cleanup - st - [fork] customized build of st, the simple terminal | |
git clone git://src.adamsgaard.dk/st | |
Log | |
Files | |
Refs | |
README | |
LICENSE | |
--- | |
commit 20e0da7f14cc5f30863e0b8014fa223fbaff1e30 | |
parent 403c57ebb5b3745ff93e49b87e526c49dc59a5b9 | |
Author: Devin J. Pohly <[email protected]> | |
Date: Sat, 24 Feb 2018 17:09:13 -0600 | |
General cleanup | |
Simplifies logic in a couple places and removes a redundant function | |
call. | |
Signed-off-by: Devin J. Pohly <[email protected]> | |
Diffstat: | |
M st.c | 1 - | |
M x.c | 46 ++++++++++++++---------------… | |
2 files changed, 21 insertions(+), 26 deletions(-) | |
--- | |
diff --git a/st.c b/st.c | |
t@@ -1693,7 +1693,6 @@ csihandle(void) | |
tputtab(csiescseq.arg[0]); | |
break; | |
case 'J': /* ED -- Clear screen */ | |
- selclear(); | |
switch (csiescseq.arg[0]) { | |
case 0: /* below */ | |
tclearregion(term.c.x, term.c.y, term.col-1, term.c.y); | |
diff --git a/x.c b/x.c | |
t@@ -149,8 +149,8 @@ static void xunloadfont(Font *); | |
static void xunloadfonts(void); | |
static void xsetenv(void); | |
static void xseturgency(int); | |
-static int x2col(int); | |
-static int y2row(int); | |
+static int evcol(XEvent *); | |
+static int evrow(XEvent *); | |
static void expose(XEvent *); | |
static void visibility(XEvent *); | |
t@@ -308,17 +308,17 @@ zoomreset(const Arg *arg) | |
} | |
int | |
-x2col(int x) | |
+evcol(XEvent *e) | |
{ | |
- x -= borderpx; | |
+ int x = e->xbutton.x - borderpx; | |
LIMIT(x, 0, win.tw - 1); | |
return x / win.cw; | |
} | |
int | |
-y2row(int y) | |
+evrow(XEvent *e) | |
{ | |
- y -= borderpx; | |
+ int y = e->xbutton.y - borderpx; | |
LIMIT(y, 0, win.th - 1); | |
return y / win.ch; | |
} | |
t@@ -335,7 +335,7 @@ mousesel(XEvent *e, int done) | |
break; | |
} | |
} | |
- selextend(x2col(e->xbutton.x), y2row(e->xbutton.y), seltype, done); | |
+ selextend(evcol(e), evrow(e), seltype, done); | |
if (done) | |
setsel(getsel(), e->xbutton.time); | |
} | |
t@@ -343,9 +343,8 @@ mousesel(XEvent *e, int done) | |
void | |
mousereport(XEvent *e) | |
{ | |
- int x = x2col(e->xbutton.x), y = y2row(e->xbutton.y), | |
- button = e->xbutton.button, state = e->xbutton.state, | |
- len; | |
+ int len, x = evcol(e), y = evrow(e), | |
+ button = e->xbutton.button, state = e->xbutton.state; | |
char buf[40]; | |
static int ox, oy; | |
t@@ -440,7 +439,7 @@ bpress(XEvent *e) | |
xsel.tclick2 = xsel.tclick1; | |
xsel.tclick1 = now; | |
- selstart(x2col(e->xbutton.x), y2row(e->xbutton.y), snap); | |
+ selstart(evcol(e), evrow(e), snap); | |
} | |
} | |
t@@ -464,18 +463,16 @@ selnotify(XEvent *e) | |
ulong nitems, ofs, rem; | |
int format; | |
uchar *data, *last, *repl; | |
- Atom type, incratom, property; | |
+ Atom type, incratom, property = None; | |
incratom = XInternAtom(xw.dpy, "INCR", 0); | |
ofs = 0; | |
- if (e->type == SelectionNotify) { | |
+ if (e->type == SelectionNotify) | |
property = e->xselection.property; | |
- } else if(e->type == PropertyNotify) { | |
+ else if (e->type == PropertyNotify) | |
property = e->xproperty.atom; | |
- } else { | |
- return; | |
- } | |
+ | |
if (property == None) | |
return; | |
t@@ -625,7 +622,7 @@ setsel(char *str, Time t) | |
XSetSelectionOwner(xw.dpy, XA_PRIMARY, xw.win, t); | |
if (XGetSelectionOwner(xw.dpy, XA_PRIMARY) != xw.win) | |
- selclear_(NULL); | |
+ selclear(); | |
} | |
void | |
t@@ -1407,12 +1404,13 @@ xdrawcursor(int cx, int cy, Glyph g, int ox, int oy, G… | |
og.mode ^= ATTR_REVERSE; | |
xdrawglyph(og, ox, oy); | |
+ if (IS_SET(MODE_HIDE)) | |
+ return; | |
+ | |
/* | |
* Select the right color for the right mode. | |
*/ | |
g.mode &= ATTR_BOLD|ATTR_ITALIC|ATTR_UNDERLINE|ATTR_STRUCK|ATTR_WIDE; | |
- g.fg = defaultbg; | |
- g.bg = defaultcs; | |
if (IS_SET(MODE_REVERSE)) { | |
g.mode |= ATTR_REVERSE; | |
t@@ -1426,17 +1424,15 @@ xdrawcursor(int cx, int cy, Glyph g, int ox, int oy, G… | |
} | |
} else { | |
if (selected(cx, cy)) { | |
- drawcol = dc.col[defaultrcs]; | |
g.fg = defaultfg; | |
g.bg = defaultrcs; | |
} else { | |
- drawcol = dc.col[defaultcs]; | |
+ g.fg = defaultbg; | |
+ g.bg = defaultcs; | |
} | |
+ drawcol = dc.col[g.bg]; | |
} | |
- if (IS_SET(MODE_HIDE)) | |
- return; | |
- | |
/* draw the new one */ | |
if (IS_SET(MODE_FOCUSED)) { | |
switch (win.cursor) { |