Skip to main content

present_copies

Function present_copies 

pub fn present_copies(
    copies: &[SectionCopy],
    damage: Vec<Rect>,
    above: &[Rect],
    to_device: Affine,
    size: (u32, u32),
) -> Presented
Expand description

Decide which of a frame’s section copies (damage_with_copies) a host that keeps its target makes, and what it repaints around them. damage is every other change of the frame, in device pixels; above is where the scene draws over the section after it (later sections), in section coordinates; to_device maps section coordinates into the size target.

A copy is made only when its content composites on its own (plain layers around it), everything drawn over it is bounded, its delta is a whole number of device pixels and it meets no earlier copy. What is drawn over it (in the section or above) is repainted where it is and, carried, where the copy took its pixels (crate::scroll_copy::carry), as is every other change a copy reads; a copy not made repaints where it lands.