diff --git a/src/wayland/handlers/screencopy/render.rs b/src/wayland/handlers/screencopy/render.rs index 720fb459..a22b03ae 100644 --- a/src/wayland/handlers/screencopy/render.rs +++ b/src/wayland/handlers/screencopy/render.rs @@ -541,13 +541,7 @@ pub fn render_window_to_buffer( CosmicElement: RenderElement, CosmicMappedRenderElement: RenderElement, { - let mut elements = AsRenderElements::::render_elements::>( - window, - renderer, - (-geometry.loc.x, -geometry.loc.y).into(), - Scale::from(1.0), - 1.0, - ); + let mut elements = Vec::new(); elements.extend( additional_damage @@ -617,6 +611,16 @@ pub fn render_window_to_buffer( } } + elements.extend(AsRenderElements::::render_elements::< + WindowCaptureElement, + >( + window, + renderer, + (-geometry.loc.x, -geometry.loc.y).into(), + Scale::from(1.0), + 1.0, + )); + if let Ok(dmabuf) = get_dmabuf(buffer) { let mut dmabuf_clone = dmabuf.clone(); let mut fb = renderer