From: Matthias Clasen Date: Fri, 7 Apr 2023 21:44:27 +0000 (-0400) Subject: gestureclick: Use drag threshold for updates X-Git-Tag: archive/raspbian/4.12.3+ds-1+rpi1~1^2^2^2~22^2~4^2~10^2~34 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=22cf3e9269fa0849b53a31ce26424cce9aca46f0;p=gtk4.git gestureclick: Use drag threshold for updates --- diff --git a/gtk/gtkgestureclick.c b/gtk/gtkgestureclick.c index 0b07b992ac..795e8ec02c 100644 --- a/gtk/gtkgestureclick.c +++ b/gtk/gtkgestureclick.c @@ -150,6 +150,7 @@ _gtk_gesture_click_update_timeout (GtkGestureClick *gesture) static gboolean _gtk_gesture_click_check_within_threshold (GtkGestureClick *gesture, + const char *setting, double x, double y) { @@ -165,9 +166,7 @@ _gtk_gesture_click_check_within_threshold (GtkGestureClick *gesture, widget = gtk_event_controller_get_widget (GTK_EVENT_CONTROLLER (gesture)); settings = gtk_widget_get_settings (widget); - g_object_get (settings, - "gtk-double-click-distance", &double_click_distance, - NULL); + g_object_get (settings, setting, &double_click_distance, NULL); if (ABS (priv->initial_press_x - x) < double_click_distance && ABS (priv->initial_press_y - y) < double_click_distance) @@ -221,7 +220,7 @@ gtk_gesture_click_begin (GtkGesture *gesture, gtk_gesture_get_point (gesture, current, &x, &y); if (gdk_device_get_source (priv->current_device) == GDK_SOURCE_MOUSE && - !_gtk_gesture_click_check_within_threshold (click, x, y)) + !_gtk_gesture_click_check_within_threshold (click, "gtk-double-click-distance", x, y)) _gtk_gesture_click_stop (click); /* Increment later the real counter, just if the gesture is @@ -244,17 +243,14 @@ gtk_gesture_click_update (GtkGesture *gesture, GdkEventSequence *sequence) { GtkGestureClick *click; - GtkGestureClickPrivate *priv; GdkEventSequence *current; double x, y; click = GTK_GESTURE_CLICK (gesture); - priv = gtk_gesture_click_get_instance_private (click); current = gtk_gesture_single_get_current_sequence (GTK_GESTURE_SINGLE (gesture)); gtk_gesture_get_point (gesture, current, &x, &y); - if (gdk_device_get_source (priv->current_device) == GDK_SOURCE_MOUSE && - !_gtk_gesture_click_check_within_threshold (click, x, y)) + if (!_gtk_gesture_click_check_within_threshold (click, "gtk-dnd-drag-threshold", x, y)) _gtk_gesture_click_stop (click); }