Implement (un)saving tracks, albums; (un)following artists

This commit is contained in:
KoffeinFlummi
2019-04-18 15:43:51 +02:00
parent 4c974a83f7
commit 1e58ca9345
9 changed files with 241 additions and 17 deletions

View File

@@ -273,7 +273,7 @@ impl<I: ListItem> View for ListView<I> {
}
}
impl<I: ListItem> ViewExt for ListView<I> {
impl<I: ListItem + Clone> ViewExt for ListView<I> {
fn on_command(
&mut self,
_s: &mut Cursive,
@@ -299,6 +299,17 @@ impl<I: ListItem> ViewExt for ListView<I> {
return Ok(CommandResult::Consumed(None));
}
if cmd == "save" {
let mut item = {
let content = self.content.read().unwrap();
content.get(self.selected).cloned()
};
if let Some(item) = item.as_mut() {
item.toggle_saved(self.library.clone());
}
}
if cmd == "move" {
if let Some(dir) = args.get(0) {
let amount: usize = args