From a9bba47449fecc7eee9d10f24f3fe7b1d491aa04 Mon Sep 17 00:00:00 2001 From: Julian Orth Date: Wed, 10 Jul 2024 20:03:57 +0200 Subject: [PATCH] toplevel-drag: correctly update visibility --- src/ifs/wl_surface/xdg_surface/xdg_toplevel.rs | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/src/ifs/wl_surface/xdg_surface/xdg_toplevel.rs b/src/ifs/wl_surface/xdg_surface/xdg_toplevel.rs index 5c93bd6e..71f96da3 100644 --- a/src/ifs/wl_surface/xdg_surface/xdg_toplevel.rs +++ b/src/ifs/wl_surface/xdg_surface/xdg_toplevel.rs @@ -152,8 +152,10 @@ impl XdgToplevel { } pub fn send_current_configure(&self) { - let rect = self.xdg.absolute_desired_extents.get(); - self.send_configure_checked(rect.width(), rect.height()); + if self.drag.is_none() { + let rect = self.xdg.absolute_desired_extents.get(); + self.send_configure_checked(rect.width(), rect.height()); + } self.xdg.do_send_configure(); } @@ -404,8 +406,13 @@ impl XdgToplevel { self.xdg.set_output(&seat.get_output()); } self.toplevel_data.broadcast(self.clone()); + self.tl_set_visible(self.state.root_visible()); } self.extents_changed(); + } else { + if self.is_mapped.replace(false) { + self.tl_set_visible(false); + } } return; }