diff --git a/amadeus/src/app.rs b/amadeus/src/app.rs index c2fcfea5ec11a6f5171a55a9d465b89877cdfd49..2d9295484095808fc5cf1a45c3c40e2519784b63 100644 --- a/amadeus/src/app.rs +++ b/amadeus/src/app.rs @@ -409,7 +409,6 @@ impl Amadeus { ) -> Command<<Self as Application>::Message> { let cfg = self.connect_config.clone(); let store = self.kara_store.clone(); - log::error!("{req:?}"); match req { RefreshRequest::Playlists => Command::perform(get_playlists(cfg), |res| { res.map_err(|err| log::error!("{err}")) diff --git a/amadeus/src/components/sidebar.rs b/amadeus/src/components/sidebar.rs index 26c7ce98f5c2797a8978b054b5aee0d0ef11b17a..8d44702d132abc84df1d7d5cb0f854993b0e75cc 100644 --- a/amadeus/src/components/sidebar.rs +++ b/amadeus/src/components/sidebar.rs @@ -37,8 +37,13 @@ pub enum Request { #[derive(Debug, Clone)] pub enum Message { + /// The list of playlists was scrolled. Scrolled(Viewport), + + /// Need to update the list of playlists. Playlists(Vec<Arc<str>>), + + /// Delete a specific playlist. DeletePlaylist(Arc<str>), } diff --git a/amadeus/src/message.rs b/amadeus/src/message.rs index a3ddca6d7d98713da9280723a0ca5730e3064b84..d735646907e15207e55540ee030a0b10f664ac6c 100644 --- a/amadeus/src/message.rs +++ b/amadeus/src/message.rs @@ -231,9 +231,12 @@ impl From<sidebar::Request> for Message { ShowDatabase => Message::MainPanelDisplay(MainPanel(mainpanel::Show::Database)), ShowHistory => Message::MainPanelDisplay(MainPanel(mainpanel::Show::History)), ShowSettings => Message::MainPanelDisplay(Config), - ShowPlaylist(x) => Message::MainPanelDisplay(MainPanel(mainpanel::Show::Playlist(x))), RefreshPlaylists => Message::RefreshRequest(RefreshRequest::Playlists), Scrolled(x) => Message::SidebarMessage(sidebar::Message::Scrolled(x)), + ShowPlaylist(x) => Message::from_iter([ + Message::RefreshRequest(RefreshRequest::Playlist(x.clone())), + Message::MainPanelDisplay(MainPanel(mainpanel::Show::Playlist(x))), + ]), } } }