mirror of
https://github.com/brl/mutter.git
synced 2025-01-22 09:29:25 +00:00
92910e3e2f
Emit the ClutterTimeline::new-frame signal only if we arrive there with an active timeout source. Also, make sure to take a reference on the timeout when emitting signals. If the timeline is advancing of zero frames, bump it up to one frame. (bug 471, Rob Bradford) If the user called clutter_timeline_pause() while in the ::new-frame handler the timeout is removed and the timeline is reset, while the correct behaviour should be to simply return. (#371, Johan Bilien) If we skipped the last frames and we ended up over the frame number, emit the ::new-frame signal with the last frame before emitting the ::completed signal. Remove the call to clutter_timeline_stop() when reaching the end of the timeline: it was used just to remove the timeout source and it emitted the ::paused signal, which doesn't make any sense. Also rewind the timeline after emitting the ::completed signal, so that calling get_current_frame() in the ::completed signal handlers still work.