Fix #2067110 [Edit metadata in bulk does not preserve previously selected tab](https://bugs.launchpad.net/calibre/+bug/2067110)

This commit is contained in:
Kovid Goyal 2024-05-25 08:37:07 +05:30
parent 27abe25a57
commit e989b1bcd6
No known key found for this signature in database
GPG Key ID: 06BC317B515ACE7C
2 changed files with 6 additions and 5 deletions

View File

@ -534,7 +534,7 @@ class EditMetadataAction(InterfaceActionWithLibraryDrop):
changed = False changed = False
refresh_books = set(book_ids) refresh_books = set(book_ids)
try: try:
current_tab = 0 current_tab = -1
while True: while True:
dialog = MetadataBulkDialog(self.gui, rows, dialog = MetadataBulkDialog(self.gui, rows,
self.gui.library_view.model(), current_tab, refresh_books) self.gui.library_view.model(), current_tab, refresh_books)

View File

@ -558,7 +558,7 @@ class MetadataBulkDialog(QDialog, Ui_MetadataBulkDialog):
_('Append to field'), _('Append to field'),
] ]
def __init__(self, window, rows, model, tab, refresh_books): def __init__(self, window, rows, model, starting_tab, refresh_books):
QDialog.__init__(self, window) QDialog.__init__(self, window)
self.setupUi(self) self.setupUi(self)
setup_status_actions(self.test_result) setup_status_actions(self.test_result)
@ -634,8 +634,7 @@ class MetadataBulkDialog(QDialog, Ui_MetadataBulkDialog):
'This operation cannot be canceled or undone')) 'This operation cannot be canceled or undone'))
self.do_again = False self.do_again = False
self.restore_geometry(gprefs, 'bulk_metadata_window_geometry') self.restore_geometry(gprefs, 'bulk_metadata_window_geometry')
ct = gprefs.get('bulk_metadata_window_tab', 0)
self.central_widget.setCurrentIndex(ct)
self.languages.init_langs(self.db) self.languages.init_langs(self.db)
self.languages.setEditText('') self.languages.setEditText('')
self.authors.setFocus(Qt.FocusReason.OtherFocusReason) self.authors.setFocus(Qt.FocusReason.OtherFocusReason)
@ -650,7 +649,9 @@ class MetadataBulkDialog(QDialog, Ui_MetadataBulkDialog):
(self.button_clear_tags_rules, self.button_clear_authors_rules, self.button_clear_publishers_rules) (self.button_clear_tags_rules, self.button_clear_authors_rules, self.button_clear_publishers_rules)
)) ))
self.update_transform_labels() self.update_transform_labels()
self.central_widget.setCurrentIndex(tab) if starting_tab < 0:
starting_tab = gprefs.get('bulk_metadata_window_tab', 0)
self.central_widget.setCurrentIndex(starting_tab)
self.exec() self.exec()
def update_transform_labels(self): def update_transform_labels(self):