1
0
Fork 0
forked from wry/wry

tree: make surface visibility tracking more robust

This commit is contained in:
Julian Orth 2024-03-29 20:07:28 +01:00
parent be0935c8dd
commit ba98103233
26 changed files with 313 additions and 144 deletions

View file

@ -66,7 +66,7 @@ impl ExtSessionLockV1 {
if node.lock_surface.is_some() {
return Err(ExtSessionLockV1Error::OutputAlreadyLocked);
}
node.lock_surface.set(Some(new.clone()));
node.set_lock_surface(Some(new.clone()));
let pos = output.global.pos.get();
new.change_extents(pos);
self.client.state.tree_changed();
@ -85,7 +85,7 @@ impl ExtSessionLockV1 {
state.lock.locked.set(false);
state.lock.lock.take();
for output in state.outputs.lock().values() {
if let Some(surface) = output.node.lock_surface.take() {
if let Some(surface) = output.node.set_lock_surface(None) {
surface.destroy_node();
}
}