diff --git a/src/calibre/gui2/library/views.py b/src/calibre/gui2/library/views.py index f8838f8ce2..f0f30bdb08 100644 --- a/src/calibre/gui2/library/views.py +++ b/src/calibre/gui2/library/views.py @@ -719,7 +719,7 @@ class BooksView(QTableView): # {{{ break def set_current_row(self, row, select=True): - if row > -1: + if row > -1 and row < self.model().rowCount(QModelIndex()): h = self.horizontalHeader() logical_indices = list(range(h.count())) logical_indices = [x for x in logical_indices if not diff --git a/src/calibre/gui2/ui.py b/src/calibre/gui2/ui.py index c1cc07f56c..928e6c63ab 100644 --- a/src/calibre/gui2/ui.py +++ b/src/calibre/gui2/ui.py @@ -522,6 +522,7 @@ class Main(MainWindow, MainWindowMixin, DeviceMixin, EmailMixin, # {{{ self.card_a_view.reset() self.card_b_view.reset() self.device_manager.set_current_library_uuid(db.library_id) + self.library_view.set_current_row(0) # Run a garbage collection now so that it does not freeze the # interface later gc.collect()