summaryrefslogtreecommitdiff
path: root/tests/input_test.c
diff options
context:
space:
mode:
Diffstat (limited to 'tests/input_test.c')
-rw-r--r--tests/input_test.c21
1 files changed, 16 insertions, 5 deletions
diff --git a/tests/input_test.c b/tests/input_test.c
index 1a44f42..78dad07 100644
--- a/tests/input_test.c
+++ b/tests/input_test.c
@@ -234,14 +234,15 @@ int main(void)
m.mouse_encoding = TERM_MOUSE_ENC_X10;
m.mouse = TERM_MOUSE_BUTTON;
- MOUSE(2, 1, .kind = TERM_MOUSE_MOTION, .button = 3); expect("");
- MOUSE(2, 1, .kind = TERM_MOUSE_MOTION, .button = 0);
+ MOUSE(2, 1, .kind = TERM_MOUSE_MOTION, .button = TERM_MOUSE_BUTTON_NONE); expect("");
+ MOUSE(2, 1, .kind = TERM_MOUSE_MOTION, .button = TERM_MOUSE_BUTTON_PRIMARY);
expect("\033[M\100\043\042");
m.mouse_encoding = TERM_MOUSE_ENC_SGR;
- MOUSE(2, 1, .kind = TERM_MOUSE_MOTION, .button = 0, .mods = TERM_MOD_CTRL);
+ MOUSE(2, 1, .kind = TERM_MOUSE_MOTION, .button = TERM_MOUSE_BUTTON_NONE); expect("");
+ MOUSE(2, 1, .kind = TERM_MOUSE_MOTION, .button = TERM_MOUSE_BUTTON_PRIMARY, .mods = TERM_MOD_CTRL);
expect("\033[<48;3;2M");
m.mouse = TERM_MOUSE_ANY;
- MOUSE(2, 1, .kind = TERM_MOUSE_MOTION, .button = 3); expect("\033[<35;3;2M");
+ MOUSE(2, 1, .kind = TERM_MOUSE_MOTION, .button = TERM_MOUSE_BUTTON_NONE); expect("\033[<35;3;2M");
m.mouse_encoding = TERM_MOUSE_ENC_X10;
MOUSE(2, 1, .button = TERM_MOUSE_WHEEL_UP); expect("\033[M\140\043\042");
@@ -336,10 +337,20 @@ int main(void)
}
m.mouse = TERM_MOUSE_ANY;
m.mouse_encoding = TERM_MOUSE_ENC_SGR;
- MOUSE(2, 1, .button = TERM_MOUSE_BUTTON_EXTRA_1); expect("\033[<8;3;2M");
+ MOUSE(2, 1, .button = TERM_MOUSE_BUTTON_EXTRA_1); expect("\033[<128;3;2M");
+ MOUSE(2, 1, .button = TERM_MOUSE_BUTTON_EXTRA_2); expect("\033[<129;3;2M");
+ MOUSE(2, 1, .button = TERM_MOUSE_BUTTON_EXTRA_3); expect("\033[<130;3;2M");
+ MOUSE(2, 1, .button = TERM_MOUSE_BUTTON_EXTRA_4); expect("\033[<131;3;2M");
MOUSE(2, 1, .button = TERM_MOUSE_WHEEL_LEFT); expect("\033[<66;3;2M");
MOUSE(2, 1, .button = TERM_MOUSE_WHEEL_RIGHT); expect("\033[<67;3;2M");
+ /* Ensure Alt modifier does not collide with extra buttons */
+ MOUSE(2, 1, .button = TERM_MOUSE_BUTTON_PRIMARY, .mods = TERM_MOD_ALT); expect("\033[<8;3;2M");
+ MOUSE(2, 1, .button = TERM_MOUSE_BUTTON_EXTRA_1, .mods = TERM_MOD_ALT); expect("\033[<136;3;2M");
+ MOUSE(2, 1, .button = TERM_MOUSE_BUTTON_MIDDLE, .mods = TERM_MOD_ALT); expect("\033[<9;3;2M");
+ MOUSE(2, 1, .button = TERM_MOUSE_BUTTON_EXTRA_2, .mods = TERM_MOD_ALT); expect("\033[<137;3;2M");
+ MOUSE(2, 1, .kind = TERM_MOUSE_RELEASE, .button = TERM_MOUSE_BUTTON_EXTRA_1); expect("\033[<128;3;2m");
+
{
/* A host sizes the paste buffer from the text alone. */
static const char text[] = "ls\r\n\033[31m\u202erm\x7f\t\xe4\xb8\xad";