summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatthias Clasen <mclasen@redhat.com>2020-02-21 16:40:10 -0500
committerMatthias Clasen <mclasen@redhat.com>2020-02-21 16:40:10 -0500
commit8df53a48cdf8763b94d3d0cd3fb7e8c32c5238e9 (patch)
treec02a69c35bfbf0d855b43c34a20915aa84912efe
parentaf8e8d9a9cc339eb6e86aa7623f493754bf4efa8 (diff)
downloadgtk+-wip/synthetic-motion.tar.gz
scrolledwindow: Create a synthetic motion during scrollingwip/synthetic-motion
We are not doing any layout here, so this is needed to fix the listbox demo in gtk4-demo.
-rw-r--r--gtk/gtkscrolledwindow.c14
1 files changed, 14 insertions, 0 deletions
diff --git a/gtk/gtkscrolledwindow.c b/gtk/gtkscrolledwindow.c
index 30c4310ce2..4868e5bc35 100644
--- a/gtk/gtkscrolledwindow.c
+++ b/gtk/gtkscrolledwindow.c
@@ -51,6 +51,7 @@
#include "gtktypebuiltins.h"
#include "gtkviewport.h"
#include "gtkwidgetprivate.h"
+#include "gtknative.h"
#include "a11y/gtkscrolledwindowaccessible.h"
@@ -3470,9 +3471,22 @@ gtk_scrolled_window_adjustment_value_changed (GtkAdjustment *adjustment,
{
GtkScrolledWindow *scrolled_window = user_data;
GtkScrolledWindowPrivate *priv = gtk_scrolled_window_get_instance_private (scrolled_window);
+ GtkNative *native;
+ GdkSurface *surface;
maybe_emit_edge_reached (scrolled_window, adjustment);
+ native = gtk_widget_get_native (GTK_WIDGET (scrolled_window));
+ if (native)
+ {
+ surface = gtk_native_get_surface (native);
+ if (surface)
+ {
+ g_print ("adjustment value changed\n");
+ //gdk_surface_ensure_motion (surface);
+ }
+ }
+
/* Allow overshooting for kinetic scrolling operations */
if (priv->deceleration_id)
return;