add 'clear playlist' keybinding
This commit is contained in:
@@ -37,8 +37,10 @@ have them configurable.
|
|||||||
* `F1`: Debug log
|
* `F1`: Debug log
|
||||||
* `F2`: Queue
|
* `F2`: Queue
|
||||||
* `F3`: Search
|
* `F3`: Search
|
||||||
* `F4`: Playlists, then hit `Return` to queue all songs from the playlist
|
* `F4`: Playlists
|
||||||
* Tracks can be played using `Return` and queued using `Space`
|
* `d` deletes the currently selected track
|
||||||
|
* `c` clears the entire playlist
|
||||||
|
* Tracks and playlists can be played using `Return` and queued using `Space`
|
||||||
* `Shift-p` toggles playback of a track
|
* `Shift-p` toggles playback of a track
|
||||||
* `Shift-s` stops a track
|
* `Shift-s` stops a track
|
||||||
* `q` quits ncspot
|
* `q` quits ncspot
|
||||||
|
|||||||
@@ -141,6 +141,14 @@ fn main() {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
{
|
||||||
|
let queue = queue.clone();
|
||||||
|
cursive.add_global_callback('c', move |_s| {
|
||||||
|
let mut queue = queue.lock().expect("could not lock queue");
|
||||||
|
queue.clear();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
let search = ui::search::SearchView::new(spotify.clone(), queue.clone());
|
let search = ui::search::SearchView::new(spotify.clone(), queue.clone());
|
||||||
|
|
||||||
let mut playlists =
|
let mut playlists =
|
||||||
|
|||||||
@@ -92,6 +92,14 @@ impl Queue {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
pub fn clear(&mut self) {
|
||||||
|
self.stop();
|
||||||
|
self.queue.clear();
|
||||||
|
|
||||||
|
// redraw queue if open
|
||||||
|
self.ev.send(Event::Queue(QueueEvent::Show));
|
||||||
|
}
|
||||||
|
|
||||||
pub fn play(&mut self, index: usize) {
|
pub fn play(&mut self, index: usize) {
|
||||||
let track = &self.queue[index];
|
let track = &self.queue[index];
|
||||||
self.spotify.load(&track);
|
self.spotify.load(&track);
|
||||||
|
|||||||
Reference in New Issue
Block a user