Draft: protocol: add wl_surface.scale_factor

Joseph Burt requested to merge caseorum/wayland:surface-scale-factor into main

This adds the ability for clients and compositors to communicate non-integer scale factors, and is backwards-compatible with output scale.

Parents and sub-surfaces must always share the same scale factor. Since sub-surfaces are positioned in the parent's surface space, and root surfaces are positioned in the compositor space, this aligns sub-surfaces with each other and, if properly scaled, with hardware pixels.

This is technically separate, but designed as a companion MR to !220 (merged) and !226 (closed).

Signed-off-by: Joseph Burt caseorum@gmail.com

Closes #284

Edited by Joseph Burt

Merge request reports