mirror of
https://github.com/kovidgoyal/calibre.git
synced 2025-07-09 03:04:10 -04:00
Fix merging books in the cover grid not respecting select order
This commit is contained in:
parent
743ce97c9f
commit
5b024d3393
@ -485,9 +485,9 @@ class EditMetadataAction(InterfaceAction):
|
|||||||
Merge selected books in library.
|
Merge selected books in library.
|
||||||
'''
|
'''
|
||||||
from calibre.gui2.dialogs.confirm_merge import confirm_merge
|
from calibre.gui2.dialogs.confirm_merge import confirm_merge
|
||||||
if self.gui.stack.currentIndex() != 0:
|
if self.gui.current_view() is not self.gui.library_view:
|
||||||
return
|
return
|
||||||
rows = self.gui.library_view.selectionModel().selectedRows()
|
rows = self.gui.library_view.indices_for_merge()
|
||||||
if not rows or len(rows) == 0:
|
if not rows or len(rows) == 0:
|
||||||
return error_dialog(self.gui, _('Cannot merge books'),
|
return error_dialog(self.gui, _('Cannot merge books'),
|
||||||
_('No books selected'), show=True)
|
_('No books selected'), show=True)
|
||||||
|
@ -1017,6 +1017,9 @@ class GridView(QListView):
|
|||||||
else:
|
else:
|
||||||
return QListView.mousePressEvent(self, ev)
|
return QListView.mousePressEvent(self, ev)
|
||||||
|
|
||||||
|
def indices_for_merge(self, resolved=True):
|
||||||
|
return self.selectionModel().selectedIndexes()
|
||||||
|
|
||||||
def number_of_columns(self):
|
def number_of_columns(self):
|
||||||
# Number of columns currently visible in the grid
|
# Number of columns currently visible in the grid
|
||||||
if self._ncols is None:
|
if self._ncols is None:
|
||||||
|
@ -948,6 +948,11 @@ class BooksView(QTableView): # {{{
|
|||||||
return True
|
return True
|
||||||
return False
|
return False
|
||||||
|
|
||||||
|
def indices_for_merge(self, resolved=False):
|
||||||
|
if not resolved:
|
||||||
|
return self.alternate_views.current_view.indices_for_merge(resolved=True)
|
||||||
|
return self.selectionModel().selectedRows()
|
||||||
|
|
||||||
def scrollContentsBy(self, dx, dy):
|
def scrollContentsBy(self, dx, dy):
|
||||||
# Needed as Qt bug causes headerview to not always update when scrolling
|
# Needed as Qt bug causes headerview to not always update when scrolling
|
||||||
QTableView.scrollContentsBy(self, dx, dy)
|
QTableView.scrollContentsBy(self, dx, dy)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user