Skip to content

output-mgmt: Add mirror_head request

Closes #101.

This MR is not meant as a replacement for !116 but rather an addition, as that provides a cleaner way to fix #104 as well as more versatile options of mirroring with arbitrary overlaps.

This fixes the need for explicitly naming a source- and target-head when mirroring for some compositors as discussed in !116.

  • Using an explicit mirror_head request, clients can specify the source/target outputs.
  • By having an explicit mirroring-state, clients can render/display these configurations differently from overlapping viewports. Compositor may also more easily express translations from overlapping viewport configurations into mirroring configs.

How mirroring with different resolutions works is left to the compositor by design. E.g. cosmic-comp would letterbox and scale the source image as necessary (also taking note of the orientation/transform). Compositors might also reject mirroring configurations with different modes/orientations.

cc @emersion @ifreund @romangg

Merge request reports