From eca2952c88d5eef61bb5073795f573d7c9d61564 Mon Sep 17 00:00:00 2001 From: Charles Haley Date: Wed, 26 Jul 2017 22:46:19 +0200 Subject: [PATCH] Display a human-friendly error message when quickview cannot change the selection to a book not currently shown in the library view. --- src/calibre/gui2/dialogs/quickview.py | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) diff --git a/src/calibre/gui2/dialogs/quickview.py b/src/calibre/gui2/dialogs/quickview.py index 31182c7f7c..40066f7004 100644 --- a/src/calibre/gui2/dialogs/quickview.py +++ b/src/calibre/gui2/dialogs/quickview.py @@ -546,10 +546,20 @@ class Quickview(QDialog, Ui_Quickview): def book_doubleclicked(self, row, column): if self.no_valid_items: return - if gprefs['qv_dclick_changes_column']: - self.select_book(row, column) - else: - self.select_book(row, self.key_to_table_widget_column(self.current_key)) + try: + if gprefs['qv_dclick_changes_column']: + self.select_book(row, column) + else: + self.select_book(row, self.key_to_table_widget_column(self.current_key)) + except: + from calibre.gui2 import error_dialog + error_dialog(self, _('Quickview: Book not in library view'), + _('The book you selected is not currently displayed in ' + 'the library view, perhaps because of a search, so ' + 'Quickview cannot select it.'), + show=True, + show_copy_button=False) + def select_book(self, row, column): '''