Make sure touch end events aren't sent too many times
* src/xterm.c (handle_one_xevent): Don't send touch end events twice if two valuators have their masks set without a change in value.
This commit is contained in:
parent
2ab73286b7
commit
9fc20ad35c
1 changed files with 7 additions and 1 deletions
|
|
@ -10156,6 +10156,7 @@ handle_one_xevent (struct x_display_info *dpyinfo,
|
|||
case XI_Motion:
|
||||
{
|
||||
struct xi_device_t *device;
|
||||
bool touch_end_event_seen = false;
|
||||
|
||||
states = &xev->valuators;
|
||||
values = states->values;
|
||||
|
|
@ -10294,7 +10295,12 @@ handle_one_xevent (struct x_display_info *dpyinfo,
|
|||
inev.ie.arg = Qnil;
|
||||
}
|
||||
|
||||
kbd_buffer_store_event_hold (&inev.ie, hold_quit);
|
||||
if (inev.ie.kind != TOUCH_END_EVENT
|
||||
|| !touch_end_event_seen)
|
||||
{
|
||||
kbd_buffer_store_event_hold (&inev.ie, hold_quit);
|
||||
touch_end_event_seen = inev.ie.kind == TOUCH_END_EVENT;
|
||||
}
|
||||
|
||||
val->emacs_value = 0;
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue