wlr-gamma-control-unstable-v1

manage gamma tables of outputs

(index)

This protocol allows a privileged client to set the gamma tables for 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.

zwlr_gamma_control_manager_v1

manager to create per-output gamma controls

Interface
Version 1

This interface is a manager that allows creating per-output gamma controls.

zwlr_gamma_control_manager_v1.get_gamma_control

get a gamma control for an output

Request
Since Version 1

Create a gamma control that can be used to adjust gamma tables for the provided output.

ArgumentTypeDescription
idnew_id<zwlr_gamma_control_v1>

outputobject<wl_output>

zwlr_gamma_control_manager_v1.destroy

destroy the manager

Destructor Request
Since Version 1

All objects created by the manager will still remain valid, until their appropriate destroy request has been called.

zwlr_gamma_control_v1

adjust gamma tables for an output

Interface
Version 1

This interface allows a client to adjust gamma tables for a particular output.

The client will receive the gamma size, and will then be able to set gamma tables. At any time the compositor can send a failed event indicating that this object is no longer valid.

There can only be at most one gamma control object per output, which has exclusive access to this particular output. When the gamma control object is destroyed, the gamma table is restored to its original value.

zwlr_gamma_control_v1.set_gamma

set the gamma table

Request
Since Version 1

Set the gamma table. The file descriptor can be memory-mapped to provide the raw gamma table, which contains successive gamma ramps for the red, green and blue channels. Each gamma ramp is an array of 16-byte unsigned integers which has the same length as the gamma size.

The file descriptor data must have the same length as three times the gamma size.

ArgumentTypeDescription
fdfd

gamma table file descriptor

zwlr_gamma_control_v1.destroy

destroy this control

Destructor Request
Since Version 1

Destroys the gamma control object. If the object is still valid, this restores the original gamma tables.

zwlr_gamma_control_v1.gamma_size

size of gamma ramps

Event
Since Version 1

Advertise the size of each gamma ramp.

This event is sent immediately when the gamma control object is created.

ArgumentTypeDescription
sizeuint

number of elements in a ramp

zwlr_gamma_control_v1.failed

object no longer valid

Event
Since Version 1

This event indicates that the gamma control is no longer valid. This can happen for a number of reasons, including: - The output doesn't support gamma tables - Setting the gamma tables failed - Another client already has exclusive gamma control for this output - The compositor has transferred gamma control to another client

Upon receiving this event, the client should destroy this object.

zwlr_gamma_control_v1.error

Enum
Since Version 1
EntryValueSinceDescription
invalid_gamma11

invalid gamma tables

Copyright