diff options
author | Sophie Herold <sophie@hemio.de> | 2023-01-25 22:26:07 +0100 |
---|---|---|
committer | Sophie Herold <sophie@hemio.de> | 2023-01-26 20:12:10 +0100 |
commit | e62ca17f88c9af9d67ead3f0611e0dd9df8c8e88 (patch) | |
tree | ee15a97beff22a5a7338fc4483169a3734e26cbd | |
parent | 30987168fb3f8dd26b47d5a0667abb2b9b5c73c5 (diff) | |
download | gtk+-e62ca17f88c9af9d67ead3f0611e0dd9df8c8e88.tar.gz |
scrolledWindow: Propagate event for no scrolling
-rw-r--r-- | gtk/gtkscrolledwindow.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/gtk/gtkscrolledwindow.c b/gtk/gtkscrolledwindow.c index 90f0222ee6..4e497c1178 100644 --- a/gtk/gtkscrolledwindow.c +++ b/gtk/gtkscrolledwindow.c @@ -1222,6 +1222,10 @@ captured_scroll_cb (GtkEventControllerScroll *scroll, gtk_scrolled_window_cancel_deceleration (scrolled_window); + if (!may_hscroll (scrolled_window) && + !may_vscroll (scrolled_window)) + return GDK_EVENT_PROPAGATE; + if (priv->smooth_scroll) { scrolled_window_scroll (scrolled_window, delta_x, delta_y, scroll); @@ -1412,6 +1416,10 @@ scroll_controller_scroll (GtkEventControllerScroll *scroll, GtkScrolledWindowPrivate *priv = gtk_scrolled_window_get_instance_private (scrolled_window); + if (!may_hscroll (scrolled_window) && + !may_vscroll (scrolled_window)) + return GDK_EVENT_PROPAGATE; + if (!priv->smooth_scroll) scrolled_window_scroll (scrolled_window, delta_x, delta_y, scroll); |