wlroots/include/types
David Turner c87ab6465d Support direct scanout with src crop and dst boxes
Enable scene-tree direct scanout of a single buffer with various options
for scaling and source crop. This is intended to support direct scanout
for fullscreen video with/without scaling, letterboxing/pillarboxing
(e.g. 4:3 content on a 16:9 display), and source crop (e.g. when
1920x1088 planes are used for 1920x1080 video).

This works by explicitly specifying the source crop and destination box
for the primary buffer in the output state.  DRM atomic and libliftoff
backends will turn this into a crop and scale of the plane (assuming the
hardware supports that).  For the Wayland/X11/DRM-legacy backends I just
reject this so scanout will be disabled.

The previous behaviour is preserved if buffer_src_box and buffer_dst_box
are unset: the buffer is displayed at native size at the top-left of the
output with no crop.

The change to `struct wlr_output_state` makes this a binary breaking
change (but this works transparently for scene-tree compositors like
labwc after a recompile).
2024-10-22 18:28:09 +01:00
..
wlr_buffer.h buffer: make wlr_client_buffer functions private 2023-08-21 15:45:10 +00:00
wlr_data_device.h Add some missing includes/declarations 2023-06-05 21:06:19 +00:00
wlr_keyboard.h types/wlr_keyboard: uniformize events name 2022-03-17 18:16:14 +00:00
wlr_matrix.h matrix: remove wlr_matrix_projection() 2022-06-08 19:27:36 +00:00
wlr_output.h Support direct scanout with src crop and dst boxes 2024-10-22 18:28:09 +01:00
wlr_region.h Add missing type declarations in headers 2023-11-14 18:44:53 +00:00
wlr_scene.h wlr_scene_surface: Introduce scene_surface_set_clip 2023-11-14 17:27:08 +00:00
wlr_seat.h seat: Provide dummy resources for inert seats 2023-04-18 08:29:30 +00:00
wlr_subcompositor.h subcompositor: consider mapping on parent map 2023-06-03 14:36:41 +00:00
wlr_tablet_v2.h Switch to stable tablet-v2 protocol 2024-06-27 18:04:00 +00:00
wlr_xdg_shell.h xdg-shell: drop automatic surface configuration 2024-02-06 13:48:00 +00:00