summaryrefslogtreecommitdiff
path: root/gtk/gtkgesture.c
diff options
context:
space:
mode:
Diffstat (limited to 'gtk/gtkgesture.c')
-rw-r--r--gtk/gtkgesture.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/gtk/gtkgesture.c b/gtk/gtkgesture.c
index 1a791d3339..544ef87bd3 100644
--- a/gtk/gtkgesture.c
+++ b/gtk/gtkgesture.c
@@ -1014,6 +1014,10 @@ gtk_gesture_set_sequence_state (GtkGesture *gesture,
data->state != GTK_EVENT_SEQUENCE_NONE)
return FALSE;
+ if (state == GTK_EVENT_SEQUENCE_DENIED &&
+ data->state == GTK_EVENT_SEQUENCE_CLAIMED)
+ _gtk_gesture_cancel_sequence (gesture, sequence);
+
data->state = state;
gtk_widget_cancel_event_sequence (gtk_event_controller_get_widget (GTK_EVENT_CONTROLLER (gesture)),
gesture, sequence, state);