diff --git a/src/plugins/texteditor/codeassist/genericproposalwidget.cpp b/src/plugins/texteditor/codeassist/genericproposalwidget.cpp
index f0fe01419a6a20a716568d5ff8d94f308e3ccbff..8f9127f0c38afd61f1cd5c6fa3acdb086da3348e 100644
--- a/src/plugins/texteditor/codeassist/genericproposalwidget.cpp
+++ b/src/plugins/texteditor/codeassist/genericproposalwidget.cpp
@@ -552,6 +552,7 @@ bool GenericProposalWidget::eventFilter(QObject *o, QEvent *e)
 
         if (ke->text().length() == 1
                 && m_d->m_completionListView->currentIndex().isValid()
+                && m_d->m_reason == ExplicitlyInvoked
                 && qApp->focusWidget() == o) {
             const QChar &typedChar = ke->text().at(0);
             IAssistProposalItem *item =