From c43eb2da078d4b0fb43c905aed363bd7ffdef51b Mon Sep 17 00:00:00 2001 From: Igor Deordiev Date: Mon, 11 May 2026 16:31:18 +0700 Subject: [PATCH] output-management: add color format support Add a color_format enum and corresponding event/request to wlr-output-management-unstable-v1 (version 5). The enum mirrors the DRM connector color format property, allowing clients to read the current color encoding (RGB, YCbCr 4:4:4, 4:2:2, 4:2:0) and request a change. Compositors should ignore set_color_format if the connector lacks the property. --- .../wlr-output-management-unstable-v1.xml | 46 +++++++++++++++++-- 1 file changed, 42 insertions(+), 4 deletions(-) diff --git a/unstable/wlr-output-management-unstable-v1.xml b/unstable/wlr-output-management-unstable-v1.xml index 541284a..95420f6 100644 --- a/unstable/wlr-output-management-unstable-v1.xml +++ b/unstable/wlr-output-management-unstable-v1.xml @@ -39,7 +39,7 @@ interface version number is reset. - + This interface is a manager that allows reading and writing the current output device configuration. @@ -125,7 +125,7 @@ - + A head is an output device. The difference between a wl_output object and a head is that heads are advertised even if they are turned off. A head @@ -364,6 +364,28 @@ + + + + + + These values correspond to the DRM connector color format property. + The compositor may not support all formats on all connectors. + + + + + + + + + + + This event describes the color format currently used by the head. + The color format determines the color encoding sent to the display. + + + @@ -421,7 +443,7 @@ - + This object is used by the client to describe a full output configuration. @@ -539,7 +561,7 @@ - + This object is used by the client to update a single head's configuration. @@ -554,6 +576,8 @@ + @@ -607,5 +631,19 @@ + + + + + + This request sets the color format for the output. The color format + determines the color encoding sent to the display (RGB, YCbCr 4:4:4, + YCbCr 4:2:2, YCbCr 4:2:0). + + If the connector does not support the color format property, the + compositor should ignore this request. + + +