From 43272477837c844367d9513abae5247287a09f32 Mon Sep 17 00:00:00 2001 From: Thomas Perl Date: Sat, 1 May 2010 14:03:05 +0200 Subject: [PATCH] Allow deletion of single locked episode from menu When right-clicking on an episode and selecting "Delete", gPodder will be smart enough to guess that you want to remove the locked episodes. The behaviour for multiple episodes is the same as before. --- src/gpodder/gui.py | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/src/gpodder/gui.py b/src/gpodder/gui.py index b13ab18d..1010043d 100644 --- a/src/gpodder/gui.py +++ b/src/gpodder/gui.py @@ -2770,17 +2770,18 @@ class gPodder(BuilderWidget, dbus.service.Object): yield episode - def delete_episode_list(self, episodes, confirm=True): + def delete_episode_list(self, episodes, confirm=True, skip_locked=True): if not episodes: return False - episodes = [e for e in episodes if not e.is_locked] + if skip_locked: + episodes = [e for e in episodes if not e.is_locked] - if not episodes: - title = _('Episodes are locked') - message = _('The selected episodes are locked. Please unlock the episodes that you want to delete before trying to delete them.') - self.notification(message, title, widget=self.treeAvailable) - return False + if not episodes: + title = _('Episodes are locked') + message = _('The selected episodes are locked. Please unlock the episodes that you want to delete before trying to delete them.') + self.notification(message, title, widget=self.treeAvailable) + return False count = len(episodes) title = N_('Delete %d episode?', 'Delete %d episodes?', count) % count @@ -3614,12 +3615,11 @@ class gPodder(BuilderWidget, dbus.service.Object): self.cancel_task_list(self.download_tasks_seen) def on_btnDownloadedDelete_clicked(self, widget, *args): - if self.wNotebook.get_current_page() == 1: - # Downloads tab visibile - skip (for now) - return - episodes = self.get_selected_episodes() - self.delete_episode_list(episodes) + if len(episodes) == 1: + self.delete_episode_list(episodes, skip_locked=False) + else: + self.delete_episode_list(episodes) def on_key_press(self, widget, event): # Allow tab switching with Ctrl + PgUp/PgDown -- 2.11.4.GIT