From 94de403265a9edb3a03edbf14aabe997a5db0f27 Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Fri, 2 Feb 2018 13:24:39 +0530 Subject: [PATCH] Make mirroring a no-op when pin view is not visible --- src/calibre/gui2/library/views.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/calibre/gui2/library/views.py b/src/calibre/gui2/library/views.py index 02fa6d3688..961a1e4f26 100644 --- a/src/calibre/gui2/library/views.py +++ b/src/calibre/gui2/library/views.py @@ -335,10 +335,13 @@ class BooksView(QTableView): # {{{ def set_pin_view_visibility(self, visible=False): self.pin_view.setVisible(visible) self.setVerticalScrollBarPolicy(Qt.ScrollBarAlwaysOff if visible else Qt.ScrollBarAsNeeded) + self.mirror_selection_between_views(self) def mirror_selection_between_views(self, src): if self.allow_mirroring: dest = self.pin_view if src is self else self + if dest is self.pin_view and not dest.isVisible(): + return self.allow_mirroring = False dest.selectionModel().select(src.selectionModel().selection(), QItemSelectionModel.ClearAndSelect) ci = dest.currentIndex()