Interaction of relative-pointer and wl_pointer.frame
The relative-pointer spec is clear that zwp_relative_pointer_v1 and wl_pointer are completely independent:
Relative motions are not coupled to wl_pointer.motion events, and can be sent in combination with such events, but also independently. There may also be scenarios where wl_pointer.motion is sent, but there is no relative motion. The order of an absolute and relative motion event originating from the same physical motion is not guaranteed.
In particular, I interpret this to mean that relative_motion events are not necessarily terminated by wl_pointer.frame events even if the version of wl_pointer is >= 5. However, there is at least one client, xwayland, that will not dispatch relative_motion events until it receives a wl_pointer.frame.
Is my interpretation of the spec correct and, if so, is this a bug in xwayland or is xwayland correct in its behavior for its special use case?