summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEmanuele Aina <emanuele.aina@collabora.com>2012-09-06 11:12:53 +0200
committerEmmanuele Bassi <ebassi@gnome.org>2012-09-06 12:16:24 +0100
commit9caf9ffbbb6fbbc2e3a03bca14253182da5ac5bc (patch)
treee18e57fa8359b04715d04d283db7a76d1772f527
parent3b298ddfa333eb4963c24f119b6578398b821ef0 (diff)
downloadclutter-9caf9ffbbb6fbbc2e3a03bca14253182da5ac5bc.tar.gz
gesture-action: unregister point on missed release events
When we miss button release events (eg. when they happen outside of our window) we must ensure that the corresponding point is removed from the array of tracked points, otherwise GestureAction will get very confused and will cancel all subsequent gestures. https://bugzilla.gnome.org/show_bug.cgi?id=683471
-rw-r--r--clutter/clutter-gesture-action.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/clutter/clutter-gesture-action.c b/clutter/clutter-gesture-action.c
index 2f77a1470..953a946e2 100644
--- a/clutter/clutter-gesture-action.c
+++ b/clutter/clutter-gesture-action.c
@@ -226,6 +226,7 @@ stage_captured_event_cb (ClutterActor *stage,
if (!(mods & CLUTTER_BUTTON1_MASK))
{
cancel_gesture (action);
+ gesture_unregister_point (action, position);
return CLUTTER_EVENT_PROPAGATE;
}
}