summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authornicm <nicm>2014-03-31 21:40:21 +0000
committernicm <nicm>2014-03-31 21:40:21 +0000
commit46593e7aa26b83f0ba1b0d36a700d7158ac2b178 (patch)
treec810f8171fc213840522e026d459e1299b4eadaf
parentfcdae6925a08dc06860f9552ba7a300669f4a038 (diff)
Add names for mouse button bits rather than using magic numbers, from
Marcel Partap.
-rw-r--r--tmux.h12
-rw-r--r--tty-keys.c10
2 files changed, 15 insertions, 7 deletions
diff --git a/tmux.h b/tmux.h
index b7d53727..94eb5b8f 100644
--- a/tmux.h
+++ b/tmux.h
@@ -1128,18 +1128,26 @@ struct tty_term {
};
LIST_HEAD(tty_terms, tty_term);
+/* Mouse button masks. */
+#define MOUSE_MASK_BUTTONS 3
+#define MOUSE_MASK_SHIFT 4
+#define MOUSE_MASK_META 8
+#define MOUSE_MASK_CTRL 16
+#define MOUSE_MASK_DRAG 32
+#define MOUSE_MASK_WHEEL 64
+
/* Mouse wheel states. */
#define MOUSE_WHEEL_UP 0
#define MOUSE_WHEEL_DOWN 1
-/* Mouse events. */
+/* Mouse event bits. */
#define MOUSE_EVENT_DOWN 0x1
#define MOUSE_EVENT_DRAG 0x2
#define MOUSE_EVENT_UP 0x4
#define MOUSE_EVENT_CLICK 0x8
#define MOUSE_EVENT_WHEEL 0x10
-/* Mouse flags. */
+/* Mouse flag bits. */
#define MOUSE_RESIZE_PANE 0x1
/*
diff --git a/tty-keys.c b/tty-keys.c
index 4492df1e..e0e794cc 100644
--- a/tty-keys.c
+++ b/tty-keys.c
@@ -748,21 +748,21 @@ tty_keys_mouse(struct tty *tty, const char *buf, size_t len, size_t *size)
m->sgr_rel = sgr_rel;
m->x = x;
m->y = y;
- if (b & 64) { /* wheel button */
- b &= 3;
+ if (b & MOUSE_MASK_WHEEL) {
+ b &= MOUSE_MASK_BUTTONS;
if (b == 0)
m->wheel = MOUSE_WHEEL_UP;
else if (b == 1)
m->wheel = MOUSE_WHEEL_DOWN;
m->event = MOUSE_EVENT_WHEEL;
- } else if ((b & 3) == 3) {
+ } else if ((b & MOUSE_MASK_BUTTONS) == 3) {
if (~m->event & MOUSE_EVENT_DRAG && x == m->x && y == m->y) {
m->event = MOUSE_EVENT_CLICK;
} else
m->event = MOUSE_EVENT_DRAG;
m->event |= MOUSE_EVENT_UP;
} else {
- if (b & 32) /* drag motion */
+ if (b & MOUSE_MASK_DRAG)
m->event = MOUSE_EVENT_DRAG;
else {
if (m->event & MOUSE_EVENT_UP && x == m->x && y == m->y)
@@ -773,7 +773,7 @@ tty_keys_mouse(struct tty *tty, const char *buf, size_t len, size_t *size)
m->sy = y;
m->event = MOUSE_EVENT_DOWN;
}
- m->button = (b & 3);
+ m->button = (b & MOUSE_MASK_BUTTONS);
}
return (0);