fix: remove any old blur surface or corners on layer shell done event
This commit is contained in:
parent
f86d983896
commit
86b236f2e1
1 changed files with 9 additions and 0 deletions
|
|
@ -27,6 +27,15 @@ impl LayerShellHandler for SctkState {
|
||||||
None => return,
|
None => return,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
if let Some(id) = self.id_map.remove(&layer.surface.wl_surface().id()) {
|
||||||
|
if let Some(blurred) = self.blur_surfaces.remove(&id) {
|
||||||
|
blurred.destroy();
|
||||||
|
}
|
||||||
|
_ = self.corner_radii.remove(&id);
|
||||||
|
|
||||||
|
_ = self.destroyed.insert(id);
|
||||||
|
}
|
||||||
|
|
||||||
self.sctk_events.push(SctkEvent::LayerSurfaceEvent {
|
self.sctk_events.push(SctkEvent::LayerSurfaceEvent {
|
||||||
variant: LayerSurfaceEventVariant::Done,
|
variant: LayerSurfaceEventVariant::Done,
|
||||||
id: layer.surface.wl_surface().clone(),
|
id: layer.surface.wl_surface().clone(),
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue