diff options
Diffstat (limited to 'src/plugins/cpptools/cppcodecompletion.cpp')
-rw-r--r-- | src/plugins/cpptools/cppcodecompletion.cpp | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/src/plugins/cpptools/cppcodecompletion.cpp b/src/plugins/cpptools/cppcodecompletion.cpp index 31f01d4d28..0b8e05c40a 100644 --- a/src/plugins/cpptools/cppcodecompletion.cpp +++ b/src/plugins/cpptools/cppcodecompletion.cpp @@ -1515,10 +1515,17 @@ void CppCodeCompletion::completions(QList<TextEditor::CompletionItem> *completio } const QRegExp regExp(keyRegExp); + const bool hasKey = !key.isEmpty(); foreach (TextEditor::CompletionItem item, m_completions) { if (regExp.indexIn(item.text) == 0) { - item.relevance = (key.length() > 0 && - item.text.startsWith(key, Qt::CaseInsensitive)) ? 1 : 0; + if (hasKey) { + if (item.text.startsWith(key, Qt::CaseSensitive)) { + item.relevance = 2; + } else if (m_caseSensitivity == Qt::CaseInsensitive + && item.text.startsWith(key, Qt::CaseInsensitive)) { + item.relevance = 1; + } + } (*completions) << item; } } |