Merge branch 'presentation-time-vrr-flags' into 'main'

presentation-time: add flags to differentiate variable and fixed refresh rate presentation

See merge request wayland/wayland-protocols!459
This commit is contained in:
Will Campbell 2025-12-16 11:54:41 +00:00
commit c68e211845

View file

@ -25,7 +25,7 @@
DEALINGS IN THE SOFTWARE.
</copyright>
<interface name="wp_presentation" version="2">
<interface name="wp_presentation" version="3">
<description summary="timed presentation related wl_surface requests">
<!-- Introduction -->
@ -123,7 +123,7 @@
</interface>
<interface name="wp_presentation_feedback" version="2">
<interface name="wp_presentation_feedback" version="3">
<description summary="presentation time feedback event">
A presentation_feedback object returns an indication that a
wl_surface content update has become visible to the user.
@ -195,6 +195,23 @@
fullscreen surface and a surface on a hardware overlay.
</description>
</entry>
<entry name="fixed_rate" value="0x10" since="3">
<description summary="presentation is at a fixed refresh rate">
The display hardware is operating at a fixed refresh rate.
The presentation was aligned to a multiple of the previous event's
'refresh' argument.
If this is set, the refresh argument must not be 0.
</description>
</entry>
<entry name="variable_rate" value="0x20" since="3">
<description summary="presentation is at a variable refresh rate">
The display hardware is operating at a variable refresh rate driven
by the surface.
The presentation occurred as soon as possible after the interval
in the previous event's 'refresh' argument.
If this is set, the refresh argument must not be 0.
</description>
</entry>
</enum>
<event name="presented" type="destructor">
@ -231,6 +248,11 @@
For version 1, if the output does not have a constant refresh rate,
the refresh argument must be zero.
If the 'fixed_rate' flag is set, then the refresh argument is
the output's constant refresh rate. If the 'variable_rate' flag
is set, then the refresh argument is the output's fastest refresh
rate.
The 64-bit value combined from seq_hi and seq_lo is the value
of the output's vertical retrace counter when the content
update was first scanned out to the display. This value must