From 592eba9eaa53ce4675ea91b894c4fe64344a6fc6 Mon Sep 17 00:00:00 2001 From: Virgil Dupras Date: Sat, 27 Apr 2013 10:08:38 -0400 Subject: [PATCH] [#222] Tweaked dupe selection after a ref-swapping action. --- core/app.py | 8 +++++++- qt/base/result_window.py | 5 +---- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/core/app.py b/core/app.py index f1eddc1e..340a14d7 100644 --- a/core/app.py +++ b/core/app.py @@ -442,7 +442,13 @@ class DupeGuru(RegistrableApplication, Broadcaster): if g not in changed_groups: self.results.make_ref(dupe) changed_groups.add(g) - self.notify('results_changed_but_keep_selection') + # It's not always obvious to users what this action does, so to make it a bit clearer, + # we change our selection to the ref of all changed groups. However, we also want to keep + # the files that were ref before and weren't changed by the action. In effect, what this + # does is that we keep our old selection, but remove all non-ref dupes from it. + self.selected_dupes = [d for d in self.selected_dupes + if self.results.get_group_of_duplicate(d).ref is d] + self.notify('results_changed') def mark_all(self): self.results.mark_all() diff --git a/qt/base/result_window.py b/qt/base/result_window.py index e7bd213d..68164416 100644 --- a/qt/base/result_window.py +++ b/qt/base/result_window.py @@ -52,7 +52,7 @@ class ResultWindow(QMainWindow): ('actionReprioritize', '', '', tr("Re-Prioritize Results..."), self.reprioritizeTriggered), ('actionRemoveSelected', 'Ctrl+Del', '', tr("Remove Selected from Results"), self.removeSelectedTriggered), ('actionIgnoreSelected', 'Ctrl+Shift+Del', '', tr("Add Selected to Ignore List"), self.addToIgnoreListTriggered), - ('actionMakeSelectedReference', 'Ctrl+Space', '', tr("Make Selected into Reference"), self.makeReferenceTriggered), + ('actionMakeSelectedReference', 'Ctrl+Space', '', tr("Make Selected into Reference"), self.app.model.make_selected_reference), ('actionOpenSelected', 'Ctrl+O', '', tr("Open Selected with Default Application"), self.openTriggered), ('actionRevealSelected', 'Ctrl+Shift+O', '', tr("Open Containing Folder of Selected"), self.revealTriggered), ('actionRenameSelected', 'F2', '', tr("Rename Selected"), self.renameTriggered), @@ -233,9 +233,6 @@ class ResultWindow(QMainWindow): def detailsTriggered(self): self.app.show_details() - def makeReferenceTriggered(self): - self.app.model.make_selected_reference() - def markAllTriggered(self): self.app.model.mark_all()