Implement clear queue in tui
This commit is contained in:
parent
6ac13a710c
commit
02f47d682b
|
|
@ -1,6 +1,6 @@
|
|||
#!/bin/bash
|
||||
|
||||
echo "$(echo $GITHUB_REF| cut -d'/' -f2)"
|
||||
if [ "$(echo $GITHUB_REF| cut -d'/' -f2)" != "tags" ]; then
|
||||
echo "Not a tag"
|
||||
exit 1;
|
||||
fi
|
||||
|
|
|
|||
|
|
@ -65,6 +65,7 @@ pub enum MessageFromUi {
|
|||
InsertTracks(Vec<String>, usize),
|
||||
RemoveTracks(Vec<usize>),
|
||||
ReplaceQueue(Vec<String>),
|
||||
ClearQueue(bool),
|
||||
NextTrack,
|
||||
PrevTrack,
|
||||
RestartTrack,
|
||||
|
|
|
|||
|
|
@ -123,6 +123,9 @@ async fn poll(
|
|||
MessageFromUi::ToggleRepeat => {
|
||||
rpc_client.toggle_repeat().await?
|
||||
}
|
||||
MessageFromUi::ClearQueue(exclude_current) => {
|
||||
rpc_client.clear_queue(exclude_current).await?
|
||||
}
|
||||
}
|
||||
}
|
||||
Some(resp) = rpc_client.update_stream.next() => {
|
||||
|
|
@ -306,6 +309,12 @@ fn run_ui(tx: Sender<MessageFromUi>, rx: Receiver<MessageToUi>) {
|
|||
(UiFocus::Queue, KeyModifiers::NONE, KeyCode::Char('d')) => {
|
||||
app.queue.remove_track();
|
||||
}
|
||||
(UiFocus::Queue, KeyModifiers::NONE, KeyCode::Char('c')) => {
|
||||
tx.send(MessageFromUi::ClearQueue(true));
|
||||
}
|
||||
(UiFocus::Queue, KeyModifiers::SHIFT, KeyCode::Char('C')) => {
|
||||
tx.send(MessageFromUi::ClearQueue(false));
|
||||
}
|
||||
_ => {}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
use crabidy_core::proto::crabidy::{
|
||||
crabidy_service_client::CrabidyServiceClient, AppendRequest, ChangeVolumeRequest,
|
||||
GetLibraryNodeRequest, GetUpdateStreamRequest, GetUpdateStreamResponse, InitRequest,
|
||||
InitResponse, InsertRequest, LibraryNode, NextRequest, PrevRequest, QueueRequest,
|
||||
ClearQueueRequest, GetLibraryNodeRequest, GetUpdateStreamRequest, GetUpdateStreamResponse,
|
||||
InitRequest, InitResponse, InsertRequest, LibraryNode, NextRequest, PrevRequest, QueueRequest,
|
||||
RemoveRequest, ReplaceRequest, RestartTrackRequest, SetCurrentRequest, ToggleMuteRequest,
|
||||
TogglePlayRequest, ToggleRepeatRequest, ToggleShuffleRequest,
|
||||
};
|
||||
|
|
@ -128,6 +128,12 @@ impl RpcClient {
|
|||
Ok(())
|
||||
}
|
||||
|
||||
pub async fn clear_queue(&mut self, exclude_current: bool) -> Result<(), Box<dyn Error>> {
|
||||
let clear_queue_request = Request::new(ClearQueueRequest { exclude_current });
|
||||
self.client.clear_queue(clear_queue_request).await?;
|
||||
Ok(())
|
||||
}
|
||||
|
||||
pub async fn replace_queue(&mut self, uuids: Vec<String>) -> Result<(), Box<dyn Error>> {
|
||||
let replace_request = Request::new(ReplaceRequest { uuids });
|
||||
self.client.replace(replace_request).await?;
|
||||
|
|
|
|||
Loading…
Reference in New Issue