summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCarlos Garnacho <carlosg@gnome.org>2012-01-12 02:52:23 +0100
committerCarlos Garnacho <carlosg@gnome.org>2012-02-18 17:48:53 +0100
commitca84ac7a6aa11ee70f4142dbb9ca40fe4e371caf (patch)
tree365c0a23fdef92f0ee38c055dd5c8decb9a10b45
parent8d421b2af2d112930e57c66e6bb036bbb18a3596 (diff)
downloadgtk+-ca84ac7a6aa11ee70f4142dbb9ca40fe4e371caf.tar.gz
tests: only handle gestures on testgestures after the last stroke is lifted
-rw-r--r--tests/testgestures.c13
1 files changed, 10 insertions, 3 deletions
diff --git a/tests/testgestures.c b/tests/testgestures.c
index 9ff6dcbe5a..5da7149ee8 100644
--- a/tests/testgestures.c
+++ b/tests/testgestures.c
@@ -172,6 +172,10 @@ append_event_coordinates (GdkEvent *event)
coords = g_hash_table_lookup (strokes,
GUINT_TO_POINTER (touch_id));
+
+ if (!coords)
+ return FALSE;
+
point.x = x;
point.y = y;
g_array_append_val (coords, point);
@@ -220,10 +224,13 @@ button_release_cb (GtkWidget *widget,
append_event_coordinates (event);
gtk_gestures_interpreter_feed_event (interpreter, event);
- if (gtk_gestures_interpreter_finish (interpreter, &gesture_id))
- shown_gesture = gesture_id;
+ if (gtk_gestures_interpreter_get_n_active_strokes (interpreter) == 0)
+ {
+ if (gtk_gestures_interpreter_finish (interpreter, &gesture_id))
+ shown_gesture = gesture_id;
- gtk_widget_queue_draw (widget);
+ gtk_widget_queue_draw (widget);
+ }
return FALSE;
}