ferroui_android/
i_android_navigation_service.rs1use ferroui_base::reactive::IDisposable;
5use std::cell::Cell;
6use std::rc::Rc;
7
8pub trait IActivityNavigationService {
9 fn back_requested(&self, handler: Rc<dyn Fn(&AndroidBackRequestedEventArgs)>) -> Rc<dyn IDisposable>;
13}
14
15#[derive(Default)]
16pub struct AndroidBackRequestedEventArgs {
17 handled: Cell<bool>,
18}
19
20impl AndroidBackRequestedEventArgs {
21 pub fn new() -> Self {
22 Self::default()
23 }
24
25 pub fn handled(&self) -> bool {
26 self.handled.get()
27 }
28
29 pub fn set_handled(&self, value: bool) {
30 self.handled.set(value);
31 }
32}