avoid the wl_surface.frame callback mechanism for protocol-next
The frame callback mechanism is relatively unspecified and leaves a lot of room for different implementations. Different compositors send the callback event at different points in their refresh cycle which makes the timing of clients rather unpredictable on different compositors. Some compositors try (have tried?) to dynamically adjust when the event is sent to reduce latency but some clients also try to reduce latency by adjusting their rendering relative to the frame callback event which results in a bad feedback loop.
On the next version replacing the frame callback mechanism with a better frame scheduling mechanism should be considered.