tMake w3mimgdisplay work with st - st - [fork] customized build of st, the simp… | |
git clone git://src.adamsgaard.dk/st | |
Log | |
Files | |
Refs | |
README | |
LICENSE | |
--- | |
commit c0a56ef4be2a0f84360f41b2d45964e7ef297746 | |
parent 9df9a4723dedf4f5e12c954376c4931a6976b918 | |
Author: Amadeusz Sławiński <[email protected]> | |
Date: Sat, 11 Jan 2014 12:54:36 +0100 | |
Make w3mimgdisplay work with st | |
Before this patch draw() calls drawregion which calls xdraws and then | |
updates whole window in one call thus overdrawing anything drawn by | |
w3mimgdisplay. After moving XCopyArea to xdraws it only updates the | |
regions which are being updated by XftDraw* functions. It may do a few | |
more calls to XCopyArea with this patch. | |
Signed-off-by: Amadeusz Sławiński <[email protected]> | |
Diffstat: | |
M st.c | 4 ++-- | |
1 file changed, 2 insertions(+), 2 deletions(-) | |
--- | |
diff --git a/st.c b/st.c | |
t@@ -3301,6 +3301,8 @@ xdraws(char *s, Glyph base, int x, int y, int charlen, i… | |
XftDrawRect(xw.draw, fg, winx, winy + font->ascent + 1, | |
width, 1); | |
} | |
+ XCopyArea(xw.dpy, xw.buf, xw.win, dc.gc, winx, winy, width, | |
+ font->ascent + font->descent, winx, winy); | |
/* Reset clip to none. */ | |
XftDrawSetClip(xw.draw, 0); | |
t@@ -3399,8 +3401,6 @@ redraw(int timeout) { | |
void | |
draw(void) { | |
drawregion(0, 0, term.col, term.row); | |
- XCopyArea(xw.dpy, xw.buf, xw.win, dc.gc, 0, 0, xw.w, | |
- xw.h, 0, 0); | |
XSetForeground(xw.dpy, dc.gc, | |
dc.col[IS_SET(MODE_REVERSE)? | |
defaultfg : defaultbg].pixel); |