LanguageClient: fix dynamic registered completion provider

Change-Id: I4c770b5b59b30b22a280a526b881b3b47bc43f45
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
This commit is contained in:
David Schulz
2021-01-20 12:46:07 +01:00
parent eb586385b5
commit 6564234dd9
4 changed files with 48 additions and 11 deletions

View File

@@ -451,10 +451,12 @@ bool LanguageClientCompletionAssistProvider::isActivationCharSequence(const QStr
});
}
void LanguageClientCompletionAssistProvider::setTriggerCharacters(QList<QString> triggerChars)
void LanguageClientCompletionAssistProvider::setTriggerCharacters(
const Utils::optional<QList<QString>> triggerChars)
{
m_triggerChars = triggerChars;
for (const QString &trigger : triggerChars) {
m_activationCharSequenceLength = 0;
m_triggerChars = triggerChars.value_or(QList<QString>());
for (const QString &trigger : qAsConst(m_triggerChars)) {
if (trigger.length() > m_activationCharSequenceLength)
m_activationCharSequenceLength = trigger.length();
}