diff options
-rw-r--r-- | src/clients/mod.rs | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/clients/mod.rs b/src/clients/mod.rs index 6152be5..e3da079 100644 --- a/src/clients/mod.rs +++ b/src/clients/mod.rs @@ -170,6 +170,7 @@ impl ClientState { tag = c.tag; } } + let is_visible = self.focused_mon().focused_tag.matches(tag); let new_idx = self.clients.len(); self.clients.push(Client::new(window, tag)); @@ -220,8 +221,9 @@ impl ClientState { data: &[window], }); - self.rearrange(conn); - if self.focused_mon().focused_tag.matches(tag) { + if is_visible { + c.ensure_mapped(conn); + self.rearrange(conn); self.refocus(conn, self.clients.len() - 1); } } |