diff --git a/daemon/manager.rs b/daemon/manager.rs index 788125e..2924329 100644 --- a/daemon/manager.rs +++ b/daemon/manager.rs @@ -305,14 +305,14 @@ impl NiriTag { ChangeTag(t) } TagCmd::ToggleTag(t) => { - let visible = *self.tags.entry(t).or_insert(false); - if visible { + let new_state = !*self.tags.entry(t).or_insert(false); + if new_state { send_event(self.ev_tx.clone(), TagEvent::TagEnabled(t)).await; } else { send_event(self.ev_tx.clone(), TagEvent::TagDisabled(t)).await; } - tracing::debug!("toggling tag {} to {}", t, !visible); - self.tags.insert(t, !visible); + tracing::debug!("toggling tag {} to {}", t, new_state); + self.tags.insert(t, new_state); ChangeTag(t) } },