timeline: Emit last ::completed before ::stopped
The ::stopped signal should be emitted at the end of the Timeline, after the last ::completed signal emission, in order to have a proper chronological progress of signal emissions: started → new-frame → [ ... ] → completed → stopped This way, ::stopped can perform a proper teardown of the state set up during ::started, without interfering with the potential cyclical emission of ::completed.
This commit is contained in:
parent
252eafa520
commit
e01f9f330d
@ -1034,10 +1034,12 @@ clutter_timeline_do_frame (ClutterTimeline *timeline)
|
||||
* done in the above new-frame signal handler?
|
||||
*/
|
||||
set_is_playing (timeline, FALSE);
|
||||
|
||||
g_signal_emit (timeline, timeline_signals[COMPLETED], 0);
|
||||
g_signal_emit (timeline, timeline_signals[STOPPED], 0, TRUE);
|
||||
}
|
||||
|
||||
g_signal_emit (timeline, timeline_signals[COMPLETED], 0);
|
||||
else
|
||||
g_signal_emit (timeline, timeline_signals[COMPLETED], 0);
|
||||
|
||||
priv->current_repeat += 1;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user