diff options
Diffstat (limited to 'libcaja-private/caja-dnd.c')
-rw-r--r-- | libcaja-private/caja-dnd.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/libcaja-private/caja-dnd.c b/libcaja-private/caja-dnd.c index 9cfbcbc5..f1e3bb70 100644 --- a/libcaja-private/caja-dnd.c +++ b/libcaja-private/caja-dnd.c @@ -957,11 +957,22 @@ void caja_drag_autoscroll_calculate_delta (GtkWidget *widget, float *x_scroll_delta, float *y_scroll_delta) { GtkAllocation allocation; +#if GTK_CHECK_VERSION (3, 0, 0) + GdkDeviceManager *manager; + GdkDevice *pointer; +#endif int x, y; g_assert (GTK_IS_WIDGET (widget)); +#if GTK_CHECK_VERSION (3, 0, 0) + manager = gdk_display_get_device_manager (gtk_widget_get_display (widget)); + pointer = gdk_device_manager_get_client_pointer (manager); + gdk_window_get_device_position (gtk_widget_get_window (widget), pointer, + &x, &y, NULL); +#else gdk_window_get_pointer (gtk_widget_get_window (widget), &x, &y, NULL); +#endif /* Find out if we are anywhere close to the tree view edges * to see if we need to autoscroll. |