aboutsummaryrefslogtreecommitdiff
path: root/src/render_helpers/offscreen.rs
diff options
context:
space:
mode:
authorIvan Molodetskikh <yalterz@gmail.com>2024-06-12 09:40:19 +0300
committerIvan Molodetskikh <yalterz@gmail.com>2024-06-17 09:02:22 +0300
commit9ae98e09cb66da8ec8e1cd716ca1db64cd30cbd9 (patch)
tree430d609c2b330ca7b4c7399b91f595c6ce407b38 /src/render_helpers/offscreen.rs
parent2ffa1ae705516b5b52e8bfaff36d208d76ae5e01 (diff)
downloadniri-9ae98e09cb66da8ec8e1cd716ca1db64cd30cbd9.tar.gz
niri-9ae98e09cb66da8ec8e1cd716ca1db64cd30cbd9.tar.bz2
niri-9ae98e09cb66da8ec8e1cd716ca1db64cd30cbd9.zip
Update Smithay
Diffstat (limited to 'src/render_helpers/offscreen.rs')
-rw-r--r--src/render_helpers/offscreen.rs38
1 files changed, 34 insertions, 4 deletions
diff --git a/src/render_helpers/offscreen.rs b/src/render_helpers/offscreen.rs
index a7df69c1..96b0692f 100644
--- a/src/render_helpers/offscreen.rs
+++ b/src/render_helpers/offscreen.rs
@@ -175,12 +175,27 @@ impl RenderElement<GlesRenderer> for OffscreenRenderElement {
src: Rectangle<f64, Buffer>,
dst: Rectangle<i32, Physical>,
damage: &[Rectangle<i32, Physical>],
+ opaque_regions: &[Rectangle<i32, Physical>],
) -> Result<(), GlesError> {
let gles_frame = frame.as_gles_frame();
if let Some(texture) = &self.texture {
- RenderElement::<GlesRenderer>::draw(texture, gles_frame, src, dst, damage)?;
+ RenderElement::<GlesRenderer>::draw(
+ texture,
+ gles_frame,
+ src,
+ dst,
+ damage,
+ opaque_regions,
+ )?;
} else {
- RenderElement::<GlesRenderer>::draw(&self.fallback, gles_frame, src, dst, damage)?;
+ RenderElement::<GlesRenderer>::draw(
+ &self.fallback,
+ gles_frame,
+ src,
+ dst,
+ damage,
+ opaque_regions,
+ )?;
}
Ok(())
}
@@ -201,12 +216,27 @@ impl<'render> RenderElement<TtyRenderer<'render>> for OffscreenRenderElement {
src: Rectangle<f64, Buffer>,
dst: Rectangle<i32, Physical>,
damage: &[Rectangle<i32, Physical>],
+ opaque_regions: &[Rectangle<i32, Physical>],
) -> Result<(), TtyRendererError<'render>> {
let gles_frame = frame.as_gles_frame();
if let Some(texture) = &self.texture {
- RenderElement::<GlesRenderer>::draw(texture, gles_frame, src, dst, damage)?;
+ RenderElement::<GlesRenderer>::draw(
+ texture,
+ gles_frame,
+ src,
+ dst,
+ damage,
+ opaque_regions,
+ )?;
} else {
- RenderElement::<GlesRenderer>::draw(&self.fallback, gles_frame, src, dst, damage)?;
+ RenderElement::<GlesRenderer>::draw(
+ &self.fallback,
+ gles_frame,
+ src,
+ dst,
+ damage,
+ opaque_regions,
+ )?;
}
Ok(())
}