Obtains the frame clock for a widget.
The frame clock is a global “ticker” that can be used to drive animations and repaints. The most common reason to get the frame clock is to call [[email protected]_frame_time], in order to get a time to use for animating. For example you might record the start of the animation with an initial value from [[email protected]_frame_time], and then update the animation by calling [ [email protected]_frame_time] again during each repaint.
[[email protected]_phase] will result in a new frame on the clock, but won’t necessarily repaint any widgets. To repaint a widget, you have to use [[email protected]_draw] which invalidates the widget (thus scheduling it to receive a draw on the next frame). queue_draw will also end up requesting a frame on the appropriate frame clock.
A widget’s frame clock will not change while the widget is mapped. Reparenting a widget (which implies a temporary unmap) can change the widget’s frame clock.
Unrealized widgets do not have a frame clock.
this |
a `GtkWidget` |
a `GdkFrameClock` |