From f0ad5813b9cb5a9b5fc9362f5a35917e422a2012 Mon Sep 17 00:00:00 2001 From: David Schulz Date: Wed, 11 Sep 2019 14:34:20 +0200 Subject: [PATCH] LanguageClient: more FileName to FilePath renaming Change-Id: I803211d462b442b6881a02e870d2cd816675e0d9 Reviewed-by: David Schulz Reviewed-by: Christian Stenger --- src/libs/languageserverprotocol/lsptypes.cpp | 4 +- src/libs/languageserverprotocol/lsptypes.h | 4 +- src/plugins/languageclient/client.cpp | 40 +++++++++---------- .../languageclient/documentsymbolcache.cpp | 2 +- .../languageclientcompletionassist.cpp | 2 +- .../languageclientfunctionhint.cpp | 2 +- .../languageclienthoverhandler.cpp | 2 +- .../languageclient/languageclientmanager.cpp | 6 +-- .../languageclient/languageclientoutline.cpp | 2 +- .../languageclient/languageclientquickfix.cpp | 2 +- .../languageclient/languageclientutils.cpp | 6 +-- src/plugins/languageclient/locatorfilter.cpp | 4 +- .../tst_languageserverprotocol.cpp | 6 +-- 13 files changed, 41 insertions(+), 41 deletions(-) diff --git a/src/libs/languageserverprotocol/lsptypes.cpp b/src/libs/languageserverprotocol/lsptypes.cpp index 8aa1ecf81c3..6b8bc0f7498 100644 --- a/src/libs/languageserverprotocol/lsptypes.cpp +++ b/src/libs/languageserverprotocol/lsptypes.cpp @@ -96,7 +96,7 @@ void WorkspaceEdit::setChanges(const Changes &changes) QJsonArray edits; for (const TextEdit &edit : it.value()) edits.append(QJsonValue(edit)); - changesObject.insert(it.key().toFileName().toString(), edits); + changesObject.insert(it.key().toFilePath().toString(), edits); } insert(changesKey, changesObject); } @@ -410,7 +410,7 @@ DocumentUri::DocumentUri(const Utils::FilePath &other) : QUrl(QUrl::fromLocalFile(other.toString())) { } -Utils::FilePath DocumentUri::toFileName() const +Utils::FilePath DocumentUri::toFilePath() const { return isLocalFile() ? Utils::FilePath::fromUserInput(QUrl(*this).toLocalFile()) : Utils::FilePath(); diff --git a/src/libs/languageserverprotocol/lsptypes.h b/src/libs/languageserverprotocol/lsptypes.h index ade3ac7ccfb..fca410636db 100644 --- a/src/libs/languageserverprotocol/lsptypes.h +++ b/src/libs/languageserverprotocol/lsptypes.h @@ -45,10 +45,10 @@ class LANGUAGESERVERPROTOCOL_EXPORT DocumentUri : public QUrl { public: DocumentUri() = default; - Utils::FilePath toFileName() const; + Utils::FilePath toFilePath() const; static DocumentUri fromProtocol(const QString &uri) { return DocumentUri(uri); } - static DocumentUri fromFileName(const Utils::FilePath &file) { return DocumentUri(file); } + static DocumentUri fromFilePath(const Utils::FilePath &file) { return DocumentUri(file); } operator QJsonValue() const { return QJsonValue(toString()); } diff --git a/src/plugins/languageclient/client.cpp b/src/plugins/languageclient/client.cpp index 5b326fda576..ad5f8d8e561 100644 --- a/src/plugins/languageclient/client.cpp +++ b/src/plugins/languageclient/client.cpp @@ -140,7 +140,7 @@ Client::~Client() for (const DocumentUri &uri : m_diagnostics.keys()) removeDiagnostics(uri); for (const DocumentUri &uri : m_highlights.keys()) { - if (TextDocument *doc = TextDocument::textDocumentForFileName(uri.toFileName())) { + if (TextDocument *doc = TextDocument::textDocumentForFileName(uri.toFilePath())) { if (TextEditor::SyntaxHighlighter *highlighter = doc->syntaxHighlighter()) highlighter->clearAllExtraFormats(); } @@ -246,7 +246,7 @@ void Client::initialize() auto params = initRequest->params().value_or(InitializeParams()); params.setCapabilities(generateClientCapabilities()); if (m_project) { - params.setRootUri(DocumentUri::fromFileName(m_project->projectDirectory())); + params.setRootUri(DocumentUri::fromFilePath(m_project->projectDirectory())); params.setWorkSpaceFolders(Utils::transform(SessionManager::projects(), [](Project *pro){ return WorkSpaceFolder(pro->projectDirectory().toString(), pro->displayName()); })); @@ -301,7 +301,7 @@ bool Client::openDocument(TextEditor::TextDocument *document) return false; } } - auto uri = DocumentUri::fromFileName(filePath); + auto uri = DocumentUri::fromFilePath(filePath); showDiagnostics(uri); connect(document, @@ -351,7 +351,7 @@ void Client::sendContent(const IContent &content) void Client::sendContent(const DocumentUri &uri, const IContent &content) { if (!Utils::anyOf(m_openedDocument.keys(), [uri](TextEditor::TextDocument *documnent) { - return uri.toFileName() == documnent->filePath(); + return uri.toFilePath() == documnent->filePath(); })) { sendContent(content); } @@ -367,7 +367,7 @@ void Client::closeDocument(TextEditor::TextDocument *document) { if (m_openedDocument.remove(document) == 0) return; - const DocumentUri &uri = DocumentUri::fromFileName(document->filePath()); + const DocumentUri &uri = DocumentUri::fromFilePath(document->filePath()); const DidCloseTextDocumentParams params(TextDocumentIdentifier{uri}); m_highlights[uri].clear(); sendContent(uri, DidCloseTextDocumentNotification(params)); @@ -407,7 +407,7 @@ void Client::documentContentsSaved(TextEditor::TextDocument *document) if (!sendMessage) return; DidSaveTextDocumentParams params( - TextDocumentIdentifier(DocumentUri::fromFileName(document->filePath()))); + TextDocumentIdentifier(DocumentUri::fromFilePath(document->filePath()))); if (includeText) params.setText(document->plainText()); sendContent(DidSaveTextDocumentNotification(params)); @@ -438,7 +438,7 @@ void Client::documentWillSave(Core::IDocument *document) if (!sendMessage) return; const WillSaveTextDocumentParams params( - TextDocumentIdentifier(DocumentUri::fromFileName(filePath))); + TextDocumentIdentifier(DocumentUri::fromFilePath(filePath))); sendContent(WillSaveTextDocumentNotification(params)); } @@ -461,7 +461,7 @@ void Client::documentContentsChanged(TextEditor::TextDocument *document, } auto textDocument = qobject_cast(document); - const auto uri = DocumentUri::fromFileName(document->filePath()); + const auto uri = DocumentUri::fromFilePath(document->filePath()); m_highlights[uri].clear(); if (syncKind != TextDocumentSyncKind::None) { VersionedTextDocumentIdentifier docId(uri); @@ -553,7 +553,7 @@ TextEditor::HighlightingResult createHighlightingResult(const SymbolInformation void Client::cursorPositionChanged(TextEditor::TextEditorWidget *widget) { - const auto uri = DocumentUri::fromFileName(widget->textDocument()->filePath()); + const auto uri = DocumentUri::fromFilePath(widget->textDocument()->filePath()); if (m_dynamicCapabilities.isRegistered(DocumentHighlightsRequest::methodName).value_or(false)) { TextDocumentRegistrationOptions option( m_dynamicCapabilities.option(DocumentHighlightsRequest::methodName)); @@ -604,7 +604,7 @@ void Client::cursorPositionChanged(TextEditor::TextEditorWidget *widget) void Client::requestCodeActions(const DocumentUri &uri, const QList &diagnostics) { - const Utils::FilePath fileName = uri.toFileName(); + const Utils::FilePath fileName = uri.toFilePath(); TextEditor::TextDocument *doc = TextEditor::TextDocument::textDocumentForFileName(fileName); if (!doc) return; @@ -633,7 +633,7 @@ void Client::requestCodeActions(const CodeActionRequest &request) return; const Utils::FilePath fileName - = request.params().value_or(CodeActionParams()).textDocument().uri().toFileName(); + = request.params().value_or(CodeActionParams()).textDocument().uri().toFilePath(); const QString method(CodeActionRequest::methodName); if (Utils::optional registered = m_dynamicCapabilities.isRegistered(method)) { @@ -754,8 +754,8 @@ bool Client::isSupportedFile(const Utils::FilePath &filePath, const QString &mim bool Client::isSupportedUri(const DocumentUri &uri) const { - return m_languagFilter.isSupported(uri.toFileName(), - Utils::mimeTypeForFile(uri.toFileName().fileName()).name()); + return m_languagFilter.isSupported(uri.toFilePath(), + Utils::mimeTypeForFile(uri.toFilePath().fileName()).name()); } bool Client::needsRestart(const BaseSettings *settings) const @@ -830,12 +830,12 @@ void Client::log(const QString &message, Core::MessageManager::PrintToOutputPane void Client::showDiagnostics(Core::IDocument *doc) { - showDiagnostics(DocumentUri::fromFileName(doc->filePath())); + showDiagnostics(DocumentUri::fromFilePath(doc->filePath())); } void Client::hideDiagnostics(TextEditor::TextDocument *doc) { - DocumentUri uri = DocumentUri::fromFileName(doc->filePath()); + DocumentUri uri = DocumentUri::fromFilePath(doc->filePath()); for (TextMark *mark : m_diagnostics.value(uri)) doc->removeMark(mark); } @@ -901,7 +901,7 @@ void Client::showMessageBox(const ShowMessageRequestParams &message, const Messa void Client::showDiagnostics(const DocumentUri &uri) { if (TextEditor::TextDocument *doc - = TextEditor::TextDocument::textDocumentForFileName(uri.toFileName())) { + = TextEditor::TextDocument::textDocumentForFileName(uri.toFilePath())) { for (TextMark *mark : m_diagnostics.value(uri)) doc->addMark(mark); } @@ -910,7 +910,7 @@ void Client::showDiagnostics(const DocumentUri &uri) void Client::removeDiagnostics(const DocumentUri &uri) { TextEditor::TextDocument *doc - = TextEditor::TextDocument::textDocumentForFileName(uri.toFileName()); + = TextEditor::TextDocument::textDocumentForFileName(uri.toFilePath()); for (TextMark *mark : m_diagnostics.take(uri)) { if (doc) @@ -1035,7 +1035,7 @@ void Client::handleDiagnostics(const PublishDiagnosticsParams ¶ms) removeDiagnostics(uri); const QList &diagnostics = params.diagnostics(); m_diagnostics[uri] = - Utils::transform(diagnostics, [fileName = uri.toFileName()](const Diagnostic &diagnostic) { + Utils::transform(diagnostics, [fileName = uri.toFilePath()](const Diagnostic &diagnostic) { return new TextMark(fileName, diagnostic); }); showDiagnostics(uri); @@ -1049,7 +1049,7 @@ void Client::handleSemanticHighlight(const SemanticHighlightingParams ¶ms) m_highlights[uri].clear(); const LanguageClientValue &version = params.textDocument().version(); TextEditor::TextDocument *doc = TextEditor::TextDocument::textDocumentForFileName( - uri.toFileName()); + uri.toFilePath()); if (!doc || (!version.isNull() && doc->document()->revision() != version.value())) return; @@ -1066,7 +1066,7 @@ void Client::rehighlight() { using namespace TextEditor; for (auto it = m_highlights.begin(), end = m_highlights.end(); it != end; ++it) { - if (TextDocument *doc = TextDocument::textDocumentForFileName(it.key().toFileName())) + if (TextDocument *doc = TextDocument::textDocumentForFileName(it.key().toFilePath())) SemanticHighligtingSupport::applyHighlight(doc, it.value(), capabilities()); } } diff --git a/src/plugins/languageclient/documentsymbolcache.cpp b/src/plugins/languageclient/documentsymbolcache.cpp index b922486d56e..e56f534636d 100644 --- a/src/plugins/languageclient/documentsymbolcache.cpp +++ b/src/plugins/languageclient/documentsymbolcache.cpp @@ -43,7 +43,7 @@ DocumentSymbolCache::DocumentSymbolCache(Client *client) this, [this](Core::IDocument *document) { connect(document, &Core::IDocument::contentsChanged, this, [this, document]() { - m_cache.remove(DocumentUri::fromFileName(document->filePath())); + m_cache.remove(DocumentUri::fromFilePath(document->filePath())); }); }); } diff --git a/src/plugins/languageclient/languageclientcompletionassist.cpp b/src/plugins/languageclient/languageclientcompletionassist.cpp index c6964a9b98e..91a77d6b7b4 100644 --- a/src/plugins/languageclient/languageclientcompletionassist.cpp +++ b/src/plugins/languageclient/languageclientcompletionassist.cpp @@ -330,7 +330,7 @@ IAssistProposal *LanguageClientCompletionAssistProcessor::perform(const AssistIn params.setPosition({line, column}); params.setContext(context); params.setTextDocument( - DocumentUri::fromFileName(Utils::FilePath::fromString(interface->fileName()))); + DocumentUri::fromFilePath(Utils::FilePath::fromString(interface->fileName()))); completionRequest.setResponseCallback([this](auto response) { this->handleCompletionResponse(response); }); diff --git a/src/plugins/languageclient/languageclientfunctionhint.cpp b/src/plugins/languageclient/languageclientfunctionhint.cpp index e82c8a5163a..5e711adec67 100644 --- a/src/plugins/languageclient/languageclientfunctionhint.cpp +++ b/src/plugins/languageclient/languageclientfunctionhint.cpp @@ -82,7 +82,7 @@ IAssistProposal *FunctionHintProcessor::perform(const AssistInterface *interface m_pos = interface->position(); QTextCursor cursor(interface->textDocument()); cursor.setPosition(m_pos); - auto uri = DocumentUri::fromFileName(Utils::FilePath::fromString(interface->fileName())); + auto uri = DocumentUri::fromFilePath(Utils::FilePath::fromString(interface->fileName())); SignatureHelpRequest request; request.setParams(TextDocumentPositionParams(TextDocumentIdentifier(uri), Position(cursor))); request.setResponseCallback([this](auto response) { this->handleSignatureResponse(response); }); diff --git a/src/plugins/languageclient/languageclienthoverhandler.cpp b/src/plugins/languageclient/languageclienthoverhandler.cpp index 166fdc30493..9f4fc3ad370 100644 --- a/src/plugins/languageclient/languageclienthoverhandler.cpp +++ b/src/plugins/languageclient/languageclienthoverhandler.cpp @@ -86,7 +86,7 @@ void HoverHandler::identifyMatch(TextEditor::TextEditorWidget *editorWidget, } m_report = report; - auto uri = DocumentUri::fromFileName(editorWidget->textDocument()->filePath()); + auto uri = DocumentUri::fromFilePath(editorWidget->textDocument()->filePath()); QTextCursor cursor = editorWidget->textCursor(); cursor.setPosition(pos); TextDocumentPositionParams params(uri, Position(cursor)); diff --git a/src/plugins/languageclient/languageclientmanager.cpp b/src/plugins/languageclient/languageclientmanager.cpp index d393fe799a5..e84d69768e4 100644 --- a/src/plugins/languageclient/languageclientmanager.cpp +++ b/src/plugins/languageclient/languageclientmanager.cpp @@ -487,7 +487,7 @@ void LanguageClientManager::findLinkAt(const Utils::FilePath &filePath, const QTextCursor &cursor, Utils::ProcessLinkCallback callback) { - const DocumentUri uri = DocumentUri::fromFileName(filePath); + const DocumentUri uri = DocumentUri::fromFilePath(filePath); const TextDocumentIdentifier document(uri); const Position pos(cursor); TextDocumentPositionParams params(document, pos); @@ -524,7 +524,7 @@ QList generateSearchResultItems(const LanguageClientArra return result; QMap> rangesInDocument; for (const Location &location : locations.toList()) - rangesInDocument[location.uri().toFileName().toString()] << convertRange(location.range()); + rangesInDocument[location.uri().toFilePath().toString()] << convertRange(location.range()); for (auto it = rangesInDocument.begin(); it != rangesInDocument.end(); ++it) { const QString &fileName = it.key(); QFile file(fileName); @@ -549,7 +549,7 @@ QList generateSearchResultItems(const LanguageClientArra void LanguageClientManager::findUsages(const Utils::FilePath &filePath, const QTextCursor &cursor) { - const DocumentUri uri = DocumentUri::fromFileName(filePath); + const DocumentUri uri = DocumentUri::fromFilePath(filePath); const TextDocumentIdentifier document(uri); const Position pos(cursor); QTextCursor termCursor(cursor); diff --git a/src/plugins/languageclient/languageclientoutline.cpp b/src/plugins/languageclient/languageclientoutline.cpp index 6f76c2eef81..a85ff0f6a84 100644 --- a/src/plugins/languageclient/languageclientoutline.cpp +++ b/src/plugins/languageclient/languageclientoutline.cpp @@ -134,7 +134,7 @@ LanguageClientOutlineWidget::LanguageClientOutlineWidget(Client *client, : m_client(client) , m_editor(editor) , m_view(this) - , m_uri(DocumentUri::fromFileName(editor->textDocument()->filePath())) + , m_uri(DocumentUri::fromFilePath(editor->textDocument()->filePath())) { connect(client->documentSymbolCache(), &DocumentSymbolCache::gotSymbols, diff --git a/src/plugins/languageclient/languageclientquickfix.cpp b/src/plugins/languageclient/languageclientquickfix.cpp index fd3d8b29765..90e9b23de69 100644 --- a/src/plugins/languageclient/languageclientquickfix.cpp +++ b/src/plugins/languageclient/languageclientquickfix.cpp @@ -111,7 +111,7 @@ IAssistProposal *LanguageClientQuickFixAssistProcessor::perform(const AssistInte cursor.select(QTextCursor::LineUnderCursor); Range range(cursor); params.setRange(range); - auto uri = DocumentUri::fromFileName(Utils::FilePath::fromString(interface->fileName())); + auto uri = DocumentUri::fromFilePath(Utils::FilePath::fromString(interface->fileName())); params.setTextDocument(uri); CodeActionParams::CodeActionContext context; context.setDiagnostics(m_client->diagnosticsAt(uri, range)); diff --git a/src/plugins/languageclient/languageclientutils.cpp b/src/plugins/languageclient/languageclientutils.cpp index c3c707a036a..cdb114b2f12 100644 --- a/src/plugins/languageclient/languageclientutils.cpp +++ b/src/plugins/languageclient/languageclientutils.cpp @@ -80,7 +80,7 @@ bool applyTextDocumentEdit(const TextDocumentEdit &edit) if (edits.isEmpty()) return true; const DocumentUri &uri = edit.id().uri(); - if (TextDocument* doc = TextDocument::textDocumentForFileName(uri.toFileName())) { + if (TextDocument* doc = TextDocument::textDocumentForFileName(uri.toFilePath())) { LanguageClientValue version = edit.id().version(); if (!version.isNull() && version.value(0) < doc->document()->revision()) return false; @@ -94,7 +94,7 @@ bool applyTextEdits(const DocumentUri &uri, const QList &edits) return true; RefactoringChanges changes; RefactoringFilePtr file; - file = changes.file(uri.toFileName().toString()); + file = changes.file(uri.toFilePath().toString()); file->setChangeSet(editsToChangeSet(edits, file->document())); return file->apply(); } @@ -137,7 +137,7 @@ void updateCodeActionRefactoringMarker(Client *client, const CodeAction &action, const DocumentUri &uri) { - TextDocument* doc = TextDocument::textDocumentForFileName(uri.toFileName()); + TextDocument* doc = TextDocument::textDocumentForFileName(uri.toFilePath()); if (!doc) return; const QVector editors = BaseTextEditor::textEditorsForDocument(doc); diff --git a/src/plugins/languageclient/locatorfilter.cpp b/src/plugins/languageclient/locatorfilter.cpp index 28e750829be..2f8d8744694 100644 --- a/src/plugins/languageclient/locatorfilter.cpp +++ b/src/plugins/languageclient/locatorfilter.cpp @@ -69,7 +69,7 @@ void DocumentLocatorFilter::updateCurrentClient() } m_resetSymbolsConnection = connect(document, &Core::IDocument::contentsChanged, this, &DocumentLocatorFilter::resetSymbols); - m_currentUri = DocumentUri::fromFileName(document->filePath()); + m_currentUri = DocumentUri::fromFilePath(document->filePath()); } else { disconnect(m_updateSymbolsConnection); m_symbolCache.clear(); @@ -188,7 +188,7 @@ void DocumentLocatorFilter::accept(Core::LocatorFilterEntry selection, { if (selection.internalData.canConvert()) { auto lineColumn = qvariant_cast(selection.internalData); - Core::EditorManager::openEditorAt(m_currentUri.toFileName().toString(), + Core::EditorManager::openEditorAt(m_currentUri.toFilePath().toString(), lineColumn.line + 1, lineColumn.column); } else if (selection.internalData.canConvert()) { diff --git a/tests/auto/languageserverprotocol/tst_languageserverprotocol.cpp b/tests/auto/languageserverprotocol/tst_languageserverprotocol.cpp index 8c5e2d7f59e..4efbacce88f 100644 --- a/tests/auto/languageserverprotocol/tst_languageserverprotocol.cpp +++ b/tests/auto/languageserverprotocol/tst_languageserverprotocol.cpp @@ -610,7 +610,7 @@ void tst_LanguageServerProtocol::documentUri_data() QTest::newRow("home dir") - << DocumentUri::fromFileName(Utils::FilePath::fromString(QDir::homePath())) + << DocumentUri::fromFilePath(Utils::FilePath::fromString(QDir::homePath())) << true << Utils::FilePath::fromUserInput(QDir::homePath()) << QString(filePrefix + QDir::homePath()); @@ -618,7 +618,7 @@ void tst_LanguageServerProtocol::documentUri_data() const QString argv0 = QFileInfo(qApp->arguments().first()).absoluteFilePath(); const auto argv0FileName = Utils::FilePath::fromUserInput(argv0); QTest::newRow("argv0 file name") - << DocumentUri::fromFileName(argv0FileName) + << DocumentUri::fromFilePath(argv0FileName) << true << argv0FileName << QString(filePrefix + QDir::fromNativeSeparators(argv0)); @@ -648,7 +648,7 @@ void tst_LanguageServerProtocol::documentUri() QFETCH(QString, string); QCOMPARE(uri.isValid(), isValid); - QCOMPARE(uri.toFileName(), fileName); + QCOMPARE(uri.toFilePath(), fileName); QCOMPARE(uri.toString(), string); }