tshow dark cursor when unfocused. - st - [fork] customized build of st, the sim… | |
git clone git://src.adamsgaard.dk/st | |
Log | |
Files | |
Refs | |
README | |
LICENSE | |
--- | |
commit be2877cd042eaf5d0f7dda102f526357aa577232 | |
parent d8e11bdb0ecbccbaab7d944a577b9557ccff5d52 | |
Author: Aurélien Aptel <[email protected]> | |
Date: Wed, 15 Feb 2012 19:33:48 +0100 | |
show dark cursor when unfocused. | |
Diffstat: | |
M TODO | 7 ++++++- | |
M config.def.h | 10 ++++++---- | |
M st.c | 8 ++++++-- | |
3 files changed, 18 insertions(+), 7 deletions(-) | |
--- | |
diff --git a/TODO b/TODO | |
t@@ -10,10 +10,15 @@ code & interface | |
* clean selection code | |
* clean and complete terminfo entry | |
-* fix shift up/down (shift selection in emacs) | |
* fast drawing | |
* ... | |
+bugs | |
+---- | |
+ | |
+* handle XOpenMI() errors | |
+* fix shift up/down (shift selection in emacs) | |
+ | |
misc | |
---- | |
diff --git a/config.def.h b/config.def.h | |
t@@ -32,13 +32,15 @@ static const char *colorname[] = { | |
/* more colors can be added to use with DefaultXX */ | |
"#cccccc", | |
+ "#333333", | |
}; | |
/* Default colors (colorname index) | |
- foreground, background, cursor */ | |
-#define DefaultFG 7 | |
-#define DefaultBG 0 | |
-#define DefaultCS 16 | |
+ foreground, background, cursor, unfocused cursor */ | |
+#define DefaultFG 7 | |
+#define DefaultBG 0 | |
+#define DefaultCS 16 | |
+#define DefaultUCS 17 | |
/* Special keys (change & recompile st.info accordingly) | |
Keep in mind that kpress() in st.c hardcodes some keys. | |
diff --git a/st.c b/st.c | |
t@@ -1826,10 +1826,14 @@ xdrawcursor(void) { | |
xcopy(oldx, oldy, 1, 1); | |
/* draw the new one */ | |
- if(!(term.c.state & CURSOR_HIDE) && (xw.state & WIN_FOCUSED)) { | |
- sl = utf8size(g.c); | |
+ if(!(term.c.state & CURSOR_HIDE)) { | |
+ if(!(xw.state & WIN_FOCUSED)) | |
+ g.bg = DefaultUCS; | |
+ | |
if(IS_SET(MODE_REVERSE)) | |
g.mode |= ATTR_REVERSE, g.fg = DefaultCS, g.bg = Defau… | |
+ | |
+ sl = utf8size(g.c); | |
xdraws(g.c, g, term.c.x, term.c.y, 1, sl); | |
oldx = term.c.x, oldy = term.c.y; | |
} |