Implemented Scan card menu

This commit was merged in pull request #29.
This commit is contained in:
2026-08-22 13:35:58 +02:00
parent cf6c068394
commit b44ae59c8b
14 changed files with 189 additions and 89 deletions
+16 -6
View File
@@ -20,12 +20,22 @@ impl NavigationState {
Self::default()
}
pub fn back(&mut self) -> View {
let screen = self.screens.pop().unwrap();
if self.screens.is_empty() {
log::info!("last screen");
return screen;
pub fn back(&mut self) -> &View {
match &self.screens.len() {
0 => {
log::info!("No screens to go back to");
return self.screens.last().unwrap();
}
1 => {
log::info!("Only one screen on stack, cannot go back");
return self.screens.last().unwrap();
}
_ => {
log::info!("Going back to previous screen");
self.screens.pop();
return self.screens.last().unwrap();
}
}
self.screens.pop().unwrap()
}
}