forked from qt-creator/qt-creator
DocumentLocatorFilter: Make it more self-contained
Hide public DocumentLocatorFilter::updateCurrentClient() method and remove ClangdCurrentDocumentFilter::updateCurrentClient(). Connect DocumentLocatorFilter internally into a new LanguageClientManager::clientInitialized() signal instead. Change-Id: Ie74a112bda811525b7d226da1377e5624130e9ed Reviewed-by: David Schulz <david.schulz@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
This commit is contained in:
@@ -9,7 +9,6 @@
|
||||
#include "clangdcompletion.h"
|
||||
#include "clangdfindreferences.h"
|
||||
#include "clangdfollowsymbol.h"
|
||||
#include "clangdlocatorfilters.h"
|
||||
#include "clangdmemoryusagewidget.h"
|
||||
#include "clangdquickfixes.h"
|
||||
#include "clangdsemantichighlighting.h"
|
||||
@@ -471,12 +470,7 @@ ClangdClient::ClangdClient(Project *project, const Utils::FilePath &jsonDbDir, c
|
||||
}
|
||||
});
|
||||
|
||||
connect(this, &Client::initialized, this, [this] {
|
||||
auto currentDocumentFilter = static_cast<ClangdCurrentDocumentFilter *>(
|
||||
CppEditor::CppModelManager::instance()->currentDocumentFilter());
|
||||
currentDocumentFilter->updateCurrentClient();
|
||||
d->openedExtraFiles.clear();
|
||||
});
|
||||
connect(this, &Client::initialized, this, [this] { d->openedExtraFiles.clear(); });
|
||||
|
||||
start();
|
||||
}
|
||||
|
||||
@@ -12,6 +12,7 @@
|
||||
#include <cppeditor/cpplocatorfilter.h>
|
||||
#include <cppeditor/cppmodelmanager.h>
|
||||
#include <cppeditor/indexitem.h>
|
||||
#include <languageclient/languageclientmanager.h>
|
||||
#include <languageclient/languageclientutils.h>
|
||||
#include <languageclient/locatorfilter.h>
|
||||
#include <projectexplorer/projectmanager.h>
|
||||
@@ -194,6 +195,7 @@ class LspCurrentDocumentFilter : public DocumentLocatorFilter
|
||||
{
|
||||
public:
|
||||
LspCurrentDocumentFilter()
|
||||
: DocumentLocatorFilter(LanguageClientManager::instance())
|
||||
{
|
||||
setId({});
|
||||
setDisplayName({});
|
||||
@@ -313,11 +315,6 @@ ClangdCurrentDocumentFilter::ClangdCurrentDocumentFilter() : d(new Private)
|
||||
|
||||
ClangdCurrentDocumentFilter::~ClangdCurrentDocumentFilter() { delete d; }
|
||||
|
||||
void ClangdCurrentDocumentFilter::updateCurrentClient()
|
||||
{
|
||||
d->lspFilter.updateCurrentClient();
|
||||
}
|
||||
|
||||
void ClangdCurrentDocumentFilter::prepareSearch(const QString &entry)
|
||||
{
|
||||
const auto doc = TextEditor::TextDocument::currentTextDocument();
|
||||
|
||||
@@ -44,8 +44,6 @@ public:
|
||||
ClangdCurrentDocumentFilter();
|
||||
~ClangdCurrentDocumentFilter() override;
|
||||
|
||||
void updateCurrentClient();
|
||||
|
||||
private:
|
||||
void prepareSearch(const QString &entry) override;
|
||||
QList<Core::LocatorFilterEntry> matchesFor(QFutureInterface<Core::LocatorFilterEntry> &future,
|
||||
|
||||
Reference in New Issue
Block a user