[PATCH wayland v2] protocol: try to clarify frame callback semantics
spitzak at gmail.com
Fri Feb 21 10:53:03 PST 2014
How about something like this, which is my understanding:
"The frame callback is sent when it is known that the last commit will
be visible on the screen. If a second commit is sent before the frame
callback it is quite possible the first commit will never be seen, as
the new one will replace it before the output is redrawn.
"A client that is continuously updating the surface should wait for the
frame callback before doing the next drawing and commit. A client that
draws much less often (such as only on user events like mouse move) can
ignore the frame callback and update after user events. A client that
wants more accurate timing by drawing before the frame callback and only
commit afterwards will probably want to use the presentation extension."
PS: I would attach the frame callbacks to commits rather than buffer
attach. I can certainly imagine a client knowing nothing has changed,
and thus not changing the buffers, but still wanting to know when the
next frame callback is given.
More information about the wayland-devel