stage: Maintain the motion event delivery invariants

It is possible, by calling clutter_set_motion_events_enabled() prior to
the creation of any stage, to control the per-actor motion event
delivery flag on each newly created stage. Since we deprecated the
global accessor functions in favour of the per-Stage ones, we need to
remove the call to clutter_get_motion_events_enabled() inside the
ClutterStage instance initialization, and replace it with an internal
function.

This code will go away when we can finally break API and remove the
deprecated functions.
This commit is contained in:
Emmanuele Bassi
2011-06-20 13:53:09 +01:00
parent b6eb5728e1
commit d5ea422c8f
3 changed files with 28 additions and 14 deletions

View File

@@ -303,9 +303,7 @@ clutter_set_motion_events_enabled (gboolean enable)
gboolean
clutter_get_motion_events_enabled (void)
{
ClutterMainContext *context = _clutter_context_get_default ();
return context->motion_events_per_actor;
return _clutter_context_get_motion_events_enabled ();
}
ClutterActor *
@@ -3099,3 +3097,11 @@ _clutter_context_pop_shader_stack (ClutterActor *actor)
return _clutter_context_peek_shader_stack ();
}
gboolean
_clutter_context_get_motion_events_enabled (void)
{
ClutterMainContext *context = _clutter_context_get_default ();
return context->motion_events_per_actor;
}