feat: select the folding provider to use (#157434)

* feat: support extension id in property `editor.foldingStrategy`

* work in progress

* use new setting 'editor.defaultFoldingRangeProvider' defined in workspace

* revert editorOptions changes

Co-authored-by: Martin Aeschlimann <martinae@microsoft.com>
This commit is contained in:
Baptiste Augrain
2022-10-23 15:45:34 +02:00
committed by GitHub
co-authored by Martin Aeschlimann
parent 66953830a2
commit 6e76e0e1b7
6 changed files with 116 additions and 7 deletions
@@ -695,8 +695,9 @@ export class MainThreadLanguageFeatures extends Disposable implements MainThread
// --- folding
$registerFoldingRangeProvider(handle: number, selector: IDocumentFilterDto[], eventHandle: number | undefined): void {
$registerFoldingRangeProvider(handle: number, selector: IDocumentFilterDto[], extensionId: ExtensionIdentifier, eventHandle: number | undefined): void {
const provider = <languages.FoldingRangeProvider>{
id: extensionId.value,
provideFoldingRanges: (model, context, token) => {
return this._proxy.$provideFoldingRanges(handle, model.uri, context, token);
}