diff --git a/src/main.rs b/src/main.rs index 53a3eb4..321f405 100644 --- a/src/main.rs +++ b/src/main.rs @@ -257,16 +257,17 @@ fn main() { while cursive.is_running() { cursive.step(); for event in event_manager.msg_iter() { - trace!("event received"); match event { Event::Player(state) => { - if state == PlayerEvent::FinishedTrack { - queue.next(false); - } - spotify.update_status(state); + trace!("event received: {:?}", state); + spotify.update_status(state.clone()); #[cfg(feature = "mpris")] mpris_manager.update(); + + if state == PlayerEvent::FinishedTrack { + queue.next(false); + } } } } diff --git a/src/spotify.rs b/src/spotify.rs index 1c0220a..ace9d07 100644 --- a/src/spotify.rs +++ b/src/spotify.rs @@ -52,7 +52,7 @@ enum WorkerCommand { RequestToken(oneshot::Sender), } -#[derive(Clone, PartialEq)] +#[derive(Clone, Debug, PartialEq)] pub enum PlayerEvent { Playing, Paused, @@ -183,10 +183,10 @@ impl futures::Future for Worker { info!("token updated!"); self.token_task = Box::new(futures::empty()) } - Ok(Async::NotReady) => debug!("waiting for token"), Err(e) => { error!("could not generate token: {:?}", e); - } + }, + _ => () } if !progress {