tfix selection. (thx Tarmo Heiskanen) - st - [fork] customized build of st, the… | |
git clone git://src.adamsgaard.dk/st | |
Log | |
Files | |
Refs | |
README | |
LICENSE | |
--- | |
commit a20125a3d1fd9fec2af7886a474691a1839f8537 | |
parent 0dbf9c8c12a5de35d1cef22349ab80e8f0a8f10e | |
Author: Aurélien Aptel <[email protected]> | |
Date: Tue, 1 Nov 2011 16:33:43 +0100 | |
fix selection. (thx Tarmo Heiskanen) | |
Diffstat: | |
M st.c | 8 +++++++- | |
1 file changed, 7 insertions(+), 1 deletion(-) | |
--- | |
diff --git a/st.c b/st.c | |
t@@ -463,6 +463,9 @@ bpress(XEvent *e) { | |
if(IS_SET(MODE_MOUSE)) | |
mousereport(e); | |
else if(e->xbutton.button == Button1) { | |
+ if(sel.bx != -1) | |
+ for(int i=sel.b.y; i<=sel.e.y; i++) | |
+ term.dirty[i] = 1; | |
sel.mode = 1; | |
sel.ex = sel.bx = X2COL(e->xbutton.x); | |
sel.ey = sel.by = Y2ROW(e->xbutton.y); | |
t@@ -583,6 +586,7 @@ brelease(XEvent *e) { | |
else if(e->xbutton.button == Button1) { | |
sel.mode = 0; | |
getbuttoninfo(e, NULL, &sel.ex, &sel.ey); | |
+ term.dirty[sel.ey] = 1; | |
if(sel.bx == sel.ex && sel.by == sel.ey) { | |
struct timeval now; | |
sel.bx = -1; | |
t@@ -627,7 +631,9 @@ bmotion(XEvent *e) { | |
if(oldey != sel.ey || oldex != sel.ex) { | |
int starty = MIN(oldey, sel.ey); | |
int endy = MAX(oldey, sel.ey); | |
- drawregion(0, (starty > 0 ? starty : 0), term.col, (en… | |
+ for(int i=starty; i<=endy; i++) | |
+ term.dirty[i] = 1; | |
+ draw(); | |
} | |
} | |
} |