From: Carlos Garnacho Date: Mon, 28 Feb 2022 19:27:43 +0000 (+0100) Subject: gtkscrolledwindow: Do not try to doubly trigger deceleration X-Git-Tag: archive/raspbian/4.6.5+ds-1+rpi1~1^2~19^2~3^2~25 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=3764b27babc1cf94f27dfe2079426846d53d0256;p=gtk4.git gtkscrolledwindow: Do not try to doubly trigger deceleration This may come from different sources at around the same time, e.g. a hold gesture while on overshoot. Avoid doing that if an animation is already set. Fixes: https://gitlab.gnome.org/GNOME/gtk/-/issues/4730 --- diff --git a/gtk/gtkscrolledwindow.c b/gtk/gtkscrolledwindow.c index 49be97080c..ee8c2b0ba4 100644 --- a/gtk/gtkscrolledwindow.c +++ b/gtk/gtkscrolledwindow.c @@ -1052,7 +1052,8 @@ gtk_scrolled_window_decelerate (GtkScrolledWindow *scrolled_window, if (priv->x_velocity != 0 || priv->y_velocity != 0 || overshoot) { - gtk_scrolled_window_start_deceleration (scrolled_window); + if (priv->deceleration_id == 0) + gtk_scrolled_window_start_deceleration (scrolled_window); priv->x_velocity = priv->y_velocity = 0; } }