Use position based recounting in a couple more places

This commit is contained in:
Kovid Goyal 2017-07-02 09:58:43 +05:30
parent bf91d3905a
commit b10142db22
No known key found for this signature in database
GPG Key ID: 06BC317B515ACE7C
2 changed files with 5 additions and 1 deletions

View File

@ -37,10 +37,12 @@ def handle_changes(changes, gui=None):
refresh_ids -= added | removed
orig = gui.tags_view.disable_recounting, gui.disable_cover_browser_refresh
gui.tags_view.disable_recounting = gui.disable_cover_browser_refresh = True
position_based_recount = True
try:
if added:
gui.current_db.data.books_added(added)
gui.iactions['Add Books'].refresh_gui(len(added), recount=False)
position_based_recount = False
if removed:
next_id = gui.current_view().next_id
m = gui.library_view.model()
@ -51,6 +53,7 @@ def handle_changes(changes, gui=None):
if ss_changed:
gui.saved_searches_changed(recount=False)
gui.tags_view.disable_recounting = gui.disable_cover_browser_refresh = False
gui.tags_view.recount(), gui.refresh_cover_browser()
(gui.tags_view.recount_with_position_based_index if position_based_recount else gui.tags_view.recount)()
gui.refresh_cover_browser()
finally:
gui.tags_view.disable_recounting, gui.disable_cover_browser_refresh = orig

View File

@ -1144,6 +1144,7 @@ class TagsModel(QAbstractItemModel): # {{{
self.tag_item_renamed.emit()
item.tag.name = val
item.tag.state = TAG_SEARCH_STATES['clear']
self.use_position_based_index_on_next_recount = True
if not restrict_to_book_ids:
self.rename_item_in_all_user_categories(name, key, val)
self.refresh_required.emit()