tRemoving an undefined case. just do regular selections. - st - [fork] customiz… | |
git clone git://src.adamsgaard.dk/st | |
Log | |
Files | |
Refs | |
README | |
LICENSE | |
--- | |
commit a1e3b94b374c269f9d379f40b67b8519a485b8a6 | |
parent 4b17dddb104bd2ac87dd6e334aafd325197c1407 | |
Author: Christoph Lohmann <[email protected]> | |
Date: Fri, 29 Mar 2013 18:39:01 +0100 | |
Removing an undefined case. just do regular selections. | |
Diffstat: | |
M st.c | 31 +++++++++++++----------------… | |
1 file changed, 13 insertions(+), 18 deletions(-) | |
--- | |
diff --git a/st.c b/st.c | |
t@@ -653,16 +653,14 @@ selected(int x, int y) { | |
return BETWEEN(x, bx, ex); | |
} | |
- switch(sel.type) { | |
- case SEL_REGULAR: | |
- return ((sel.b.y < y && y < sel.e.y) | |
- || (y == sel.e.y && x <= sel.e.x)) | |
- || (y == sel.b.y && x >= sel.b.x | |
- && (x <= sel.e.x || sel.b.y != sel.e.y)); | |
- case SEL_RECTANGULAR: | |
+ if(sel.type == SEL_RECTANGULAR) { | |
return ((sel.b.y <= y && y <= sel.e.y) | |
&& (sel.b.x <= x && x <= sel.e.x)); | |
- }; | |
+ } | |
+ return ((sel.b.y < y && y < sel.e.y) | |
+ || (y == sel.e.y && x <= sel.e.x)) | |
+ || (y == sel.b.y && x >= sel.b.x | |
+ && (x <= sel.e.x || sel.b.y != sel.e.y)); | |
} | |
void | |
t@@ -1254,8 +1252,12 @@ selscroll(int orig, int n) { | |
sel.bx = -1; | |
return; | |
} | |
- switch(sel.type) { | |
- case SEL_REGULAR: | |
+ if(sel.type == SEL_RECTANGULAR) { | |
+ if(sel.by < term.top) | |
+ sel.by = term.top; | |
+ if(sel.ey > term.bot) | |
+ sel.ey = term.bot; | |
+ } else { | |
if(sel.by < term.top) { | |
sel.by = term.top; | |
sel.bx = 0; | |
t@@ -1264,14 +1266,7 @@ selscroll(int orig, int n) { | |
sel.ey = term.bot; | |
sel.ex = term.col; | |
} | |
- break; | |
- case SEL_RECTANGULAR: | |
- if(sel.by < term.top) | |
- sel.by = term.top; | |
- if(sel.ey > term.bot) | |
- sel.ey = term.bot; | |
- break; | |
- }; | |
+ } | |
sel.b.y = sel.by, sel.b.x = sel.bx; | |
sel.e.y = sel.ey, sel.e.x = sel.ex; | |
} |