diff --git a/unstable/vrr/README b/unstable/vrr/README new file mode 100644 index 0000000..b71f00d --- /dev/null +++ b/unstable/vrr/README @@ -0,0 +1,4 @@ +Variable refresh rate protocol + +Maintainers: +Alexandros Frantzis diff --git a/unstable/vrr/vrr-unstable-v1.xml b/unstable/vrr/vrr-unstable-v1.xml new file mode 100644 index 0000000..3fd4141 --- /dev/null +++ b/unstable/vrr/vrr-unstable-v1.xml @@ -0,0 +1,103 @@ + + + + + Copyright 2020 Collabora, Ltd + + Permission is hereby granted, free of charge, to any person obtaining a + copy of this software and associated documentation files (the "Software"), + to deal in the Software without restriction, including without limitation + the rights to use, copy, modify, merge, publish, distribute, sublicense, + and/or sell copies of the Software, and to permit persons to whom the + Software is furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice (including the next + paragraph) shall be included in all copies or substantial portions of the + Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL + THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING + FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER + DEALINGS IN THE SOFTWARE. + + + + + This global is a factory interface, allowing clients to request + variable refresh rate (VRR) support on a per-surface basis. + + Variable refresh rate mechanisms allow outputs to vary their frame + timings in order to optimally accommodate frame submissions that + occur at irregular rates, or rates that don't match the configured + rate of the these outputs. + + Warning! The protocol described in this file is experimental and + backward incompatible changes may be made. Backward compatible changes + may be added together with the corresponding interface version bump. + Backward incompatible changes are done by bumping the version number in + the protocol and interface names and resetting the interface version. + Once the protocol is to be declared stable, the 'z' prefix and the + version number in the protocol and interface names are removed and the + interface version number is reset. + + + + + Destroy this VRR factory object. Other objects, including + zwp_surface_vrr_v1 objects created by this factory, shall not + be affected by this request. + + + + + + + + + + Instantiate an interface extension for the given wl_surface to + provide VRR support. + + If the given wl_surface already has a VRR object associated, the + vrr_exists protocol error is raised. + + + + + + + + + + The existence of this object is a hint to the compositor to employ + a variable refresh rate mechanism to optimize frame presentations + for the associated surface, when possible. This is typically useful + when frame submissions on the associated surface may be irregular, + or regular at a rate different from the configured refresh rate of + the output they are presented on. + + The compositor is free to dynamically respect or ignore this hint + during the lifetime of this object based on various conditions, + including display capabilities and surface window state. + + The existence of this object additionally implies that the client + is able to handle irregular frame timings that may result from + the employment of a variable refresh rate mechanism. + + + + + Destroy this surface VRR object and remove all hints and + implications that are described in the interface description. + + + + +