diff options
author | Christoph Lohmann <20h@r-36.net> | 2013-03-29 18:39:01 +0100 |
---|---|---|
committer | Christoph Lohmann <20h@r-36.net> | 2013-03-29 18:39:01 +0100 |
commit | a1e3b94b374c269f9d379f40b67b8519a485b8a6 (patch) | |
tree | 2db8980eac03935bbd6836be92540a6168d55065 | |
parent | 4b17dddb104bd2ac87dd6e334aafd325197c1407 (diff) | |
download | st-patched-a1e3b94b374c269f9d379f40b67b8519a485b8a6.tar.bz2 st-patched-a1e3b94b374c269f9d379f40b67b8519a485b8a6.tar.xz st-patched-a1e3b94b374c269f9d379f40b67b8519a485b8a6.zip |
Removing an undefined case. just do regular selections.
-rw-r--r-- | st.c | 31 |
1 files changed, 13 insertions, 18 deletions
@@ -653,16 +653,14 @@ selected(int x, int y) { | |||
653 | return BETWEEN(x, bx, ex); | 653 | return BETWEEN(x, bx, ex); |
654 | } | 654 | } |
655 | 655 | ||
656 | switch(sel.type) { | 656 | if(sel.type == SEL_RECTANGULAR) { |
657 | case SEL_REGULAR: | ||
658 | return ((sel.b.y < y && y < sel.e.y) | ||
659 | || (y == sel.e.y && x <= sel.e.x)) | ||
660 | || (y == sel.b.y && x >= sel.b.x | ||
661 | && (x <= sel.e.x || sel.b.y != sel.e.y)); | ||
662 | case SEL_RECTANGULAR: | ||
663 | return ((sel.b.y <= y && y <= sel.e.y) | 657 | return ((sel.b.y <= y && y <= sel.e.y) |
664 | && (sel.b.x <= x && x <= sel.e.x)); | 658 | && (sel.b.x <= x && x <= sel.e.x)); |
665 | }; | 659 | } |
660 | return ((sel.b.y < y && y < sel.e.y) | ||
661 | || (y == sel.e.y && x <= sel.e.x)) | ||
662 | || (y == sel.b.y && x >= sel.b.x | ||
663 | && (x <= sel.e.x || sel.b.y != sel.e.y)); | ||
666 | } | 664 | } |
667 | 665 | ||
668 | void | 666 | void |
@@ -1254,8 +1252,12 @@ selscroll(int orig, int n) { | |||
1254 | sel.bx = -1; | 1252 | sel.bx = -1; |
1255 | return; | 1253 | return; |
1256 | } | 1254 | } |
1257 | switch(sel.type) { | 1255 | if(sel.type == SEL_RECTANGULAR) { |
1258 | case SEL_REGULAR: | 1256 | if(sel.by < term.top) |
1257 | sel.by = term.top; | ||
1258 | if(sel.ey > term.bot) | ||
1259 | sel.ey = term.bot; | ||
1260 | } else { | ||
1259 | if(sel.by < term.top) { | 1261 | if(sel.by < term.top) { |
1260 | sel.by = term.top; | 1262 | sel.by = term.top; |
1261 | sel.bx = 0; | 1263 | sel.bx = 0; |
@@ -1264,14 +1266,7 @@ selscroll(int orig, int n) { | |||
1264 | sel.ey = term.bot; | 1266 | sel.ey = term.bot; |
1265 | sel.ex = term.col; | 1267 | sel.ex = term.col; |
1266 | } | 1268 | } |
1267 | break; | 1269 | } |
1268 | case SEL_RECTANGULAR: | ||
1269 | if(sel.by < term.top) | ||
1270 | sel.by = term.top; | ||
1271 | if(sel.ey > term.bot) | ||
1272 | sel.ey = term.bot; | ||
1273 | break; | ||
1274 | }; | ||
1275 | sel.b.y = sel.by, sel.b.x = sel.bx; | 1270 | sel.b.y = sel.by, sel.b.x = sel.bx; |
1276 | sel.e.y = sel.ey, sel.e.x = sel.ex; | 1271 | sel.e.y = sel.ey, sel.e.x = sel.ex; |
1277 | } | 1272 | } |