[gtk/wip/exalm/scroll-hold] eventcontrollerscroll: Always propagate hold events




commit 6f9d0fffbe77daf83aba0fee5335b76b6438a260
Author: Alexander Mikhaylenko <alexm gnome org>
Date:   Mon Mar 28 01:05:23 2022 +0400

    eventcontrollerscroll: Always propagate hold events
    
    Otherwise a stray scroll controller may prevent others from getting hold
    events, even if it always propagates scroll events and does absolutely
    nothing.

 gtk/gtkeventcontrollerscroll.c | 16 ++++++----------
 1 file changed, 6 insertions(+), 10 deletions(-)
---
diff --git a/gtk/gtkeventcontrollerscroll.c b/gtk/gtkeventcontrollerscroll.c
index 500993bb8f..d241a144e9 100644
--- a/gtk/gtkeventcontrollerscroll.c
+++ b/gtk/gtkeventcontrollerscroll.c
@@ -241,28 +241,26 @@ gtk_event_controller_scroll_get_property (GObject    *object,
     }
 }
 
-static gboolean
+static void
 gtk_event_controller_scroll_begin (GtkEventController *controller)
 {
   GtkEventControllerScroll *scroll = GTK_EVENT_CONTROLLER_SCROLL (controller);
 
   if (scroll->active)
-    return FALSE;
+    return;
 
   g_signal_emit (controller, signals[SCROLL_BEGIN], 0);
   scroll_history_reset (scroll);
   scroll->active = TRUE;
-
-  return TRUE;
 }
 
-static gboolean
+static void
 gtk_event_controller_scroll_end (GtkEventController *controller)
 {
   GtkEventControllerScroll *scroll = GTK_EVENT_CONTROLLER_SCROLL (controller);
 
   if (!scroll->active)
-    return FALSE;
+    return;
 
   g_signal_emit (controller, signals[SCROLL_END], 0);
   scroll->active = FALSE;
@@ -274,8 +272,6 @@ gtk_event_controller_scroll_end (GtkEventController *controller)
       scroll_history_finish (scroll, &vel_x, &vel_y);
       g_signal_emit (controller, signals[DECELERATE], 0, vel_x, vel_y);
     }
-
-  return TRUE;
 }
 
 static gboolean
@@ -317,11 +313,11 @@ gtk_event_controller_scroll_handle_hold_event (GtkEventController *controller,
   switch (phase)
     {
     case GDK_TOUCHPAD_GESTURE_PHASE_BEGIN:
-      handled = gtk_event_controller_scroll_begin (controller);
+      gtk_event_controller_scroll_begin (controller);
       break;
 
     case GDK_TOUCHPAD_GESTURE_PHASE_END:
-      handled = gtk_event_controller_scroll_end (controller);
+      gtk_event_controller_scroll_end (controller);
       break;
 
     case GDK_TOUCHPAD_GESTURE_PHASE_CANCEL:


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]