mirror of
https://github.com/tmux/tmux.git
synced 2024-11-18 10:28:54 +00:00
replace some magic mouse constants with defines for clarity. ok nicm
This commit is contained in:
parent
552c9cd83f
commit
b4b9b831ee
14
tmux.h
14
tmux.h
@ -1050,9 +1050,23 @@ struct tty_ctx {
|
|||||||
u_int last_width;
|
u_int last_width;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/*
|
||||||
|
* xterm mouse mode is fairly silly. Buttons are in the bottom two
|
||||||
|
* bits: 0 button 1; 1 button 2; 2 button 3; 3 buttons released.
|
||||||
|
*
|
||||||
|
* Bit 3 is shift; bit 4 is meta; bit 5 control.
|
||||||
|
*
|
||||||
|
* Bit 6 is added for mouse buttons 4 and 5.
|
||||||
|
*/
|
||||||
/* Mouse input. */
|
/* Mouse input. */
|
||||||
struct mouse_event {
|
struct mouse_event {
|
||||||
u_char b;
|
u_char b;
|
||||||
|
#define MOUSE_1 0
|
||||||
|
#define MOUSE_2 1
|
||||||
|
#define MOUSE_3 2
|
||||||
|
#define MOUSE_UP 3
|
||||||
|
#define MOUSE_BUTTON 3
|
||||||
|
#define MOUSE_45 64
|
||||||
u_char x;
|
u_char x;
|
||||||
u_char y;
|
u_char y;
|
||||||
};
|
};
|
||||||
|
@ -762,26 +762,17 @@ window_copy_mouse(
|
|||||||
struct screen *s = &data->screen;
|
struct screen *s = &data->screen;
|
||||||
u_int i;
|
u_int i;
|
||||||
|
|
||||||
/*
|
|
||||||
* xterm mouse mode is fairly silly. Buttons are in the bottom two
|
|
||||||
* bits: 0 button 1; 1 button 2; 2 button 3; 3 buttons released.
|
|
||||||
*
|
|
||||||
* Bit 3 is shift; bit 4 is meta; bit 5 control.
|
|
||||||
*
|
|
||||||
* Bit 6 is added for mouse buttons 4 and 5.
|
|
||||||
*/
|
|
||||||
|
|
||||||
if (m->x >= screen_size_x(s))
|
if (m->x >= screen_size_x(s))
|
||||||
return;
|
return;
|
||||||
if (m->y >= screen_size_y(s))
|
if (m->y >= screen_size_y(s))
|
||||||
return;
|
return;
|
||||||
|
|
||||||
/* If mouse wheel (buttons 4 and 5), scroll. */
|
/* If mouse wheel (buttons 4 and 5), scroll. */
|
||||||
if ((m->b & 64) == 64) {
|
if ((m->b & MOUSE_45)) {
|
||||||
if ((m->b & 3) == 0) {
|
if ((m->b & MOUSE_BUTTON) == MOUSE_1) {
|
||||||
for (i = 0; i < 5; i++)
|
for (i = 0; i < 5; i++)
|
||||||
window_copy_cursor_up(wp, 0);
|
window_copy_cursor_up(wp, 0);
|
||||||
} else if ((m->b & 3) == 1) {
|
} else if ((m->b & MOUSE_BUTTON) == MOUSE_2) {
|
||||||
for (i = 0; i < 5; i++)
|
for (i = 0; i < 5; i++)
|
||||||
window_copy_cursor_down(wp, 0);
|
window_copy_cursor_down(wp, 0);
|
||||||
}
|
}
|
||||||
@ -793,7 +784,7 @@ window_copy_mouse(
|
|||||||
* pressed, or stop the selection on their release.
|
* pressed, or stop the selection on their release.
|
||||||
*/
|
*/
|
||||||
if (s->mode & MODE_MOUSEMOTION) {
|
if (s->mode & MODE_MOUSEMOTION) {
|
||||||
if ((m->b & 3) != 3) {
|
if ((m->b & MOUSE_BUTTON) != MOUSE_UP) {
|
||||||
window_copy_update_cursor(wp, m->x, m->y);
|
window_copy_update_cursor(wp, m->x, m->y);
|
||||||
if (window_copy_update_selection(wp))
|
if (window_copy_update_selection(wp))
|
||||||
window_copy_redraw_screen(wp);
|
window_copy_redraw_screen(wp);
|
||||||
@ -808,7 +799,7 @@ window_copy_mouse(
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* Otherwise i other buttons pressed, start selection and motion. */
|
/* Otherwise i other buttons pressed, start selection and motion. */
|
||||||
if ((m->b & 3) != 3) {
|
if ((m->b & MOUSE_BUTTON) != MOUSE_UP) {
|
||||||
s->mode |= MODE_MOUSEMOTION;
|
s->mode |= MODE_MOUSEMOTION;
|
||||||
|
|
||||||
window_copy_update_cursor(wp, m->x, m->y);
|
window_copy_update_cursor(wp, m->x, m->y);
|
||||||
|
Loading…
Reference in New Issue
Block a user