scene: Fix SurfaceItemWayland::freeze()
When a wl_surface is unmapped, we need to stop updating the buffer in SurfacePixmapWayland. However, SurfaceItemWayland::freeze() doesn't unset m_surface, so the SurfacePixmapWayland keeps updating the buffer even after the surface is unmapped. This results in some closed windows losing their contents when playing a window closing animation.
This commit is contained in:
parent
883fde4298
commit
94b2c5e50e
1 changed files with 2 additions and 0 deletions
|
@ -196,6 +196,8 @@ void SurfaceItemWayland::freeze()
|
||||||
for (auto &[subsurface, subsurfaceItem] : m_subsurfaces) {
|
for (auto &[subsurface, subsurfaceItem] : m_subsurfaces) {
|
||||||
subsurfaceItem->freeze();
|
subsurfaceItem->freeze();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
m_surface = nullptr;
|
||||||
}
|
}
|
||||||
|
|
||||||
void SurfaceItemWayland::handleColorDescriptionChanged()
|
void SurfaceItemWayland::handleColorDescriptionChanged()
|
||||||
|
|
Loading…
Reference in a new issue