35 lines
771 B
Rust
35 lines
771 B
Rust
use iris::prelude::*;
|
|
|
|
#[path = "lib.rs"]
|
|
mod app;
|
|
use app::*;
|
|
|
|
#[derive(AndroidUiState)]
|
|
struct Client {
|
|
ui_state: AndroidUiState,
|
|
info: WeakWidget<Text>,
|
|
}
|
|
|
|
impl AndroidAppState for Client {
|
|
type Resources = StdRsc<Self>;
|
|
|
|
fn on_insets_changed(&mut self, rsc: &mut Self::Resources, _: WindowInsets) {
|
|
let views = self
|
|
.ui_state
|
|
.renderer
|
|
.as_ref()
|
|
.map_or(0, |renderer| renderer.ui.view_count());
|
|
update_info(rsc, self.info, views);
|
|
}
|
|
}
|
|
|
|
#[iris::app_init]
|
|
fn create(mut ui_state: AndroidUiState, rsc: &mut StdRsc<Client>) -> Client {
|
|
let widgets = build(rsc, &mut ui_state);
|
|
update_info(rsc, widgets.info, 0);
|
|
Client {
|
|
ui_state,
|
|
info: widgets.info,
|
|
}
|
|
}
|