mirror of
git://github.com/kovidgoyal/calibre.git
synced 2026-04-22 12:13:10 +02:00
Tag browser: Fix position not bing preserved when deleting books. Fixes #1740387 [[Enhancement] Working with lists](https://bugs.launchpad.net/calibre/+bug/1740387)
This commit is contained in:
parent
b40d65c578
commit
19638bffd1
2 changed files with 7 additions and 8 deletions
|
|
@ -73,8 +73,7 @@ def cleanup(self):
|
|||
self.pd = None
|
||||
self.model.db.commit()
|
||||
self.model.db.clean()
|
||||
self.model.books_deleted()
|
||||
self.gui.tags_view.recount()
|
||||
self.model.books_deleted() # calls recount on the tag browser
|
||||
self.callback(self.deleted_ids)
|
||||
if self.failures:
|
||||
msg = ['==> '+x[1]+'\n'+x[2] for x in self.failures]
|
||||
|
|
@ -182,14 +181,14 @@ def remove_format_by_id(self, book_id, fmt):
|
|||
self.gui.library_view.model().refresh_ids([book_id])
|
||||
self.gui.library_view.model().current_changed(self.gui.library_view.currentIndex(),
|
||||
self.gui.library_view.currentIndex())
|
||||
self.gui.tags_view.recount()
|
||||
self.gui.tags_view.recount_with_position_based_index()
|
||||
|
||||
def restore_format(self, book_id, original_fmt):
|
||||
self.gui.current_db.restore_original_format(book_id, original_fmt)
|
||||
self.gui.library_view.model().refresh_ids([book_id])
|
||||
self.gui.library_view.model().current_changed(self.gui.library_view.currentIndex(),
|
||||
self.gui.library_view.currentIndex())
|
||||
self.gui.tags_view.recount()
|
||||
self.gui.tags_view.recount_with_position_based_index()
|
||||
|
||||
def delete_selected_formats(self, *args):
|
||||
ids = self._get_selected_ids()
|
||||
|
|
@ -205,7 +204,7 @@ def delete_selected_formats(self, *args):
|
|||
m.current_changed(self.gui.library_view.currentIndex(),
|
||||
self.gui.library_view.currentIndex())
|
||||
if ids:
|
||||
self.gui.tags_view.recount()
|
||||
self.gui.tags_view.recount_with_position_based_index()
|
||||
|
||||
def delete_all_but_selected_formats(self, *args):
|
||||
ids = self._get_selected_ids()
|
||||
|
|
@ -235,7 +234,7 @@ def delete_all_but_selected_formats(self, *args):
|
|||
m.current_changed(self.gui.library_view.currentIndex(),
|
||||
self.gui.library_view.currentIndex())
|
||||
if ids:
|
||||
self.gui.tags_view.recount()
|
||||
self.gui.tags_view.recount_with_position_based_index()
|
||||
|
||||
def delete_all_formats(self, *args):
|
||||
ids = self._get_selected_ids()
|
||||
|
|
@ -258,7 +257,7 @@ def delete_all_formats(self, *args):
|
|||
self.gui.library_view.model().current_changed(self.gui.library_view.currentIndex(),
|
||||
self.gui.library_view.currentIndex())
|
||||
if ids:
|
||||
self.gui.tags_view.recount()
|
||||
self.gui.tags_view.recount_with_position_based_index()
|
||||
|
||||
def remove_matching_books_from_device(self, *args):
|
||||
if not self.gui.device_manager.is_device_present:
|
||||
|
|
|
|||
|
|
@ -69,7 +69,7 @@ def cat_key(x):
|
|||
m.addAction(name, partial(self.do_tags_list_edit, None, cat))
|
||||
|
||||
def init_tag_browser_mixin(self, db):
|
||||
self.library_view.model().count_changed_signal.connect(self.tags_view.recount)
|
||||
self.library_view.model().count_changed_signal.connect(self.tags_view.recount_with_position_based_index)
|
||||
self.tags_view.set_database(db, self.alter_tb)
|
||||
self.tags_view.tags_marked.connect(self.search.set_search_string)
|
||||
self.tags_view.tags_list_edit.connect(self.do_tags_list_edit)
|
||||
|
|
|
|||
Loading…
Reference in a new issue