[gtk+/wip/baedert/drawing: 54/73] switch: Remove in_switch flag
- From: Timm Bäder <baedert src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gtk+/wip/baedert/drawing: 54/73] switch: Remove in_switch flag
- Date: Thu, 22 Jun 2017 08:09:52 +0000 (UTC)
commit af8254eff1964ae6b984691a34920cd3d055371d
Author: Timm Bäder <mail baedert org>
Date: Sat Jun 17 14:18:14 2017 +0200
switch: Remove in_switch flag
It's pretty simple and less code to just check whether the gesture
coords are inside the widget at the one place where we actually used the
flag.
gtk/gtkswitch.c | 31 ++++---------------------------
1 files changed, 4 insertions(+), 27 deletions(-)
---
diff --git a/gtk/gtkswitch.c b/gtk/gtkswitch.c
index de8b4c6..db6fd47 100644
--- a/gtk/gtkswitch.c
+++ b/gtk/gtkswitch.c
@@ -85,7 +85,6 @@ struct _GtkSwitchPrivate
guint state : 1;
guint is_active : 1;
- guint in_switch : 1;
GtkWidget *on_label;
GtkWidget *off_label;
@@ -209,12 +208,14 @@ gtk_switch_multipress_gesture_released (GtkGestureMultiPress *gesture,
gdouble y,
GtkSwitch *sw)
{
- GtkSwitchPrivate *priv = sw->priv;
GdkEventSequence *sequence;
+ GdkRectangle own_alloc;
sequence = gtk_gesture_single_get_current_sequence (GTK_GESTURE_SINGLE (gesture));
- if (priv->in_switch &&
+ gtk_widget_get_own_allocation (GTK_WIDGET (sw), &own_alloc);
+
+ if (gdk_rectangle_contains_point (&own_alloc, x, y) &&
gtk_gesture_handles_sequence (GTK_GESTURE (gesture), sequence))
gtk_switch_begin_toggle_animation (sw);
}
@@ -277,28 +278,6 @@ gtk_switch_pan_gesture_drag_end (GtkGestureDrag *gesture,
gtk_widget_queue_allocate (GTK_WIDGET (sw));
}
-static gboolean
-gtk_switch_enter (GtkWidget *widget,
- GdkEventCrossing *event)
-{
- GtkSwitchPrivate *priv = GTK_SWITCH (widget)->priv;
-
- priv->in_switch = TRUE;
-
- return FALSE;
-}
-
-static gboolean
-gtk_switch_leave (GtkWidget *widget,
- GdkEventCrossing *event)
-{
- GtkSwitchPrivate *priv = GTK_SWITCH (widget)->priv;
-
- priv->in_switch = FALSE;
-
- return FALSE;
-}
-
static void
gtk_switch_activate (GtkSwitch *sw)
{
@@ -593,8 +572,6 @@ gtk_switch_class_init (GtkSwitchClass *klass)
widget_class->measure = gtk_switch_measure;
widget_class->size_allocate = gtk_switch_size_allocate;
widget_class->snapshot = gtk_switch_snapshot;
- widget_class->enter_notify_event = gtk_switch_enter;
- widget_class->leave_notify_event = gtk_switch_leave;
klass->activate = gtk_switch_activate;
klass->state_set = state_set;
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]