diff --git a/src/calibre/gui2/metadata/basic_widgets.py b/src/calibre/gui2/metadata/basic_widgets.py index 7970c6a39b..93b0085d11 100644 --- a/src/calibre/gui2/metadata/basic_widgets.py +++ b/src/calibre/gui2/metadata/basic_widgets.py @@ -1630,8 +1630,10 @@ class IdentifiersEdit(QLineEdit, ToMetadataMixin): val[k] = v ids = sorted(iteritems(val), key=keygen) txt = ', '.join(['%s:%s'%(k.lower(), vl) for k, vl in ids]) - # Use selectAll + insert instead of setText so that undo works - self.selectAll(), self.insert(txt.strip()) + if self.allow_undo: + self.selectAll(), self.insert(txt.strip()) + else: + self.setText(txt.strip()) self.setCursorPosition(0) def initialize(self, db, id_):