freya_components/activable_route_context.rs
1use freya_core::prelude::{
2 State,
3 use_try_consume,
4};
5
6#[derive(Clone)]
7pub struct ActivableRouteContext(pub State<bool>);
8
9impl ActivableRouteContext {
10 pub fn is_active(&self) -> bool {
11 *self.0.read()
12 }
13}
14
15pub fn use_activable_route() -> bool {
16 let ctx = use_try_consume::<ActivableRouteContext>();
17
18 if let Some(ctx) = ctx {
19 ctx.is_active()
20 } else {
21 false
22 }
23}