Add shuffle command and command handling

This commit is contained in:
Jack Strickland 2021-03-09 15:37:11 -06:00
parent 56f1fb6dae
commit eb4dacbc59

View file

@ -75,6 +75,7 @@ pub enum SpircCommand {
VolumeUp, VolumeUp,
VolumeDown, VolumeDown,
Shutdown, Shutdown,
Shuffle,
} }
struct SpircTaskConfig { struct SpircTaskConfig {
@ -344,6 +345,9 @@ impl Spirc {
pub fn shutdown(&self) { pub fn shutdown(&self) {
let _ = self.commands.unbounded_send(SpircCommand::Shutdown); let _ = self.commands.unbounded_send(SpircCommand::Shutdown);
} }
pub fn shuffle(&self) {
let _ = self.commands.unbounded_send(SpircCommand::Shuffle);
}
} }
impl Future for SpircTask { impl Future for SpircTask {
@ -547,6 +551,10 @@ impl SpircTask {
self.shutdown = true; self.shutdown = true;
self.commands.close(); self.commands.close();
} }
SpircCommand::Shuffle => {
CommandSender::new(self, MessageType::kMessageTypeShuffle).send();
self.commands.close();
}
} }
} }