]> git.mdlowis.com Git - projs/tide.git/commitdiff
fixed selection clearing logic to handle reverse selections correctly
authorMichael D. Lowis <mike@mdlowis.com>
Sun, 12 May 2019 01:28:24 +0000 (21:28 -0400)
committerMichael D. Lowis <mike@mdlowis.com>
Sun, 12 May 2019 01:28:24 +0000 (21:28 -0400)
TODO.md
src/lib/buf.c

diff --git a/TODO.md b/TODO.md
index 475e3bb110fd9725899970dd1b2f2da18dc520c6..37462d09bfe6813ce9df01bbe1d9d5322563eab4 100644 (file)
--- a/TODO.md
+++ b/TODO.md
@@ -7,7 +7,6 @@
 ## STAGING
 
 * tide: gap buffer does not handle UTF-8 currently
-* tide: arrow keys on reverse selection shrink the wrong way
 
 ## BACKLOG
 
index d49d70d4f7b0b9210b3accefe56627f7d849541f..4a2a3089fa98b03ced61fab3942085413e5a67a1 100644 (file)
@@ -739,6 +739,8 @@ void buf_selln(Buf* buf) {
 }
 
 void buf_selclr(Buf* buf, int dir) {
+    if (buf->selection.beg > buf->selection.end)
+        buf->selection = selswap(buf->selection);
     if (dir > 0)
         buf->selection.beg = buf->selection.end;
     else