diff --git a/src/calibre/gui2/complete2.py b/src/calibre/gui2/complete2.py index dc2b6e8e91..4ad3c37c0e 100644 --- a/src/calibre/gui2/complete2.py +++ b/src/calibre/gui2/complete2.py @@ -357,9 +357,8 @@ class EditWithComplete(EnComboBox): def show_initial_value(self, what): what = unicode(what) if what else u'' - le = self.lineEdit() - self.setEditText(what) - le.selectAll() + self.setText(what) + self.lineEdit().selectAll() @dynamic_property def all_items(self): diff --git a/src/calibre/gui2/library/delegates.py b/src/calibre/gui2/library/delegates.py index 0c2d050860..10ec78cfaf 100644 --- a/src/calibre/gui2/library/delegates.py +++ b/src/calibre/gui2/library/delegates.py @@ -249,8 +249,13 @@ class CcTextDelegate(QStyledItemDelegate): # {{{ complete_items = sorted(list(m.db.all_custom(label=m.db.field_metadata.key_to_label(col))), key=sort_key) editor.update_items_cache(complete_items) + ct = index.data(Qt.DisplayRole).toString() + editor.show_initial_value(ct) return editor + def setModelData(self, editor, model, index): + val = editor.text() + model.setData(index, QVariant(val), Qt.EditRole) # }}} class CcNumberDelegate(QStyledItemDelegate): # {{{