mirror of
https://github.com/brl/mutter.git
synced 2025-02-17 05:44:08 +00:00
drag-action: Use the new event propagation macros
This commit is contained in:
parent
cce2e25ac7
commit
81694d0dd9
@ -317,10 +317,10 @@ on_captured_event (ClutterActor *stage,
|
|||||||
actor = clutter_actor_meta_get_actor (CLUTTER_ACTOR_META (action));
|
actor = clutter_actor_meta_get_actor (CLUTTER_ACTOR_META (action));
|
||||||
|
|
||||||
if (!priv->in_drag)
|
if (!priv->in_drag)
|
||||||
return FALSE;
|
return CLUTTER_EVENT_PROPAGATE;
|
||||||
|
|
||||||
if (clutter_event_get_device (event) != priv->device)
|
if (clutter_event_get_device (event) != priv->device)
|
||||||
return FALSE;
|
return CLUTTER_EVENT_PROPAGATE;
|
||||||
|
|
||||||
switch (clutter_event_type (event))
|
switch (clutter_event_type (event))
|
||||||
{
|
{
|
||||||
@ -347,14 +347,14 @@ on_captured_event (ClutterActor *stage,
|
|||||||
case CLUTTER_ENTER:
|
case CLUTTER_ENTER:
|
||||||
case CLUTTER_LEAVE:
|
case CLUTTER_LEAVE:
|
||||||
if (priv->in_drag)
|
if (priv->in_drag)
|
||||||
return TRUE;
|
return CLUTTER_EVENT_STOP;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
return FALSE;
|
return CLUTTER_EVENT_PROPAGATE;
|
||||||
}
|
}
|
||||||
|
|
||||||
static gboolean
|
static gboolean
|
||||||
@ -365,10 +365,10 @@ on_button_press (ClutterActor *actor,
|
|||||||
ClutterDragActionPrivate *priv = action->priv;
|
ClutterDragActionPrivate *priv = action->priv;
|
||||||
|
|
||||||
if (!clutter_actor_meta_get_enabled (CLUTTER_ACTOR_META (action)))
|
if (!clutter_actor_meta_get_enabled (CLUTTER_ACTOR_META (action)))
|
||||||
return FALSE;
|
return CLUTTER_EVENT_PROPAGATE;
|
||||||
|
|
||||||
if (clutter_event_get_button (event) != 1)
|
if (clutter_event_get_button (event) != 1)
|
||||||
return FALSE;
|
return CLUTTER_EVENT_PROPAGATE;
|
||||||
|
|
||||||
if (priv->stage == NULL)
|
if (priv->stage == NULL)
|
||||||
priv->stage = CLUTTER_STAGE (clutter_actor_get_stage (actor));
|
priv->stage = CLUTTER_STAGE (clutter_actor_get_stage (actor));
|
||||||
@ -400,7 +400,7 @@ on_button_press (ClutterActor *actor,
|
|||||||
G_CALLBACK (on_captured_event),
|
G_CALLBACK (on_captured_event),
|
||||||
action);
|
action);
|
||||||
|
|
||||||
return FALSE;
|
return CLUTTER_EVENT_PROPAGATE;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
@ -414,14 +414,17 @@ clutter_drag_action_set_actor (ClutterActorMeta *meta,
|
|||||||
ClutterActor *old_actor;
|
ClutterActor *old_actor;
|
||||||
|
|
||||||
old_actor = clutter_actor_meta_get_actor (meta);
|
old_actor = clutter_actor_meta_get_actor (meta);
|
||||||
|
if (old_actor != NULL)
|
||||||
g_signal_handler_disconnect (old_actor, priv->button_press_id);
|
g_signal_handler_disconnect (old_actor, priv->button_press_id);
|
||||||
|
|
||||||
priv->button_press_id = 0;
|
priv->button_press_id = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (priv->capture_id != 0 && priv->stage != NULL)
|
if (priv->capture_id != 0)
|
||||||
{
|
{
|
||||||
|
if (priv->stage != NULL)
|
||||||
g_signal_handler_disconnect (priv->stage, priv->capture_id);
|
g_signal_handler_disconnect (priv->stage, priv->capture_id);
|
||||||
|
|
||||||
priv->capture_id = 0;
|
priv->capture_id = 0;
|
||||||
priv->stage = NULL;
|
priv->stage = NULL;
|
||||||
}
|
}
|
||||||
@ -550,7 +553,9 @@ clutter_drag_action_dispose (GObject *gobject)
|
|||||||
ClutterActor *actor;
|
ClutterActor *actor;
|
||||||
|
|
||||||
actor = clutter_actor_meta_get_actor (CLUTTER_ACTOR_META (gobject));
|
actor = clutter_actor_meta_get_actor (CLUTTER_ACTOR_META (gobject));
|
||||||
|
if (actor != NULL)
|
||||||
g_signal_handler_disconnect (actor, priv->button_press_id);
|
g_signal_handler_disconnect (actor, priv->button_press_id);
|
||||||
|
|
||||||
priv->button_press_id = 0;
|
priv->button_press_id = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user