Details
-
Task
-
Resolution: Unresolved
-
P2: Important
-
6.10
-
None
Description
Implement workspacefolder functionality in qmlls:
- https://microsoft.github.io/language-server-protocol/specifications/lsp/3.17/specification/#workspace_workspaceFolders
- https://microsoft.github.io/language-server-protocol/specifications/lsp/3.17/specification/#workspace_didChangeWorkspaceFolders
This could work as following:
Create a new class called QQmlCodeModelManager that has all the methods that QQmlCodeModel has. The manager owns a map from "workspace folder path" to QQmlCodeModel, and dispatch the calls to the correct QQmlCodeModel, based on the file URI.
Having different QQmlCodeModels would allow to separate each workspacefolder project into having their own DOM, import paths, build paths, etc.
Attachments
Issue Links
- is required for
-
QTBUG-134310 qmlls: implement support for VS (non-code)
-
- Reported
-
- resulted in
-
QTBUG-137705 qmlls: lazy QmlFile in DOM loads with incorrect import path
-
- In Progress
-
Gerrit Reviews
For Gerrit Dashboard: QTBUG-134308 | ||||||
---|---|---|---|---|---|---|
# | Subject | Branch | Project | Status | CR | V |
651065,3 | qmlls: remove code that does nothing | dev | qt/qtdeclarative | Status: NEW | +2 | 0 |
651066,3 | qmlls: make url2path private | dev | qt/qtdeclarative | Status: NEW | +2 | 0 |
651067,3 | qmlls: make openNeedUpdate() private | dev | qt/qtdeclarative | Status: NEW | +2 | 0 |
651068,5 | qmlls: make each QQmlCodeModel have only one rootUrl | dev | qt/qtdeclarative | Status: NEW | 0 | 0 |
651069,5 | qmlls: move HelpEngine into QQmlCodeModel | dev | qt/qtdeclarative | Status: NEW | +2 | 0 |
651070,2 | qmlls: unique root url in code model: build paths | dev | qt/qtdeclarative | Status: NEW | 0 | 0 |
651071,8 | qmlls: introduce QQmlCodeModelManager | dev | qt/qtdeclarative | Status: NEW | 0 | 0 |
651072,7 | qmlls: swap QQmlCodeModel with QQmlCodeModelManager | dev | qt/qtdeclarative | Status: NEW | 0 | +1 |
651094,2 | qmlls: remove code that does nothing, take 2 | dev | qt/qtdeclarative | Status: NEW | +2 | 0 |
652824,1 | WIP: qmlls: introduce QQmlCodeModelManager tests | dev | qt/qtdeclarative | Status: NEW | -2 | 0 |