@codingame/monaco-vscode-extensions-service-override 5.3.0 → 6.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/extensions.js +4 -4
- package/package.json +3 -3
- package/vscode/src/vs/base/common/console.js +2 -0
- package/vscode/src/vs/platform/extensionManagement/common/extensionManagementCLI.js +6 -6
- package/vscode/src/vs/platform/extensionResourceLoader/browser/extensionResourceLoaderService.js +1 -0
- package/vscode/src/vs/workbench/api/browser/mainThreadAuthentication.js +35 -21
- package/vscode/src/vs/workbench/api/browser/mainThreadBulkEdits.js +2 -1
- package/vscode/src/vs/workbench/api/browser/mainThreadChatAgents2.js +72 -8
- package/vscode/src/vs/workbench/api/browser/mainThreadChatVariables.js +3 -0
- package/vscode/src/vs/workbench/api/browser/mainThreadComments.js +25 -16
- package/vscode/src/vs/workbench/api/browser/mainThreadConfiguration.js +11 -9
- package/vscode/src/vs/workbench/api/browser/mainThreadCustomEditors.js +22 -14
- package/vscode/src/vs/workbench/api/browser/mainThreadDebugService.js +18 -7
- package/vscode/src/vs/workbench/api/browser/mainThreadDocuments.js +3 -2
- package/vscode/src/vs/workbench/api/browser/mainThreadDocumentsAndEditors.js +12 -6
- package/vscode/src/vs/workbench/api/browser/mainThreadEditor.js +14 -16
- package/vscode/src/vs/workbench/api/browser/mainThreadEditorTabs.js +38 -38
- package/vscode/src/vs/workbench/api/browser/mainThreadEmbeddings.js +73 -0
- package/vscode/src/vs/workbench/api/browser/mainThreadExtensionService.js +9 -7
- package/vscode/src/vs/workbench/api/browser/mainThreadFileSystem.js +5 -5
- package/vscode/src/vs/workbench/api/browser/mainThreadFileSystemEventService.js +18 -15
- package/vscode/src/vs/workbench/api/browser/mainThreadLanguageFeatures.js +28 -26
- package/vscode/src/vs/workbench/api/browser/mainThreadLanguageModels.js +8 -16
- package/vscode/src/vs/workbench/api/browser/mainThreadManagedSockets.js +4 -2
- package/vscode/src/vs/workbench/api/browser/mainThreadNotebookDto.js +2 -1
- package/vscode/src/vs/workbench/api/browser/mainThreadProgress.js +3 -2
- package/vscode/src/vs/workbench/api/browser/mainThreadSCM.js +42 -14
- package/vscode/src/vs/workbench/api/browser/mainThreadSearch.js +6 -17
- package/vscode/src/vs/workbench/api/browser/mainThreadSpeech.js +34 -0
- package/vscode/src/vs/workbench/api/browser/mainThreadStatusBar.js +4 -3
- package/vscode/src/vs/workbench/api/browser/mainThreadStorage.js +2 -1
- package/vscode/src/vs/workbench/api/browser/mainThreadTask.js +16 -16
- package/vscode/src/vs/workbench/api/browser/mainThreadTelemetry.js +2 -2
- package/vscode/src/vs/workbench/api/browser/mainThreadTerminalService.js +4 -3
- package/vscode/src/vs/workbench/api/browser/mainThreadTerminalShellIntegration.js +5 -4
- package/vscode/src/vs/workbench/api/browser/mainThreadTesting.js +8 -3
- package/vscode/src/vs/workbench/api/browser/mainThreadTunnelService.js +6 -1
- package/vscode/src/vs/workbench/api/browser/mainThreadWebviewPanels.js +3 -3
- package/vscode/src/vs/workbench/api/browser/mainThreadWorkspace.js +4 -4
- package/vscode/src/vs/workbench/contrib/customEditor/common/customTextEditorModel.js +2 -1
- package/vscode/src/vs/workbench/contrib/externalUriOpener/common/contributedOpeners.js +2 -1
- package/vscode/src/vs/workbench/services/extensionManagement/browser/extensionBisect.js +12 -10
- package/vscode/src/vs/workbench/services/extensions/browser/extensionService.js +27 -21
- package/vscode/src/vs/workbench/services/extensions/browser/webWorkerExtensionHost.js +15 -11
- package/vscode/src/vs/workbench/services/extensions/browser/webWorkerFileSystemProvider.js +2 -2
- package/vscode/src/vs/workbench/services/extensions/common/abstractExtensionService.js +19 -16
- package/vscode/src/vs/workbench/services/extensions/common/extensionHostManager.js +7 -6
- package/vscode/src/vs/workbench/services/extensions/common/extensionRunningLocationTracker.js +12 -12
- package/vscode/src/vs/workbench/services/extensions/common/extensionStorageMigration.js +3 -2
- package/vscode/src/vs/workbench/services/extensions/common/extensionsUtil.js +15 -2
- package/vscode/src/vs/workbench/services/extensions/common/lazyCreateExtensionHostManager.js +2 -2
- package/vscode/src/vs/workbench/services/extensions/common/remoteExtensionHost.js +10 -7
- package/vscode/src/vs/workbench/api/browser/mainThreadInlineChat.js +0 -72
|
@@ -1,17 +1,22 @@
|
|
|
1
1
|
import { __decorate, __param } from 'vscode/external/tslib/tslib.es6.js';
|
|
2
2
|
import { URI } from 'vscode/vscode/vs/base/common/uri';
|
|
3
3
|
import { Emitter, Event } from 'vscode/vscode/vs/base/common/event';
|
|
4
|
-
import { DisposableStore, dispose, combinedDisposable } from 'vscode/vscode/vs/base/common/lifecycle';
|
|
4
|
+
import { Disposable, DisposableStore, dispose, combinedDisposable } from 'vscode/vscode/vs/base/common/lifecycle';
|
|
5
5
|
import { ISCMService, ISCMViewService } from 'vscode/vscode/vs/workbench/contrib/scm/common/scm.service';
|
|
6
6
|
import { ExtHostContext, MainContext } from 'vscode/vscode/vs/workbench/api/common/extHost.protocol';
|
|
7
7
|
import { extHostNamedCustomer } from '../../services/extensions/common/extHostCustomers.js';
|
|
8
8
|
import { CancellationToken } from 'vscode/vscode/vs/base/common/cancellation';
|
|
9
|
+
import { MarshalledId } from 'vscode/vscode/vs/base/common/marshallingIds';
|
|
9
10
|
import { ThemeIcon } from 'vscode/vscode/vs/base/common/themables';
|
|
10
11
|
import { IQuickDiffService } from 'vscode/vscode/vs/workbench/contrib/scm/common/quickDiff.service';
|
|
11
12
|
import { ResourceTree } from 'vscode/vscode/vs/base/common/resourceTree';
|
|
12
13
|
import { IUriIdentityService } from 'vscode/vscode/vs/platform/uriIdentity/common/uriIdentity.service';
|
|
13
14
|
import { IWorkspaceContextService } from 'vscode/vscode/vs/platform/workspace/common/workspace.service';
|
|
14
15
|
import { basename } from 'vscode/vscode/vs/base/common/resources';
|
|
16
|
+
import { ILanguageService } from 'vscode/vscode/vs/editor/common/languages/language';
|
|
17
|
+
import { IModelService } from 'vscode/vscode/vs/editor/common/services/model';
|
|
18
|
+
import { ITextModelService } from 'vscode/vscode/vs/editor/common/services/resolverService';
|
|
19
|
+
import { Schemas } from 'vscode/vscode/vs/base/common/network';
|
|
15
20
|
|
|
16
21
|
function getIconFromIconDto(iconDto) {
|
|
17
22
|
if (iconDto === undefined) {
|
|
@@ -28,6 +33,21 @@ function getIconFromIconDto(iconDto) {
|
|
|
28
33
|
return { light: URI.revive(icon.light), dark: URI.revive(icon.dark) };
|
|
29
34
|
}
|
|
30
35
|
}
|
|
36
|
+
class SCMInputBoxContentProvider extends Disposable {
|
|
37
|
+
constructor(textModelService, modelService, languageService) {
|
|
38
|
+
super();
|
|
39
|
+
this.modelService = modelService;
|
|
40
|
+
this.languageService = languageService;
|
|
41
|
+
this._register(textModelService.registerTextModelContentProvider(Schemas.vscodeSourceControl, this));
|
|
42
|
+
}
|
|
43
|
+
async provideTextContent(resource) {
|
|
44
|
+
const existing = this.modelService.getModel(resource);
|
|
45
|
+
if (existing) {
|
|
46
|
+
return existing;
|
|
47
|
+
}
|
|
48
|
+
return this.modelService.createModel('', this.languageService.createById('scminput'), resource);
|
|
49
|
+
}
|
|
50
|
+
}
|
|
31
51
|
class MainThreadSCMResourceGroup {
|
|
32
52
|
get resourceTree() {
|
|
33
53
|
if (!this._resourceTree) {
|
|
@@ -57,7 +77,7 @@ class MainThreadSCMResourceGroup {
|
|
|
57
77
|
}
|
|
58
78
|
toJSON() {
|
|
59
79
|
return {
|
|
60
|
-
$mid:
|
|
80
|
+
$mid: MarshalledId.ScmResourceGroup,
|
|
61
81
|
sourceControlHandle: this.sourceControlHandle,
|
|
62
82
|
groupHandle: this.handle
|
|
63
83
|
};
|
|
@@ -95,7 +115,7 @@ class MainThreadSCMResource {
|
|
|
95
115
|
}
|
|
96
116
|
toJSON() {
|
|
97
117
|
return {
|
|
98
|
-
$mid:
|
|
118
|
+
$mid: MarshalledId.ScmResource,
|
|
99
119
|
sourceControlHandle: this.sourceControlHandle,
|
|
100
120
|
groupHandle: this.groupHandle,
|
|
101
121
|
handle: this.handle
|
|
@@ -141,7 +161,7 @@ class MainThreadSCMProvider {
|
|
|
141
161
|
get handle() { return this._handle; }
|
|
142
162
|
get label() { return this._label; }
|
|
143
163
|
get rootUri() { return this._rootUri; }
|
|
144
|
-
get
|
|
164
|
+
get inputBoxTextModel() { return this._inputBoxTextModel; }
|
|
145
165
|
get contextValue() { return this._providerId; }
|
|
146
166
|
get commitTemplate() { return this.features.commitTemplate || ''; }
|
|
147
167
|
get historyProvider() { return this._historyProvider; }
|
|
@@ -151,13 +171,13 @@ class MainThreadSCMProvider {
|
|
|
151
171
|
get count() { return this.features.count; }
|
|
152
172
|
get name() { return this._name ?? this._label; }
|
|
153
173
|
get onDidChangeStatusBarCommands() { return this._onDidChangeStatusBarCommands.event; }
|
|
154
|
-
constructor(proxy, _handle, _providerId, _label, _rootUri,
|
|
174
|
+
constructor(proxy, _handle, _providerId, _label, _rootUri, _inputBoxTextModel, _quickDiffService, _uriIdentService, _workspaceContextService) {
|
|
155
175
|
this.proxy = proxy;
|
|
156
176
|
this._handle = _handle;
|
|
157
177
|
this._providerId = _providerId;
|
|
158
178
|
this._label = _label;
|
|
159
179
|
this._rootUri = _rootUri;
|
|
160
|
-
this.
|
|
180
|
+
this._inputBoxTextModel = _inputBoxTextModel;
|
|
161
181
|
this._quickDiffService = _quickDiffService;
|
|
162
182
|
this._uriIdentService = _uriIdentService;
|
|
163
183
|
this._workspaceContextService = _workspaceContextService;
|
|
@@ -313,7 +333,7 @@ class MainThreadSCMProvider {
|
|
|
313
333
|
}
|
|
314
334
|
toJSON() {
|
|
315
335
|
return {
|
|
316
|
-
$mid:
|
|
336
|
+
$mid: MarshalledId.ScmProvider,
|
|
317
337
|
handle: this.handle
|
|
318
338
|
};
|
|
319
339
|
}
|
|
@@ -322,9 +342,12 @@ class MainThreadSCMProvider {
|
|
|
322
342
|
}
|
|
323
343
|
}
|
|
324
344
|
let MainThreadSCM = class MainThreadSCM {
|
|
325
|
-
constructor(extHostContext, scmService, scmViewService, quickDiffService, _uriIdentService, workspaceContextService) {
|
|
345
|
+
constructor(extHostContext, scmService, scmViewService, languageService, modelService, textModelService, quickDiffService, _uriIdentService, workspaceContextService) {
|
|
326
346
|
this.scmService = scmService;
|
|
327
347
|
this.scmViewService = scmViewService;
|
|
348
|
+
this.languageService = languageService;
|
|
349
|
+
this.modelService = modelService;
|
|
350
|
+
this.textModelService = textModelService;
|
|
328
351
|
this.quickDiffService = quickDiffService;
|
|
329
352
|
this._uriIdentService = _uriIdentService;
|
|
330
353
|
this.workspaceContextService = workspaceContextService;
|
|
@@ -332,6 +355,7 @@ let MainThreadSCM = class MainThreadSCM {
|
|
|
332
355
|
this._repositoryDisposables = ( new Map());
|
|
333
356
|
this._disposables = ( new DisposableStore());
|
|
334
357
|
this._proxy = ( extHostContext.getProxy(ExtHostContext.ExtHostSCM));
|
|
358
|
+
this._disposables.add(( new SCMInputBoxContentProvider(this.textModelService, this.modelService, this.languageService)));
|
|
335
359
|
}
|
|
336
360
|
dispose() {
|
|
337
361
|
dispose(( this._repositories.values()));
|
|
@@ -340,21 +364,22 @@ let MainThreadSCM = class MainThreadSCM {
|
|
|
340
364
|
this._repositoryDisposables.clear();
|
|
341
365
|
this._disposables.dispose();
|
|
342
366
|
}
|
|
343
|
-
$registerSourceControl(handle, id, label, rootUri, inputBoxDocumentUri) {
|
|
367
|
+
async $registerSourceControl(handle, id, label, rootUri, inputBoxDocumentUri) {
|
|
368
|
+
const inputBoxTextModelRef = await this.textModelService.createModelReference(URI.revive(inputBoxDocumentUri));
|
|
344
369
|
const provider = ( new MainThreadSCMProvider(
|
|
345
370
|
this._proxy,
|
|
346
371
|
handle,
|
|
347
372
|
id,
|
|
348
373
|
label,
|
|
349
374
|
rootUri ? URI.revive(rootUri) : undefined,
|
|
350
|
-
|
|
375
|
+
inputBoxTextModelRef.object.textEditorModel,
|
|
351
376
|
this.quickDiffService,
|
|
352
377
|
this._uriIdentService,
|
|
353
378
|
this.workspaceContextService
|
|
354
379
|
));
|
|
355
380
|
const repository = this.scmService.registerSCMProvider(provider);
|
|
356
381
|
this._repositories.set(handle, repository);
|
|
357
|
-
const disposable = combinedDisposable(Event.filter(this.scmViewService.onDidFocusRepository, r => r === repository)(_ => this._proxy.$setSelectedSourceControl(handle)), repository.input.onDidChange(({ value }) => this._proxy.$onInputBoxValueChange(handle, value)));
|
|
382
|
+
const disposable = combinedDisposable(inputBoxTextModelRef, Event.filter(this.scmViewService.onDidFocusRepository, r => r === repository)(_ => this._proxy.$setSelectedSourceControl(handle)), repository.input.onDidChange(({ value }) => this._proxy.$onInputBoxValueChange(handle, value)));
|
|
358
383
|
if (this.scmViewService.focusedRepository === repository) {
|
|
359
384
|
setTimeout(() => this._proxy.$setSelectedSourceControl(handle), 0);
|
|
360
385
|
}
|
|
@@ -485,9 +510,12 @@ MainThreadSCM = __decorate([
|
|
|
485
510
|
extHostNamedCustomer(MainContext.MainThreadSCM),
|
|
486
511
|
( __param(1, ISCMService)),
|
|
487
512
|
( __param(2, ISCMViewService)),
|
|
488
|
-
( __param(3,
|
|
489
|
-
( __param(4,
|
|
490
|
-
( __param(5,
|
|
513
|
+
( __param(3, ILanguageService)),
|
|
514
|
+
( __param(4, IModelService)),
|
|
515
|
+
( __param(5, ITextModelService)),
|
|
516
|
+
( __param(6, IQuickDiffService)),
|
|
517
|
+
( __param(7, IUriIdentityService)),
|
|
518
|
+
( __param(8, IWorkspaceContextService))
|
|
491
519
|
], MainThreadSCM);
|
|
492
520
|
|
|
493
521
|
export { MainThreadSCM };
|
|
@@ -5,6 +5,7 @@ import { URI } from 'vscode/vscode/vs/base/common/uri';
|
|
|
5
5
|
import { IConfigurationService } from 'vscode/vscode/vs/platform/configuration/common/configuration.service';
|
|
6
6
|
import { ITelemetryService } from 'vscode/vscode/vs/platform/telemetry/common/telemetry.service';
|
|
7
7
|
import { extHostNamedCustomer } from '../../services/extensions/common/extHostCustomers.js';
|
|
8
|
+
import { SearchProviderType, QueryType } from 'vscode/vscode/vs/workbench/services/search/common/search';
|
|
8
9
|
import { ISearchService } from 'vscode/vscode/vs/workbench/services/search/common/search.service';
|
|
9
10
|
import { ExtHostContext, MainContext } from 'vscode/vscode/vs/workbench/api/common/extHost.protocol';
|
|
10
11
|
import { revive } from 'vscode/vscode/vs/base/common/marshalling';
|
|
@@ -25,32 +26,20 @@ let MainThreadSearch = class MainThreadSearch {
|
|
|
25
26
|
this._searchProvider.clear();
|
|
26
27
|
}
|
|
27
28
|
$registerTextSearchProvider(handle, scheme) {
|
|
28
|
-
this._searchProvider.set(handle, ( new RemoteSearchProvider(
|
|
29
|
-
this._searchService,
|
|
30
|
-
1 ,
|
|
31
|
-
scheme,
|
|
32
|
-
handle,
|
|
33
|
-
this._proxy
|
|
34
|
-
)));
|
|
29
|
+
this._searchProvider.set(handle, ( new RemoteSearchProvider(this._searchService, SearchProviderType.text, scheme, handle, this._proxy)));
|
|
35
30
|
}
|
|
36
31
|
$registerAITextSearchProvider(handle, scheme) {
|
|
37
32
|
SearchContext.hasAIResultProvider.bindTo(this.contextKeyService).set(true);
|
|
38
33
|
this._searchProvider.set(handle, ( new RemoteSearchProvider(
|
|
39
34
|
this._searchService,
|
|
40
|
-
|
|
35
|
+
SearchProviderType.aiText,
|
|
41
36
|
scheme,
|
|
42
37
|
handle,
|
|
43
38
|
this._proxy
|
|
44
39
|
)));
|
|
45
40
|
}
|
|
46
41
|
$registerFileSearchProvider(handle, scheme) {
|
|
47
|
-
this._searchProvider.set(handle, ( new RemoteSearchProvider(
|
|
48
|
-
this._searchService,
|
|
49
|
-
0 ,
|
|
50
|
-
scheme,
|
|
51
|
-
handle,
|
|
52
|
-
this._proxy
|
|
53
|
-
)));
|
|
42
|
+
this._searchProvider.set(handle, ( new RemoteSearchProvider(this._searchService, SearchProviderType.file, scheme, handle, this._proxy)));
|
|
54
43
|
}
|
|
55
44
|
$unregisterProvider(handle) {
|
|
56
45
|
dispose(this._searchProvider.get(handle));
|
|
@@ -155,9 +144,9 @@ class RemoteSearchProvider {
|
|
|
155
144
|
}
|
|
156
145
|
_provideSearchResults(query, session, token) {
|
|
157
146
|
switch (query.type) {
|
|
158
|
-
case
|
|
147
|
+
case QueryType.File:
|
|
159
148
|
return this._proxy.$provideFileSearchResults(this._handle, session, query, token);
|
|
160
|
-
case
|
|
149
|
+
case QueryType.Text:
|
|
161
150
|
return this._proxy.$provideTextSearchResults(this._handle, session, query, token);
|
|
162
151
|
default:
|
|
163
152
|
return this._proxy.$provideAITextSearchResults(this._handle, session, query, token);
|
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
import { __decorate, __param } from 'vscode/external/tslib/tslib.es6.js';
|
|
2
|
+
import { raceCancellation } from 'vscode/vscode/vs/base/common/async';
|
|
2
3
|
import { Event, Emitter } from 'vscode/vscode/vs/base/common/event';
|
|
3
4
|
import { DisposableStore } from 'vscode/vscode/vs/base/common/lifecycle';
|
|
4
5
|
import { ILogService } from 'vscode/vscode/vs/platform/log/common/log.service';
|
|
5
6
|
import { ExtHostContext, MainContext } from 'vscode/vscode/vs/workbench/api/common/extHost.protocol';
|
|
7
|
+
import { TextToSpeechStatus } from 'vscode/vscode/vs/workbench/contrib/speech/common/speechService';
|
|
6
8
|
import { ISpeechService } from 'vscode/vscode/vs/workbench/contrib/speech/common/speechService.service';
|
|
7
9
|
import { extHostNamedCustomer } from '../../services/extensions/common/extHostCustomers.js';
|
|
8
10
|
|
|
@@ -12,6 +14,7 @@ let MainThreadSpeech = class MainThreadSpeech {
|
|
|
12
14
|
this.logService = logService;
|
|
13
15
|
this.providerRegistrations = ( new Map());
|
|
14
16
|
this.speechToTextSessions = ( new Map());
|
|
17
|
+
this.textToSpeechSessions = ( new Map());
|
|
15
18
|
this.keywordRecognitionSessions = ( new Map());
|
|
16
19
|
this.proxy = ( extHostContext.getProxy(ExtHostContext.ExtHostSpeech));
|
|
17
20
|
}
|
|
@@ -39,6 +42,31 @@ let MainThreadSpeech = class MainThreadSpeech {
|
|
|
39
42
|
onDidChange: onDidChange.event
|
|
40
43
|
};
|
|
41
44
|
},
|
|
45
|
+
createTextToSpeechSession: (token, options) => {
|
|
46
|
+
if (token.isCancellationRequested) {
|
|
47
|
+
return {
|
|
48
|
+
onDidChange: Event.None,
|
|
49
|
+
synthesize: async () => { }
|
|
50
|
+
};
|
|
51
|
+
}
|
|
52
|
+
const disposables = ( new DisposableStore());
|
|
53
|
+
const session = Math.random();
|
|
54
|
+
this.proxy.$createTextToSpeechSession(handle, session, options?.language);
|
|
55
|
+
const onDidChange = disposables.add(( new Emitter()));
|
|
56
|
+
this.textToSpeechSessions.set(session, { onDidChange });
|
|
57
|
+
disposables.add(token.onCancellationRequested(() => {
|
|
58
|
+
this.proxy.$cancelTextToSpeechSession(session);
|
|
59
|
+
this.textToSpeechSessions.delete(session);
|
|
60
|
+
disposables.dispose();
|
|
61
|
+
}));
|
|
62
|
+
return {
|
|
63
|
+
onDidChange: onDidChange.event,
|
|
64
|
+
synthesize: async (text) => {
|
|
65
|
+
await this.proxy.$synthesizeSpeech(session, text);
|
|
66
|
+
await raceCancellation(Event.toPromise(Event.filter(onDidChange.event, e => e.status === TextToSpeechStatus.Stopped)), token);
|
|
67
|
+
}
|
|
68
|
+
};
|
|
69
|
+
},
|
|
42
70
|
createKeywordRecognitionSession: token => {
|
|
43
71
|
if (token.isCancellationRequested) {
|
|
44
72
|
return {
|
|
@@ -77,6 +105,10 @@ let MainThreadSpeech = class MainThreadSpeech {
|
|
|
77
105
|
const providerSession = this.speechToTextSessions.get(session);
|
|
78
106
|
providerSession?.onDidChange.fire(event);
|
|
79
107
|
}
|
|
108
|
+
$emitTextToSpeechEvent(session, event) {
|
|
109
|
+
const providerSession = this.textToSpeechSessions.get(session);
|
|
110
|
+
providerSession?.onDidChange.fire(event);
|
|
111
|
+
}
|
|
80
112
|
$emitKeywordRecognitionEvent(session, event) {
|
|
81
113
|
const providerSession = this.keywordRecognitionSessions.get(session);
|
|
82
114
|
providerSession?.onDidChange.fire(event);
|
|
@@ -86,6 +118,8 @@ let MainThreadSpeech = class MainThreadSpeech {
|
|
|
86
118
|
this.providerRegistrations.clear();
|
|
87
119
|
this.speechToTextSessions.forEach(session => session.onDidChange.dispose());
|
|
88
120
|
this.speechToTextSessions.clear();
|
|
121
|
+
this.textToSpeechSessions.forEach(session => session.onDidChange.dispose());
|
|
122
|
+
this.textToSpeechSessions.clear();
|
|
89
123
|
this.keywordRecognitionSessions.forEach(session => session.onDidChange.dispose());
|
|
90
124
|
this.keywordRecognitionSessions.clear();
|
|
91
125
|
}
|
|
@@ -2,7 +2,8 @@ import { __decorate, __param } from 'vscode/external/tslib/tslib.es6.js';
|
|
|
2
2
|
import { ExtHostContext, MainContext } from 'vscode/vscode/vs/workbench/api/common/extHost.protocol';
|
|
3
3
|
import { extHostNamedCustomer } from '../../services/extensions/common/extHostCustomers.js';
|
|
4
4
|
import { DisposableStore, toDisposable } from 'vscode/vscode/vs/base/common/lifecycle';
|
|
5
|
-
import { IExtensionStatusBarItemService } from 'vscode/vscode/vs/workbench/api/browser/statusBarService';
|
|
5
|
+
import { StatusBarUpdateKind, IExtensionStatusBarItemService } from 'vscode/vscode/vs/workbench/api/browser/statusBarService';
|
|
6
|
+
import { StatusbarAlignment } from 'vscode/vscode/vs/workbench/services/statusbar/browser/statusbar';
|
|
6
7
|
|
|
7
8
|
let MainThreadStatusBar = class MainThreadStatusBar {
|
|
8
9
|
constructor(extHostContext, statusbarService) {
|
|
@@ -27,7 +28,7 @@ let MainThreadStatusBar = class MainThreadStatusBar {
|
|
|
27
28
|
tooltip: item.entry.tooltip,
|
|
28
29
|
command: typeof item.entry.command === 'string' ? item.entry.command : typeof item.entry.command === 'object' ? item.entry.command.id : undefined,
|
|
29
30
|
priority: item.priority,
|
|
30
|
-
alignLeft: item.alignment ===
|
|
31
|
+
alignLeft: item.alignment === StatusbarAlignment.LEFT,
|
|
31
32
|
accessibilityInformation: item.entry.ariaLabel ? { label: item.entry.ariaLabel, role: item.entry.role } : undefined
|
|
32
33
|
};
|
|
33
34
|
}
|
|
@@ -37,7 +38,7 @@ let MainThreadStatusBar = class MainThreadStatusBar {
|
|
|
37
38
|
}
|
|
38
39
|
$setEntry(entryId, id, extensionId, name, text, tooltip, command, color, backgroundColor, alignLeft, priority, accessibilityInformation) {
|
|
39
40
|
const kind = this.statusbarService.setOrUpdateEntry(entryId, id, extensionId, name, text, tooltip, command, color, backgroundColor, alignLeft, priority, accessibilityInformation);
|
|
40
|
-
if (kind ===
|
|
41
|
+
if (kind === StatusBarUpdateKind.DidDefine) {
|
|
41
42
|
this._store.add(toDisposable(() => this.statusbarService.unsetEntry(entryId)));
|
|
42
43
|
}
|
|
43
44
|
}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { __decorate, __param } from 'vscode/external/tslib/tslib.es6.js';
|
|
2
|
+
import { StorageScope } from 'vscode/vscode/vs/platform/storage/common/storage';
|
|
2
3
|
import { IStorageService } from 'vscode/vscode/vs/platform/storage/common/storage.service';
|
|
3
4
|
import { ExtHostContext, MainContext } from 'vscode/vscode/vs/workbench/api/common/extHost.protocol';
|
|
4
5
|
import { extHostNamedCustomer } from '../../services/extensions/common/extHostCustomers.js';
|
|
@@ -18,7 +19,7 @@ let MainThreadStorage = class MainThreadStorage {
|
|
|
18
19
|
this._storageListener = ( new DisposableStore());
|
|
19
20
|
this._sharedStorageKeysToWatch = ( new Map());
|
|
20
21
|
this._proxy = ( extHostContext.getProxy(ExtHostContext.ExtHostStorage));
|
|
21
|
-
this._storageListener.add(this._storageService.onDidChangeValue(
|
|
22
|
+
this._storageListener.add(this._storageService.onDidChangeValue(StorageScope.PROFILE, undefined, this._storageListener)(e => {
|
|
22
23
|
if (( this._sharedStorageKeysToWatch.has(e.key))) {
|
|
23
24
|
const rawState = this._extensionStorageService.getExtensionStateRaw(e.key, true);
|
|
24
25
|
if (typeof rawState === 'string') {
|
|
@@ -3,10 +3,10 @@ import { localizeWithPath } from 'vscode/vscode/vs/nls';
|
|
|
3
3
|
import { URI } from 'vscode/vscode/vs/base/common/uri';
|
|
4
4
|
import { generateUuid } from 'vscode/vscode/vs/base/common/uuid';
|
|
5
5
|
import { isString } from 'vscode/vscode/vs/base/common/types';
|
|
6
|
-
import { platform } from 'vscode/vscode/vs/base/common/platform';
|
|
6
|
+
import { platform, Platform } from 'vscode/vscode/vs/base/common/platform';
|
|
7
7
|
import { Disposable } from 'vscode/vscode/vs/base/common/lifecycle';
|
|
8
8
|
import { IWorkspaceContextService } from 'vscode/vscode/vs/platform/workspace/common/workspace.service';
|
|
9
|
-
import { TaskDefinition, PresentationOptions, RunOptions, CommandOptions, RuntimeType, TaskSourceKind, CustomTask, ContributedTask, ConfiguringTask } from 'vscode/vscode/vs/workbench/contrib/tasks/common/tasks';
|
|
9
|
+
import { TaskDefinition, PresentationOptions, RunOptions, CommandOptions, RuntimeType, TaskSourceKind, TaskScope, CustomTask, ContributedTask, ConfiguringTask, TaskEventKind } from 'vscode/vscode/vs/workbench/contrib/tasks/common/tasks';
|
|
10
10
|
import { ITaskService } from 'vscode/vscode/vs/workbench/contrib/tasks/common/taskService.service';
|
|
11
11
|
import { extHostNamedCustomer } from '../../services/extensions/common/extHostCustomers.js';
|
|
12
12
|
import { ExtHostContext, MainContext } from 'vscode/vscode/vs/workbench/api/common/extHost.protocol';
|
|
@@ -268,7 +268,7 @@ var TaskSourceDTO;
|
|
|
268
268
|
}
|
|
269
269
|
else if (value.kind === TaskSourceKind.Workspace) {
|
|
270
270
|
result.extensionId = '$core';
|
|
271
|
-
result.scope = value.config.workspaceFolder ? value.config.workspaceFolder.uri :
|
|
271
|
+
result.scope = value.config.workspaceFolder ? value.config.workspaceFolder.uri : TaskScope.Global;
|
|
272
272
|
}
|
|
273
273
|
return result;
|
|
274
274
|
}
|
|
@@ -276,13 +276,13 @@ var TaskSourceDTO;
|
|
|
276
276
|
function to(value, workspace) {
|
|
277
277
|
let scope;
|
|
278
278
|
let workspaceFolder;
|
|
279
|
-
if ((value.scope === undefined) || ((typeof value.scope === 'number') && (
|
|
279
|
+
if ((value.scope === undefined) || ((typeof value.scope === 'number') && (value.scope !== TaskScope.Global))) {
|
|
280
280
|
if (workspace.getWorkspace().folders.length === 0) {
|
|
281
|
-
scope =
|
|
281
|
+
scope = TaskScope.Global;
|
|
282
282
|
workspaceFolder = undefined;
|
|
283
283
|
}
|
|
284
284
|
else {
|
|
285
|
-
scope =
|
|
285
|
+
scope = TaskScope.Folder;
|
|
286
286
|
workspaceFolder = workspace.getWorkspace().folders[0];
|
|
287
287
|
}
|
|
288
288
|
}
|
|
@@ -290,7 +290,7 @@ var TaskSourceDTO;
|
|
|
290
290
|
scope = value.scope;
|
|
291
291
|
}
|
|
292
292
|
else {
|
|
293
|
-
scope =
|
|
293
|
+
scope = TaskScope.Folder;
|
|
294
294
|
workspaceFolder = workspace.getWorkspaceFolder(URI.revive(value.scope)) ?? undefined;
|
|
295
295
|
}
|
|
296
296
|
const result = {
|
|
@@ -439,11 +439,11 @@ let MainThreadTask = class MainThreadTask extends Disposable {
|
|
|
439
439
|
this._proxy = ( (extHostContext.getProxy(ExtHostContext.ExtHostTask)));
|
|
440
440
|
this._providers = ( (new Map()));
|
|
441
441
|
this._register(this._taskService.onDidStateChange(async (event) => {
|
|
442
|
-
if (event.kind ===
|
|
442
|
+
if (event.kind === TaskEventKind.Changed) {
|
|
443
443
|
return;
|
|
444
444
|
}
|
|
445
445
|
const task = event.__task;
|
|
446
|
-
if (event.kind ===
|
|
446
|
+
if (event.kind === TaskEventKind.Start) {
|
|
447
447
|
const execution = TaskExecutionDTO.from(task.getTaskExecution());
|
|
448
448
|
let resolvedDefinition = execution.task.definition;
|
|
449
449
|
if (execution.task?.execution && CustomExecutionDTO.is(execution.task.execution) && event.resolvedVariables) {
|
|
@@ -455,13 +455,13 @@ let MainThreadTask = class MainThreadTask extends Disposable {
|
|
|
455
455
|
}
|
|
456
456
|
this._proxy.$onDidStartTask(execution, event.terminalId, resolvedDefinition);
|
|
457
457
|
}
|
|
458
|
-
else if (event.kind ===
|
|
458
|
+
else if (event.kind === TaskEventKind.ProcessStarted) {
|
|
459
459
|
this._proxy.$onDidStartTaskProcess(TaskProcessStartedDTO.from(task.getTaskExecution(), event.processId));
|
|
460
460
|
}
|
|
461
|
-
else if (event.kind ===
|
|
461
|
+
else if (event.kind === TaskEventKind.ProcessEnded) {
|
|
462
462
|
this._proxy.$onDidEndTaskProcess(TaskProcessEndedDTO.from(task.getTaskExecution(), event.exitCode));
|
|
463
463
|
}
|
|
464
|
-
else if (event.kind ===
|
|
464
|
+
else if (event.kind === TaskEventKind.End) {
|
|
465
465
|
this._proxy.$OnDidEndTask(TaskExecutionDTO.from(task.getTaskExecution()));
|
|
466
466
|
}
|
|
467
467
|
}));
|
|
@@ -672,16 +672,16 @@ let MainThreadTask = class MainThreadTask extends Disposable {
|
|
|
672
672
|
let platform$1;
|
|
673
673
|
switch (info.platform) {
|
|
674
674
|
case 'Web':
|
|
675
|
-
platform$1 =
|
|
675
|
+
platform$1 = Platform.Web;
|
|
676
676
|
break;
|
|
677
677
|
case 'win32':
|
|
678
|
-
platform$1 =
|
|
678
|
+
platform$1 = Platform.Windows;
|
|
679
679
|
break;
|
|
680
680
|
case 'darwin':
|
|
681
|
-
platform$1 =
|
|
681
|
+
platform$1 = Platform.Mac;
|
|
682
682
|
break;
|
|
683
683
|
case 'linux':
|
|
684
|
-
platform$1 =
|
|
684
|
+
platform$1 = Platform.Linux;
|
|
685
685
|
break;
|
|
686
686
|
default:
|
|
687
687
|
platform$1 = platform;
|
|
@@ -3,7 +3,7 @@ import { Disposable } from 'vscode/vscode/vs/base/common/lifecycle';
|
|
|
3
3
|
import { IConfigurationService } from 'vscode/vscode/vs/platform/configuration/common/configuration.service';
|
|
4
4
|
import { IEnvironmentService } from 'vscode/vscode/vs/platform/environment/common/environment.service';
|
|
5
5
|
import { IProductService } from 'vscode/vscode/vs/platform/product/common/productService.service';
|
|
6
|
-
import { TELEMETRY_SETTING_ID, TELEMETRY_OLD_SETTING_ID } from 'vscode/vscode/vs/platform/telemetry/common/telemetry';
|
|
6
|
+
import { TELEMETRY_SETTING_ID, TELEMETRY_OLD_SETTING_ID, TelemetryLevel } from 'vscode/vscode/vs/platform/telemetry/common/telemetry';
|
|
7
7
|
import { ITelemetryService } from 'vscode/vscode/vs/platform/telemetry/common/telemetry.service';
|
|
8
8
|
import { supportsTelemetry } from 'vscode/vscode/vs/platform/telemetry/common/telemetryUtils';
|
|
9
9
|
import { extHostNamedCustomer } from '../../services/extensions/common/extHostCustomers.js';
|
|
@@ -31,7 +31,7 @@ let MainThreadTelemetry = class MainThreadTelemetry extends Disposable {
|
|
|
31
31
|
}
|
|
32
32
|
get telemetryLevel() {
|
|
33
33
|
if (!supportsTelemetry(this._productService, this._environmentService)) {
|
|
34
|
-
return
|
|
34
|
+
return TelemetryLevel.NONE;
|
|
35
35
|
}
|
|
36
36
|
return this._telemetryService.telemetryLevel;
|
|
37
37
|
}
|
|
@@ -5,7 +5,7 @@ import { extHostNamedCustomer } from '../../services/extensions/common/extHostCu
|
|
|
5
5
|
import { URI } from 'vscode/vscode/vs/base/common/uri';
|
|
6
6
|
import { IInstantiationService } from 'vscode/vscode/vs/platform/instantiation/common/instantiation';
|
|
7
7
|
import { ILogService } from 'vscode/vscode/vs/platform/log/common/log.service';
|
|
8
|
-
import { TerminalLocation, TerminalExitReason } from 'vscode/vscode/vs/platform/terminal/common/terminal';
|
|
8
|
+
import { TerminalLocation, TerminalExitReason, ProcessPropertyType } from 'vscode/vscode/vs/platform/terminal/common/terminal';
|
|
9
9
|
import { TerminalDataBufferer } from 'vscode/vscode/vs/platform/terminal/common/terminalDataBuffering';
|
|
10
10
|
import { ITerminalService, ITerminalGroupService, ITerminalEditorService } from 'vscode/vscode/vs/workbench/contrib/terminal/browser/terminal.service';
|
|
11
11
|
import { TerminalProcessExtHostProxy } from 'vscode/vscode/vs/workbench/contrib/terminal/browser/terminalProcessExtHostProxy';
|
|
@@ -18,6 +18,7 @@ import { Promises } from 'vscode/vscode/vs/base/common/async';
|
|
|
18
18
|
import { ITerminalLinkProviderService } from 'vscode/vscode/vs/workbench/contrib/terminalContrib/links/browser/links.service';
|
|
19
19
|
import { TerminalQuickFixType } from 'vscode/vscode/vs/workbench/contrib/terminalContrib/quickFix/browser/quickFix';
|
|
20
20
|
import { ITerminalQuickFixService } from 'vscode/vscode/vs/workbench/contrib/terminalContrib/quickFix/browser/quickFix.service';
|
|
21
|
+
import { TerminalCapability } from 'vscode/vscode/vs/platform/terminal/common/capabilities/capabilities';
|
|
21
22
|
|
|
22
23
|
let MainThreadTerminalService = class MainThreadTerminalService {
|
|
23
24
|
constructor(_extHostContext, _terminalService, _terminalLinkProviderService, _terminalQuickFixService, _instantiationService, _environmentVariableService, _logService, _terminalProfileResolverService, remoteAgentService, _terminalGroupService, _terminalEditorService, _terminalProfileService) {
|
|
@@ -189,7 +190,7 @@ let MainThreadTerminalService = class MainThreadTerminalService {
|
|
|
189
190
|
if (this._sendCommandEventListener.value) {
|
|
190
191
|
return;
|
|
191
192
|
}
|
|
192
|
-
const multiplexer = this._terminalService.createOnInstanceCapabilityEvent(
|
|
193
|
+
const multiplexer = this._terminalService.createOnInstanceCapabilityEvent(TerminalCapability.CommandDetection, capability => capability.onCommandFinished);
|
|
193
194
|
const sub = multiplexer.event(e => {
|
|
194
195
|
this._onDidExecuteCommand(e.instance.instanceId, {
|
|
195
196
|
commandLine: e.data.command,
|
|
@@ -322,7 +323,7 @@ let MainThreadTerminalService = class MainThreadTerminalService {
|
|
|
322
323
|
this._terminalProcessProxies.get(terminalId)?.emitReady(pid, cwd, windowsPty);
|
|
323
324
|
}
|
|
324
325
|
$sendProcessProperty(terminalId, property) {
|
|
325
|
-
if (property.type ===
|
|
326
|
+
if (property.type === ProcessPropertyType.Title) {
|
|
326
327
|
const instance = this._terminalService.getInstanceFromId(terminalId);
|
|
327
328
|
instance?.rename(property.value);
|
|
328
329
|
}
|
|
@@ -2,6 +2,7 @@ import { __decorate, __param } from 'vscode/external/tslib/tslib.es6.js';
|
|
|
2
2
|
import { Event } from 'vscode/vscode/vs/base/common/event';
|
|
3
3
|
import { Disposable, toDisposable } from 'vscode/vscode/vs/base/common/lifecycle';
|
|
4
4
|
import { URI } from 'vscode/vscode/vs/base/common/uri';
|
|
5
|
+
import { TerminalCapability } from 'vscode/vscode/vs/platform/terminal/common/capabilities/capabilities';
|
|
5
6
|
import { ExtHostContext, MainContext } from 'vscode/vscode/vs/workbench/api/common/extHost.protocol';
|
|
6
7
|
import { ITerminalService } from 'vscode/vscode/vs/workbench/contrib/terminal/browser/terminal.service';
|
|
7
8
|
import { IWorkbenchEnvironmentService } from 'vscode/vscode/vs/workbench/services/environment/common/environmentService.service';
|
|
@@ -21,11 +22,11 @@ let MainThreadTerminalShellIntegration = class MainThreadTerminalShellIntegratio
|
|
|
21
22
|
}));
|
|
22
23
|
const onDidAddCommandDetection = this._store.add(this._terminalService.createOnInstanceEvent(instance => {
|
|
23
24
|
return ( Event.map(Event.filter(instance.capabilities.onDidAddCapabilityType, e => {
|
|
24
|
-
return e ===
|
|
25
|
+
return e === TerminalCapability.CommandDetection;
|
|
25
26
|
}), () => instance));
|
|
26
27
|
})).event;
|
|
27
28
|
this._store.add(onDidAddCommandDetection(e => this._proxy.$shellIntegrationChange(e.instanceId)));
|
|
28
|
-
const commandDetectionStartEvent = this._store.add(this._terminalService.createOnInstanceCapabilityEvent(
|
|
29
|
+
const commandDetectionStartEvent = this._store.add(this._terminalService.createOnInstanceCapabilityEvent(TerminalCapability.CommandDetection, e => e.onCommandExecuted));
|
|
29
30
|
let currentCommand;
|
|
30
31
|
this._store.add(commandDetectionStartEvent.event(e => {
|
|
31
32
|
if (e.data === currentCommand) {
|
|
@@ -37,7 +38,7 @@ let MainThreadTerminalShellIntegration = class MainThreadTerminalShellIntegratio
|
|
|
37
38
|
instanceDataListeners.get(instanceId)?.dispose();
|
|
38
39
|
instanceDataListeners.set(instanceId, Event.accumulate(e.instance.onData, 50, this._store)(events => this._proxy.$shellExecutionData(instanceId, events.join())));
|
|
39
40
|
}));
|
|
40
|
-
const commandDetectionEndEvent = this._store.add(this._terminalService.createOnInstanceCapabilityEvent(
|
|
41
|
+
const commandDetectionEndEvent = this._store.add(this._terminalService.createOnInstanceCapabilityEvent(TerminalCapability.CommandDetection, e => e.onCommandFinished));
|
|
41
42
|
this._store.add(commandDetectionEndEvent.event(e => {
|
|
42
43
|
currentCommand = undefined;
|
|
43
44
|
const instanceId = e.instance.instanceId;
|
|
@@ -46,7 +47,7 @@ let MainThreadTerminalShellIntegration = class MainThreadTerminalShellIntegratio
|
|
|
46
47
|
this._proxy.$shellExecutionEnd(instanceId, e.data.command, convertToExtHostCommandLineConfidence(e.data), e.data.isTrusted, e.data.exitCode);
|
|
47
48
|
});
|
|
48
49
|
}));
|
|
49
|
-
const cwdChangeEvent = this._store.add(this._terminalService.createOnInstanceCapabilityEvent(
|
|
50
|
+
const cwdChangeEvent = this._store.add(this._terminalService.createOnInstanceCapabilityEvent(TerminalCapability.CwdDetection, e => e.onDidChangeCwd));
|
|
50
51
|
this._store.add(cwdChangeEvent.event(e => {
|
|
51
52
|
this._proxy.$cwdChange(e.instance.instanceId, this._convertCwdToUri(e.data));
|
|
52
53
|
}));
|
|
@@ -18,7 +18,7 @@ import { ITestProfileService } from 'vscode/vscode/vs/workbench/contrib/testing/
|
|
|
18
18
|
import { LiveTestResult } from 'vscode/vscode/vs/workbench/contrib/testing/common/testResult';
|
|
19
19
|
import { ITestResultService } from 'vscode/vscode/vs/workbench/contrib/testing/common/testResultService.service';
|
|
20
20
|
import { ITestService } from 'vscode/vscode/vs/workbench/contrib/testing/common/testService.service';
|
|
21
|
-
import { ITestItem, IFileCoverage, CoverageDetails, ITestMessage, TestsDiffOp } from 'vscode/vscode/vs/workbench/contrib/testing/common/testTypes';
|
|
21
|
+
import { TestRunProfileBitset, ITestItem, IFileCoverage, CoverageDetails, ITestMessage, TestsDiffOp } from 'vscode/vscode/vs/workbench/contrib/testing/common/testTypes';
|
|
22
22
|
import { extHostNamedCustomer } from '../../services/extensions/common/extHostCustomers.js';
|
|
23
23
|
import { ExtHostContext, MainContext } from 'vscode/vscode/vs/workbench/api/common/extHost.protocol';
|
|
24
24
|
|
|
@@ -32,12 +32,17 @@ let MainThreadTesting = class MainThreadTesting extends Disposable {
|
|
|
32
32
|
this.diffListener = this._register(( new MutableDisposable()));
|
|
33
33
|
this.testProviderRegistrations = ( new Map());
|
|
34
34
|
this.proxy = ( extHostContext.getProxy(ExtHostContext.ExtHostTesting));
|
|
35
|
+
this._register(this.testService.registerExtHost({
|
|
36
|
+
provideTestFollowups: (req, token) => this.proxy.$provideTestFollowups(req, token),
|
|
37
|
+
executeTestFollowup: id => this.proxy.$executeTestFollowup(id),
|
|
38
|
+
disposeTestFollowups: ids => this.proxy.$disposeTestFollowups(ids),
|
|
39
|
+
}));
|
|
35
40
|
this._register(this.testService.onDidCancelTestRun(({ runId }) => {
|
|
36
41
|
this.proxy.$cancelExtensionTestRun(runId);
|
|
37
42
|
}));
|
|
38
43
|
this._register(Event.debounce(testProfiles.onDidChange, (_last, e) => e)(() => {
|
|
39
44
|
const obj = {};
|
|
40
|
-
for (const group of [
|
|
45
|
+
for (const group of [TestRunProfileBitset.Run, TestRunProfileBitset.Debug, TestRunProfileBitset.Coverage]) {
|
|
41
46
|
for (const profile of this.testProfiles.getGroupDefaultProfiles(group)) {
|
|
42
47
|
obj[profile.controllerId] ??= [];
|
|
43
48
|
obj[profile.controllerId].push(profile.profileId);
|
|
@@ -100,7 +105,7 @@ let MainThreadTesting = class MainThreadTesting extends Disposable {
|
|
|
100
105
|
transaction(tx => {
|
|
101
106
|
let value = task.coverage.read(undefined);
|
|
102
107
|
if (!value) {
|
|
103
|
-
value = ( new TestCoverage(taskId, this.uriIdentityService, {
|
|
108
|
+
value = ( new TestCoverage(run, taskId, this.uriIdentityService, {
|
|
104
109
|
getCoverageDetails: (id, token) => this.proxy.$getCoverageDetails(id, token)
|
|
105
110
|
.then(r => ( r.map(CoverageDetails.deserialize))),
|
|
106
111
|
}));
|
|
@@ -3,7 +3,7 @@ import { localizeWithPath } from 'vscode/vscode/vs/nls';
|
|
|
3
3
|
import { ExtHostContext, CandidatePortSource, MainContext } from 'vscode/vscode/vs/workbench/api/common/extHost.protocol';
|
|
4
4
|
import { TunnelDtoConverter } from 'vscode/vscode/vs/workbench/api/common/extHostTunnelService';
|
|
5
5
|
import { extHostNamedCustomer } from '../../services/extensions/common/extHostCustomers.js';
|
|
6
|
-
import { PORT_AUTO_FORWARD_SETTING, PORT_AUTO_SOURCE_SETTING, PORT_AUTO_SOURCE_SETTING_OUTPUT } from 'vscode/vscode/vs/workbench/services/remote/common/remoteExplorerService';
|
|
6
|
+
import { PORT_AUTO_FORWARD_SETTING, PORT_AUTO_SOURCE_SETTING, PORT_AUTO_SOURCE_SETTING_OUTPUT, PORT_AUTO_SOURCE_SETTING_HYBRID } from 'vscode/vscode/vs/workbench/services/remote/common/remoteExplorerService';
|
|
7
7
|
import { IRemoteExplorerService } from 'vscode/vscode/vs/workbench/services/remote/common/remoteExplorerService.service';
|
|
8
8
|
import { TunnelProtocol } from 'vscode/vscode/vs/platform/tunnel/common/tunnel';
|
|
9
9
|
import { ITunnelService } from 'vscode/vscode/vs/platform/tunnel/common/tunnel.service';
|
|
@@ -206,6 +206,11 @@ let MainThreadTunnelService = class MainThreadTunnelService extends Disposable {
|
|
|
206
206
|
.registerDefaultConfigurations([{ overrides: { 'remote.autoForwardPortsSource': PORT_AUTO_SOURCE_SETTING_OUTPUT } }]);
|
|
207
207
|
break;
|
|
208
208
|
}
|
|
209
|
+
case CandidatePortSource.Hybrid: {
|
|
210
|
+
( (Registry.as(Extensions.Configuration)))
|
|
211
|
+
.registerDefaultConfigurations([{ overrides: { 'remote.autoForwardPortsSource': PORT_AUTO_SOURCE_SETTING_HYBRID } }]);
|
|
212
|
+
break;
|
|
213
|
+
}
|
|
209
214
|
}
|
|
210
215
|
}).catch(() => {
|
|
211
216
|
});
|
|
@@ -14,7 +14,7 @@ import { ExtensionKeyedWebviewOriginStore } from 'vscode/vscode/vs/workbench/con
|
|
|
14
14
|
import { WebviewInput } from 'vscode/vscode/vs/workbench/contrib/webviewPanel/browser/webviewEditorInput';
|
|
15
15
|
import { IWebviewWorkbenchService } from 'vscode/vscode/vs/workbench/contrib/webviewPanel/browser/webviewWorkbenchService.service';
|
|
16
16
|
import { editorGroupToColumn } from 'vscode/vscode/vs/workbench/services/editor/common/editorGroupColumn';
|
|
17
|
-
import { preferredSideBySideGroupDirection } from 'vscode/vscode/vs/workbench/services/editor/common/editorGroupsService';
|
|
17
|
+
import { GroupsOrder, GroupLocation, preferredSideBySideGroupDirection } from 'vscode/vscode/vs/workbench/services/editor/common/editorGroupsService';
|
|
18
18
|
import { IEditorGroupsService } from 'vscode/vscode/vs/workbench/services/editor/common/editorGroupsService.service';
|
|
19
19
|
import { ACTIVE_GROUP, SIDE_GROUP } from 'vscode/vscode/vs/workbench/services/editor/common/editorService';
|
|
20
20
|
import { IEditorService } from 'vscode/vscode/vs/workbench/services/editor/common/editorService.service';
|
|
@@ -160,11 +160,11 @@ let MainThreadWebviewPanels = class MainThreadWebviewPanels extends Disposable {
|
|
|
160
160
|
return SIDE_GROUP;
|
|
161
161
|
}
|
|
162
162
|
if (showOptions.viewColumn >= 0) {
|
|
163
|
-
const groupInColumn = this._editorGroupService.getGroups(
|
|
163
|
+
const groupInColumn = this._editorGroupService.getGroups(GroupsOrder.GRID_APPEARANCE)[showOptions.viewColumn];
|
|
164
164
|
if (groupInColumn) {
|
|
165
165
|
return groupInColumn.id;
|
|
166
166
|
}
|
|
167
|
-
const newGroup = this._editorGroupService.findGroup({ location:
|
|
167
|
+
const newGroup = this._editorGroupService.findGroup({ location: GroupLocation.LAST });
|
|
168
168
|
if (newGroup) {
|
|
169
169
|
const direction = preferredSideBySideGroupDirection(this._configurationService);
|
|
170
170
|
return this._editorGroupService.addGroup(newGroup, direction);
|