aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJesse Luehrs <doy@tozt.net>2014-05-18 11:28:41 -0400
committerJesse Luehrs <doy@tozt.net>2014-07-04 22:39:07 -0400
commit1e100849574dc7d0659e51053a18f3683499e85d (patch)
tree70a7f9c1cc83a38197974729c711fecfbf1fb050
parentfacc84d16683f03a3366f71f6ea280ec352a83b8 (diff)
downloadrunes-1e100849574dc7d0659e51053a18f3683499e85d.tar.gz
runes-1e100849574dc7d0659e51053a18f3683499e85d.zip
allow backwards selections
-rw-r--r--src/window-xlib.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/window-xlib.c b/src/window-xlib.c
index 0e6dc60..af5b2b8 100644
--- a/src/window-xlib.c
+++ b/src/window-xlib.c
@@ -861,6 +861,14 @@ static void runes_window_backend_stop_selection(
*end = runes_window_backend_get_mouse_position(t, xpixel, ypixel);
+ if (end->row < start->row || (end->row == start->row && end->col < start->col)) {
+ struct runes_loc tmp;
+
+ tmp = *start;
+ *start = *end;
+ *end = tmp;
+ }
+
if (start->row == end->row && start->col == end->col) {
XSetSelectionOwner(w->dpy, XA_PRIMARY, None, time);
w->has_selection = 0;