fix: clear popup state when it is dismissed by the compositor

This commit is contained in:
Ashley Wulber 2023-09-12 14:29:34 -04:00 committed by Ashley Wulber
parent f4cc4cecd0
commit 56d96e5282
8 changed files with 75 additions and 0 deletions

View file

@ -40,6 +40,7 @@ enum Every {
#[derive(Debug, Clone)]
enum Message {
TogglePopup,
CloseRequested(window::Id),
Tick,
Rectangle(RectangleUpdate<u32>),
}
@ -163,6 +164,12 @@ impl cosmic::Application for Time {
}
Command::none()
}
Message::CloseRequested(id) => {
if Some(id) == self.popup {
self.popup = None;
}
Command::none()
}
}
}
@ -219,4 +226,8 @@ impl cosmic::Application for Time {
self.core.applet_helper.popup_container(content).into()
}
fn on_close_requested(&self, id: window::Id) -> Option<Message> {
Some(Message::CloseRequested(id))
}
}