1
0
Fork 0
forked from wry/wry

wl_surface: set output to dummy when unmapping

This commit is contained in:
Julian Orth 2025-12-20 19:52:20 +01:00
parent d461933a8c
commit fa69f89f39
4 changed files with 13 additions and 2 deletions

View file

@ -433,6 +433,11 @@ impl XdgSurface {
f(&popup.popup);
}
}
fn unset_ext(&self) {
self.ext.set(None);
self.surface.set_dummy_output();
}
}
impl XdgSurfaceRequestHandler for XdgSurface {

View file

@ -229,7 +229,7 @@ impl XdgPopupRequestHandler for XdgPopup {
fn destroy(&self, _req: Destroy, _slf: &Rc<Self>) -> Result<(), Self::Error> {
self.destroy_node();
self.xdg.ext.set(None);
self.xdg.unset_ext();
self.xdg.surface.client.remove_obj(self)?;
Ok(())
}

View file

@ -256,7 +256,7 @@ impl XdgToplevelRequestHandler for XdgToplevel {
fn destroy(&self, _req: Destroy, _slf: &Rc<Self>) -> Result<(), Self::Error> {
self.tl_destroy();
self.xdg.ext.set(None);
self.xdg.unset_ext();
{
let mut children = self.children.borrow_mut();
let parent = self.parent.get();