diff --git a/src/plugins/cppeditor/cppvirtualfunctionassistprovider.cpp b/src/plugins/cppeditor/cppvirtualfunctionassistprovider.cpp index f593074d2dd95fc9cd2be84cf8acc2f988b383e3..75635d2f2b13c1e7b5295885e53addc768e9cbb5 100644 --- a/src/plugins/cppeditor/cppvirtualfunctionassistprovider.cpp +++ b/src/plugins/cppeditor/cppvirtualfunctionassistprovider.cpp @@ -88,6 +88,17 @@ protected: return GenericProposalWidget::eventFilter(o, e); } + void showProposal(const QString &prefix) + { + IGenericProposalModel *proposalModel = model(); + if (proposalModel && proposalModel->size() == 1) { + emit proposalItemActivated(proposalModel->proposalItem(0)); + deleteLater(); + return; + } + GenericProposalWidget::showProposal(prefix); + } + private: QKeySequence m_sequence; }; diff --git a/src/plugins/texteditor/codeassist/genericproposalwidget.cpp b/src/plugins/texteditor/codeassist/genericproposalwidget.cpp index bf096098e8f7896ecae3542dabc51a00723f5d9e..839e26f31d96accb38bb85c30aea199b75ea8d62 100644 --- a/src/plugins/texteditor/codeassist/genericproposalwidget.cpp +++ b/src/plugins/texteditor/codeassist/genericproposalwidget.cpp @@ -666,6 +666,11 @@ bool GenericProposalWidget::activateCurrentProposalItem() return false; } +IGenericProposalModel *GenericProposalWidget::model() +{ + return d->m_model; +} + #include "genericproposalwidget.moc" } // TextEditor diff --git a/src/plugins/texteditor/codeassist/genericproposalwidget.h b/src/plugins/texteditor/codeassist/genericproposalwidget.h index 6d5b584a788545717d6b32d8ce779cf3cdad55c2..1fb9ce276f272b4d34216d060e8e8a1ad3d21134 100644 --- a/src/plugins/texteditor/codeassist/genericproposalwidget.h +++ b/src/plugins/texteditor/codeassist/genericproposalwidget.h @@ -37,6 +37,7 @@ namespace TextEditor { class GenericProposalWidgetPrivate; +class IGenericProposalModel; class TEXTEDITOR_EXPORT GenericProposalWidget : public IAssistProposalWidget { @@ -72,6 +73,7 @@ private slots: protected: bool eventFilter(QObject *o, QEvent *e); bool activateCurrentProposalItem(); + IGenericProposalModel *model(); private: GenericProposalWidgetPrivate *d;