diff options
Diffstat (limited to 'clutter/clutter-stage.c')
-rw-r--r-- | clutter/clutter-stage.c | 38 |
1 files changed, 25 insertions, 13 deletions
diff --git a/clutter/clutter-stage.c b/clutter/clutter-stage.c index a7eba200e..0fcdd2423 100644 --- a/clutter/clutter-stage.c +++ b/clutter/clutter-stage.c @@ -1041,19 +1041,31 @@ _clutter_stage_process_queued_events (ClutterStage *stage) check_device = TRUE; /* Skip consecutive motion events coming from the same device */ - if (priv->throttle_motion_events && - next_event != NULL && - event->type == CLUTTER_MOTION && - (next_event->type == CLUTTER_MOTION || - next_event->type == CLUTTER_LEAVE) && - (!check_device || (device == next_device))) - { - CLUTTER_NOTE (EVENT, - "Omitting motion event at %d, %d", - (int) event->motion.x, - (int) event->motion.y); - goto next_event; - } + if (priv->throttle_motion_events && next_event != NULL) + { + if (event->type == CLUTTER_MOTION && + (next_event->type == CLUTTER_MOTION || + next_event->type == CLUTTER_LEAVE) && + (!check_device || (device == next_device))) + { + CLUTTER_NOTE (EVENT, + "Omitting motion event at %d, %d", + (int) event->motion.x, + (int) event->motion.y); + goto next_event; + } + else if (event->type == CLUTTER_TOUCH_UPDATE && + (next_event->type == CLUTTER_TOUCH_UPDATE || + next_event->type == CLUTTER_LEAVE) && + (!check_device || (device == next_device))) + { + CLUTTER_NOTE (EVENT, + "Omitting touch update event at %d, %d", + (int) event->touch.x, + (int) event->touch.y); + goto next_event; + } + } _clutter_process_event (event); |