diff --git a/gtk/gtkbutton.c b/gtk/gtkbutton.c index 059853106a535ea6d0e8f726f96757b4106ac021..da3186f366a5612fec07d0f41edca92cd1e610c8 100644 --- a/gtk/gtkbutton.c +++ b/gtk/gtkbutton.c @@ -405,7 +405,6 @@ gtk_button_init (GtkButton *button) priv->gesture = gtk_gesture_click_new (); gtk_gesture_single_set_touch_only (GTK_GESTURE_SINGLE (priv->gesture), FALSE); - gtk_gesture_single_set_exclusive (GTK_GESTURE_SINGLE (priv->gesture), TRUE); gtk_gesture_single_set_button (GTK_GESTURE_SINGLE (priv->gesture), GDK_BUTTON_PRIMARY); g_signal_connect (priv->gesture, "pressed", G_CALLBACK (click_pressed_cb), button); g_signal_connect (priv->gesture, "released", G_CALLBACK (click_released_cb), button); diff --git a/gtk/gtkgestureclick.c b/gtk/gtkgestureclick.c index 98e8b7dd08faf260850ea8130c151a7a8e81801c..1af276bd1592654327c764eb175cf0e5333d0bd4 100644 --- a/gtk/gtkgestureclick.c +++ b/gtk/gtkgestureclick.c @@ -272,7 +272,7 @@ gtk_gesture_click_end (GtkGesture *gesture, interpreted = gtk_gesture_get_point (gesture, current, &x, &y); state = gtk_gesture_get_sequence_state (gesture, current); - if (state != GTK_EVENT_SEQUENCE_DENIED && interpreted) + if (current == sequence && state != GTK_EVENT_SEQUENCE_DENIED && interpreted) g_signal_emit (gesture, signals[RELEASED], 0, priv->n_release, x, y); priv->n_release = 0;