pub fn start(&mut self) {
let mut last_time = Instant::now();
- self.states[0].enter(&mut self.ctrl_man);
+ self.states[0].enter(&self.ctrl_man);
loop {
if let Some(change) = self.handle_events() {
}
_ => {
if let Some(state) = self.states.last_mut() {
- return state.handle_event(event)
+ if let Some(change) = state.handle_event(event) {
+ return Some(change);
+ }
} else {
return Some(StateChange::Exit)
}