LanguageClient: manually track document version

Using the document revision causes issues for some servers.

Task-number: QTCREATORBUG-25766
Change-Id: Ic858e19c6fe39e57c9d3124913887aafee0a3cd0
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
This commit is contained in:
David Schulz
2021-06-14 11:47:04 +02:00
parent 200723cf13
commit 439bb9c4ae
8 changed files with 35 additions and 23 deletions

View File

@@ -145,6 +145,7 @@ public:
int charsAdded);
void cursorPositionChanged(TextEditor::TextEditorWidget *widget);
bool documentUpdatePostponed(const Utils::FilePath &fileName) const;
int documentVersion(const Utils::FilePath &filePath) const;
// workspace control
virtual void setCurrentProject(ProjectExplorer::Project *project);
@@ -231,6 +232,7 @@ private:
LanguageFilter m_languagFilter;
QJsonObject m_initializationOptions;
QMap<TextEditor::TextDocument *, QString> m_openedDocument;
QMap<Utils::FilePath, int> m_documentVersions;
QMap<TextEditor::TextDocument *,
QList<LanguageServerProtocol::DidChangeTextDocumentParams::TextDocumentContentChangeEvent>>
m_documentsToUpdate;