Merge branch 'wip/carlosg/stop-spinbutton-stop' into 'master'

Let spinbuttons stop

Closes #3016

See merge request GNOME/gtk!2380
This commit is contained in:
Matthias Clasen
2020-08-05 22:42:41 +00:00
3 changed files with 7 additions and 2 deletions

View File

@@ -327,8 +327,6 @@ click_pressed_cb (GtkGestureClick *gesture,
if (!priv->activate_timeout)
priv->button_down = TRUE;
gtk_gesture_set_state (GTK_GESTURE (gesture), GTK_EVENT_SEQUENCE_CLAIMED);
}
static gboolean
@@ -364,6 +362,7 @@ click_released_cb (GtkGestureClick *gesture,
GtkButtonPrivate *priv = gtk_button_get_instance_private (button);
GdkEventSequence *sequence;
gtk_gesture_set_state (GTK_GESTURE (gesture), GTK_EVENT_SEQUENCE_CLAIMED);
gtk_button_do_release (button,
gtk_widget_is_sensitive (GTK_WIDGET (button)) &&
(priv->in_button ||

View File

@@ -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);

View File

@@ -851,6 +851,8 @@ button_pressed_cb (GtkGestureClick *gesture,
start_spinning (spin_button, pressed_button, gtk_adjustment_get_step_increment (spin_button->adjustment));
else if (button == GDK_BUTTON_MIDDLE)
start_spinning (spin_button, pressed_button, gtk_adjustment_get_page_increment (spin_button->adjustment));
gtk_gesture_set_state (GTK_GESTURE (gesture), GTK_EVENT_SEQUENCE_CLAIMED);
}
else
{