LanguageClient: Disable DocumentLocatorFilter for non-applicable files

Fixes: QTCREATORBUG-26338
Change-Id: Ief7a45dda74b931b26731647adba43861cb09777
Reviewed-by: David Schulz <david.schulz@qt.io>
This commit is contained in:
Christian Kandeler
2021-09-29 17:50:39 +02:00
parent f4a7c74daa
commit 04d49fb771

View File

@@ -62,7 +62,9 @@ void DocumentLocatorFilter::updateCurrentClient()
disconnect(m_resetSymbolsConnection); disconnect(m_resetSymbolsConnection);
TextEditor::TextDocument *document = TextEditor::TextDocument::currentTextDocument(); TextEditor::TextDocument *document = TextEditor::TextDocument::currentTextDocument();
if (Client *client = LanguageClientManager::clientForDocument(document)) { if (Client *client = LanguageClientManager::clientForDocument(document);
client && client->locatorsEnabled()) {
setEnabled(true);
if (m_symbolCache != client->documentSymbolCache()) { if (m_symbolCache != client->documentSymbolCache()) {
disconnect(m_updateSymbolsConnection); disconnect(m_updateSymbolsConnection);
m_symbolCache = client->documentSymbolCache(); m_symbolCache = client->documentSymbolCache();
@@ -76,6 +78,7 @@ void DocumentLocatorFilter::updateCurrentClient()
disconnect(m_updateSymbolsConnection); disconnect(m_updateSymbolsConnection);
m_symbolCache.clear(); m_symbolCache.clear();
m_currentUri.clear(); m_currentUri.clear();
setEnabled(false);
} }
} }