aboutsummaryrefslogtreecommitdiff
path: root/src/niri.rs
diff options
context:
space:
mode:
authorIvan Molodetskikh <yalterz@gmail.com>2025-01-21 09:40:00 +0300
committerIvan Molodetskikh <yalterz@gmail.com>2025-01-21 11:31:30 +0300
commita7692d10c4e84e4fddedb7211054efca9506da2b (patch)
tree438b02de1e452b9b83b7a24679ff451f00001abf /src/niri.rs
parentc892f04c9603e469aeb5e8a965193807c54d6978 (diff)
downloadniri-a7692d10c4e84e4fddedb7211054efca9506da2b.tar.gz
niri-a7692d10c4e84e4fddedb7211054efca9506da2b.tar.bz2
niri-a7692d10c4e84e4fddedb7211054efca9506da2b.zip
Add update_render_elements() to MappedLayer
Diffstat (limited to 'src/niri.rs')
-rw-r--r--src/niri.rs14
1 files changed, 13 insertions, 1 deletions
diff --git a/src/niri.rs b/src/niri.rs
index c232ab88..728d0f75 100644
--- a/src/niri.rs
+++ b/src/niri.rs
@@ -3248,6 +3248,18 @@ impl Niri {
if let Some(transition) = &mut state.screen_transition {
transition.update_render_elements(scale, transform);
}
+
+ let layer_map = layer_map_for_output(out);
+ for surface in layer_map.layers() {
+ let Some(mapped) = self.mapped_layer_surfaces.get_mut(surface) else {
+ continue;
+ };
+ let Some(geo) = layer_map.layer_geometry(surface) else {
+ continue;
+ };
+
+ mapped.update_render_elements(geo.size.to_f64(), scale);
+ }
}
}
}
@@ -3440,7 +3452,7 @@ impl Niri {
Some((mapped, geo))
});
for (mapped, geo) in iter {
- elements.extend(mapped.render(renderer, geo, scale, target));
+ elements.extend(mapped.render(renderer, geo.loc.to_f64(), scale, target));
}
}