diff --git a/hammond-data/src/models/queryables.rs b/hammond-data/src/models/queryables.rs index e8ae722..4290979 100644 --- a/hammond-data/src/models/queryables.rs +++ b/hammond-data/src/models/queryables.rs @@ -314,7 +314,9 @@ impl EpisodeWidgetQuery { let db = connection(); let tempdb = db.get()?; - Ok(diesel::update(episode).set(self).execute(&*tempdb)?) + Ok(diesel::update(episode.filter(rowid.eq(self.rowid))) + .set(self) + .execute(&*tempdb)?) } } diff --git a/hammond-gtk/resources/gtk/episode_widget.ui b/hammond-gtk/resources/gtk/episode_widget.ui index 350caea..a6b5c6b 100644 --- a/hammond-gtk/resources/gtk/episode_widget.ui +++ b/hammond-gtk/resources/gtk/episode_widget.ui @@ -53,7 +53,6 @@ - True False document-save-symbolic diff --git a/hammond-gtk/src/widgets/episode.rs b/hammond-gtk/src/widgets/episode.rs index 89dbf1e..d6d8a1e 100644 --- a/hammond-gtk/src/widgets/episode.rs +++ b/hammond-gtk/src/widgets/episode.rs @@ -85,6 +85,13 @@ impl EpisodeWidget { fn init(&self, episode: &mut EpisodeWidgetQuery, pd: &Podcast) { self.title.set_xalign(0.0); self.title.set_text(episode.title()); + self.progress.set_pulse_step(0.1); + + let progress = self.progress.clone(); + timeout_add(200, move || { + progress.pulse(); + glib::Continue(true) + }); // Show or hide the play/delete/download buttons upon widget initialization. let local_uri = episode.local_uri(); @@ -232,7 +239,6 @@ pub fn episodes_listbox(pd: &Podcast) -> Result { let list = gtk::ListBox::new(); episodes.into_iter().for_each(|mut ep| { - // let w = epidose_widget(&mut ep, pd.title()); let widget = EpisodeWidget::new_initialized(&mut ep, pd); list.add(&widget.container) });