Add add command for adding song to playlist (#1232)

* Add command for adding song to playlist

* edits for code style

* Return playlist dialog via `CommandResult::Modal`

---------

Co-authored-by: Henrik Friedrichsen <henrik@affekt.org>
This commit is contained in:
Flynn Duniho
2023-07-22 07:03:21 -07:00
committed by GitHub
parent 92cd4f1c8b
commit 924296ac52
3 changed files with 47 additions and 0 deletions

View File

@@ -520,6 +520,25 @@ impl<I: ListItem + Clone> ViewExt for ListView<I> {
return Ok(CommandResult::Consumed(None));
}
Command::Add => {
let item = {
let content = self.content.read().unwrap();
content.get(self.selected).cloned()
};
if let Some(track) = item {
if let Some(track) = track.track() {
let dialog = ContextMenu::add_track_dialog(
self.library.clone(),
self.queue.get_spotify(),
track,
);
return Ok(CommandResult::Modal(Box::new(dialog)));
}
}
return Ok(CommandResult::Consumed(None));
}
Command::Delete => {
let mut item = {
let content = self.content.read().unwrap();