Skip to content

Draft: output: introduce wlr_output_group

EBADBEEF requested to merge EBADBEEF/wlroots:wlr_output_group into master

An output group is an output implementation that contains one or more separate outputs as children. The children are grouped together into one big output (for a tiled display). The output group makes one shared framebuffer covering the span of all the tiles. The framebuffer is then cropped for each tile. The group iss synchronized so no tearing. A group waits for all children to present before re-emitting the present event so the slowest refresh rate "wins".

Inspired and copied from !3067 and !3344

I have been testing this for about a year on my tiled display (zisworks x39) including hotplug and cleanup. It automatically creates a group for displays that have the TILE drm property (which comes from a DisplayID tiled display block in the EDID).

Edited by EBADBEEF

Merge request reports