- 23 May, 2014 40 commits
-
-
Carlos Garnacho authored
GtkGestureLongPress and GtkGestureMultiPress are both used to replace it.
-
Carlos Garnacho authored
-
Carlos Garnacho authored
-
Carlos Garnacho authored
Instead do so on button release, or after text selection dragging starts.
-
Carlos Garnacho authored
And delegate on GtkGesture::check(), it does deal better with extra fleeting touches.
-
Carlos Garnacho authored
-
Carlos Garnacho authored
-
Carlos Garnacho authored
-
Carlos Garnacho authored
-
Carlos Garnacho authored
-
Carlos Garnacho authored
-
Carlos Garnacho authored
-
Carlos Garnacho authored
-
Carlos Garnacho authored
-
Carlos Garnacho authored
-
Carlos Garnacho authored
Listen for notify::sequence-state-changed on the controller, so the only way to manipulate a sequence state are gtk_gesture_set_sequence_state() and gtk_gesture_set_state(). Also, make use of gesture groups, so the sequence state is set at once on all gestures pertaining to a single group. Within a widget, if a sequence is claimed on one group, it is made to be denied on every other group.
-
Carlos Garnacho authored
This API eliminates the need for overriding GtkWidget::sequence-state-changed virtually everywhere. Grouped gestures share common states for a same GdkEventSequence, so the state of sequences stay in sync across those.
-
Carlos Garnacho authored
This function sets the state on all sequences where it actually can, just a helper function to avoid iterating over sequences yourself.
-
Carlos Garnacho authored
-
Carlos Garnacho authored
-
Carlos Garnacho authored
-
Carlos Garnacho authored
-
Carlos Garnacho authored
-
Carlos Garnacho authored
This is so we don't have to specify the capture phase for every controller. The default "bubble" value will be sane on most situations.
-
Carlos Garnacho authored
-
Carlos Garnacho authored
-
Carlos Garnacho authored
-
Carlos Garnacho authored
-
Carlos Garnacho authored
-
Carlos Garnacho authored
This reverts commit 6511f411955adba4f960b8b07d39b93785afe33e.
-
Carlos Garnacho authored
GtkSettings::gtk-long-press-time is used to this effect.
-
Carlos Garnacho authored
This setting determines the duration of a button/touch press to be considered a long press.
-
Carlos Garnacho authored
A multipress gesture is used to control all this, replacing single/double click custom code, and triggering window dragging when the multipress is stopped, yet active (ie. the sequence remains pressed).
-
Carlos Garnacho authored
Replace custom double click detection with multipress gesture
-
Carlos Garnacho authored
This gesture is used by gtk_drag_source_set() to determine whether dragging moved past the threshold. The gesture events are handled via the usual ::event callbacks, so we don't mess up with callers expecting that to happen in a signal handler. If the sequence gets claimed somewhere else in the event widget stack, the DnD gesture will be cancelled.
-
Carlos Garnacho authored
This allows children to receive an emulated press, and handle it together with the new touch that made the scrolledwindow sequence denied.
-
Carlos Garnacho authored
With gtk_gesture_get_point() returning events in gtk_event_controller_get_widget() coordinates, we no longer need to compensate for the overshoot here.
-
Carlos Garnacho authored
This helper function ensures the state is propagated for all the active sequences in the given gesture.
-
Carlos Garnacho authored
Ensure that state being set on pointer emulating touches actually gets propagated properly on widgets with gestures that only handle pointer events.
-
Carlos Garnacho authored
-