diff options
author | Carlos Garnacho <carlosg@gnome.org> | 2014-05-06 15:50:01 +0200 |
---|---|---|
committer | Carlos Garnacho <carlosg@gnome.org> | 2014-05-23 19:54:29 +0200 |
commit | 5369c7702909e6b6dd5c0790d2d68445ae9b0201 (patch) | |
tree | 110b646aea89d1760359cb01d1746f111097fa9d /gtk/gtkscrolledwindow.c | |
parent | f0940c962fe3df73cd15bd0d9de92e85158e37d5 (diff) | |
download | gtk+-5369c7702909e6b6dd5c0790d2d68445ae9b0201.tar.gz |
gesture: Simplify gesture/widget interaction public API
The propagation phase property/methods in GtkEventController are gone,
This is now set directly on the GtkWidget add/remove controller API,
which has been made private.
The only public bit now are the new functions gtk_gesture_attach() and
gtk_gesture_detach() that will use the private API underneath.
All callers have been updated.
Diffstat (limited to 'gtk/gtkscrolledwindow.c')
-rw-r--r-- | gtk/gtkscrolledwindow.c | 24 |
1 files changed, 6 insertions, 18 deletions
diff --git a/gtk/gtkscrolledwindow.c b/gtk/gtkscrolledwindow.c index 01d5f52619..65061d4ffc 100644 --- a/gtk/gtkscrolledwindow.c +++ b/gtk/gtkscrolledwindow.c @@ -745,8 +745,6 @@ gtk_scrolled_window_init (GtkScrolledWindow *scrolled_window) priv->drag_gesture = gtk_gesture_drag_new (widget); gtk_gesture_single_set_button (GTK_GESTURE_SINGLE (priv->drag_gesture), 1); - gtk_event_controller_set_propagation_phase (GTK_EVENT_CONTROLLER (priv->drag_gesture), - GTK_PHASE_CAPTURE); g_signal_connect_swapped (priv->drag_gesture, "drag-begin", G_CALLBACK (scrolled_window_drag_begin_cb), scrolled_window); @@ -760,16 +758,12 @@ gtk_scrolled_window_init (GtkScrolledWindow *scrolled_window) priv->swipe_gesture = gtk_gesture_swipe_new (widget); gtk_gesture_group (priv->swipe_gesture, priv->drag_gesture); gtk_gesture_single_set_button (GTK_GESTURE_SINGLE (priv->swipe_gesture), 1); - gtk_event_controller_set_propagation_phase (GTK_EVENT_CONTROLLER (priv->swipe_gesture), - GTK_PHASE_CAPTURE); g_signal_connect_swapped (priv->swipe_gesture, "swipe", G_CALLBACK (scrolled_window_swipe_cb), scrolled_window); priv->long_press_gesture = gtk_gesture_long_press_new (widget); gtk_gesture_group (priv->long_press_gesture, priv->drag_gesture); gtk_gesture_single_set_button (GTK_GESTURE_SINGLE (priv->long_press_gesture), 1); - gtk_event_controller_set_propagation_phase (GTK_EVENT_CONTROLLER (priv->long_press_gesture), - GTK_PHASE_CAPTURE); g_signal_connect_swapped (priv->long_press_gesture, "pressed", G_CALLBACK (scrolled_window_long_press_cb), scrolled_window); @@ -1253,21 +1247,15 @@ gtk_scrolled_window_set_kinetic_scrolling (GtkScrolledWindow *scrolled_window, if (priv->kinetic_scrolling) { - gtk_widget_add_controller (GTK_WIDGET (scrolled_window), - GTK_EVENT_CONTROLLER (priv->drag_gesture)); - gtk_widget_add_controller (GTK_WIDGET (scrolled_window), - GTK_EVENT_CONTROLLER (priv->swipe_gesture)); - gtk_widget_add_controller (GTK_WIDGET (scrolled_window), - GTK_EVENT_CONTROLLER (priv->long_press_gesture)); + gtk_gesture_attach (priv->drag_gesture, GTK_PHASE_CAPTURE); + gtk_gesture_attach (priv->swipe_gesture, GTK_PHASE_CAPTURE); + gtk_gesture_attach (priv->long_press_gesture, GTK_PHASE_CAPTURE); } else { - gtk_widget_remove_controller (GTK_WIDGET (scrolled_window), - GTK_EVENT_CONTROLLER (priv->drag_gesture)); - gtk_widget_remove_controller (GTK_WIDGET (scrolled_window), - GTK_EVENT_CONTROLLER (priv->swipe_gesture)); - gtk_widget_remove_controller (GTK_WIDGET (scrolled_window), - GTK_EVENT_CONTROLLER (priv->long_press_gesture)); + gtk_gesture_detach (priv->drag_gesture); + gtk_gesture_detach (priv->swipe_gesture); + gtk_gesture_detach (priv->long_press_gesture); gtk_scrolled_window_cancel_deceleration (scrolled_window); } |