|
|
|
@ -205,7 +205,10 @@ impl Overlay {
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#[state(superstate = "super_hidden")]
|
|
|
|
|
#[state(
|
|
|
|
|
superstate = "common",
|
|
|
|
|
entry_action = "on_enter_hidden"
|
|
|
|
|
)]
|
|
|
|
|
fn hidden(&mut self, event: &Event) -> Response<State> {
|
|
|
|
|
match event {
|
|
|
|
|
Event::State(underlying) => match underlying {
|
|
|
|
@ -217,7 +220,11 @@ impl Overlay {
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#[state(superstate = "super_interactable")]
|
|
|
|
|
#[state(
|
|
|
|
|
superstate = "super_visible",
|
|
|
|
|
entry_action = "on_enter_interactable",
|
|
|
|
|
exit_action = "on_exit_interactable"
|
|
|
|
|
)]
|
|
|
|
|
fn interactable(&mut self, event: &Event) -> Response<State> {
|
|
|
|
|
match event {
|
|
|
|
|
Event::State(underlying) => match underlying {
|
|
|
|
@ -235,26 +242,6 @@ impl Overlay {
|
|
|
|
|
Super
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#[superstate(
|
|
|
|
|
superstate = "super_visible",
|
|
|
|
|
entry_action = "on_enter_interactable",
|
|
|
|
|
exit_action = "on_exit_interactable"
|
|
|
|
|
)]
|
|
|
|
|
fn super_interactable(&mut self, event: &Event) -> Response<State> {
|
|
|
|
|
log::trace!("in super_interactable");
|
|
|
|
|
Super
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#[superstate(
|
|
|
|
|
superstate = "common",
|
|
|
|
|
entry_action = "on_visible",
|
|
|
|
|
entry_action = "on_enter_hidden"
|
|
|
|
|
)]
|
|
|
|
|
fn super_hidden(&mut self, event: &Event) -> Response<State> {
|
|
|
|
|
log::trace!("in super_hidden");
|
|
|
|
|
Super
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#[superstate]
|
|
|
|
|
fn common(&mut self, event: &Event) -> Response<State> {
|
|
|
|
|
log::trace!("in common");
|
|
|
|
|