@codingame/monaco-vscode-api 1.83.15 → 1.85.0-next.0
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/README.md +430 -0
- package/api.js +13 -7
- package/assets/clear.mp3 +0 -0
- package/assets/format.mp3 +0 -0
- package/assets/save.mp3 +0 -0
- package/contributions.js +3 -0
- package/extensions.d.ts +13 -3
- package/external/{xterm-addon-image/typings/xterm-addon-image.d.ts → @xterm/addon-image/typings/addon-image.d.ts} +1 -1
- package/external/{xterm → @xterm/xterm}/typings/xterm.d.ts +13 -1
- package/lifecycle.js +2 -2
- package/localExtensionHost.js +6 -3
- package/missing-services.js +170 -22
- package/monaco-editor-treemending.patch +6884 -18018
- package/monaco-treemending.js +2 -2
- package/package.json +7 -7
- package/service-override/tools/editor.d.ts +8 -8
- package/service-override/tools/editor.js +44 -19
- package/services.d.ts +2 -2
- package/services.js +3 -3
- package/vscode/src/vs/base/browser/broadcast.js +6 -5
- package/vscode/src/vs/base/browser/dnd.d.ts +6 -0
- package/vscode/src/vs/base/browser/mouseEvent.d.ts +1 -1
- package/vscode/src/vs/base/browser/touch.d.ts +10 -0
- package/vscode/src/vs/base/browser/ui/actionbar/actionbar.d.ts +1 -0
- package/vscode/src/vs/base/browser/ui/iconLabel/iconHoverDelegate.d.ts +22 -15
- package/vscode/src/vs/base/browser/ui/menu/menubar.js +4 -3
- package/vscode/src/vs/base/browser/ui/splitview/paneview.css.js +1 -1
- package/vscode/src/vs/base/browser/ui/splitview/paneview.d.ts +3 -0
- package/vscode/src/vs/base/browser/ui/splitview/paneview.js +34 -11
- package/vscode/src/vs/base/common/actions.d.ts +1 -15
- package/vscode/src/vs/base/common/async.d.ts +1 -31
- package/vscode/src/vs/base/common/event.d.ts +2 -1
- package/vscode/src/vs/base/common/observableInternal/base.d.ts +23 -10
- package/vscode/src/vs/base/common/prefixTree.js +140 -0
- package/vscode/src/vs/base/common/product.d.ts +16 -2
- package/vscode/src/vs/base/common/resourceTree.js +135 -0
- package/vscode/src/vs/base/common/skipList.js +1 -0
- package/vscode/src/vs/base/common/tfIdf.js +137 -0
- package/vscode/src/vs/base/common/types.d.ts +13 -1
- package/vscode/src/vs/base/common/verifier.js +62 -0
- package/vscode/src/vs/editor/browser/editorBrowser.d.ts +4 -2
- package/vscode/src/vs/editor/common/config/editorOptions.d.ts +23 -4
- package/vscode/src/vs/editor/common/core/lineRange.d.ts +1 -0
- package/vscode/src/vs/editor/common/core/offsetRange.d.ts +3 -0
- package/vscode/src/vs/editor/common/core/position.d.ts +1 -0
- package/vscode/src/vs/editor/common/editorCommon.d.ts +2 -1
- package/vscode/src/vs/editor/common/languages.d.ts +23 -1
- package/vscode/src/vs/editor/common/services/languageFeatures.d.ts +2 -1
- package/vscode/src/vs/editor/common/services/resolverService.d.ts +11 -2
- package/vscode/src/vs/platform/accessibility/common/accessibility.d.ts +16 -1
- package/vscode/src/vs/platform/action/common/action.d.ts +8 -0
- package/vscode/src/vs/platform/actions/browser/dropdownWithPrimaryActionViewItem.js +4 -0
- package/vscode/src/vs/platform/actions/browser/floatingMenu.js +26 -2
- package/vscode/src/vs/platform/actions/common/actions.d.ts +8 -0
- package/vscode/src/vs/platform/audioCues/browser/audioCueService.d.ts +6 -0
- package/vscode/src/vs/platform/commands/common/commands.d.ts +13 -5
- package/vscode/src/vs/platform/dialogs/common/dialogs.d.ts +9 -3
- package/vscode/src/vs/platform/dialogs/common/dialogs.js +5 -2
- package/vscode/src/vs/platform/editor/common/editor.d.ts +3 -15
- package/vscode/src/vs/platform/extensionManagement/common/extensionManagement.d.ts +1 -0
- package/vscode/src/vs/platform/extensionManagement/common/extensionManagement.js +3 -15
- package/vscode/src/vs/platform/extensionManagement/common/implicitActivationEvents.js +5 -0
- package/vscode/src/vs/platform/extensions/common/extensions.d.ts +0 -1
- package/vscode/src/vs/platform/files/common/files.d.ts +72 -8
- package/vscode/src/vs/platform/files/common/watcher.js +77 -0
- package/vscode/src/vs/platform/keybinding/common/keybindingsRegistry.d.ts +2 -2
- package/vscode/src/vs/platform/layout/browser/layoutService.d.ts +52 -21
- package/vscode/src/vs/platform/request/browser/requestService.js +3 -0
- package/vscode/src/vs/platform/request/common/requestIpc.js +17 -0
- package/vscode/src/vs/platform/storage/common/storage.js +2 -2
- package/vscode/src/vs/platform/telemetry/common/telemetry.d.ts +1 -0
- package/vscode/src/vs/platform/terminal/common/capabilities/bufferMarkCapability.js +41 -0
- package/vscode/src/vs/platform/terminal/common/capabilities/capabilities.d.ts +12 -7
- package/vscode/src/vs/platform/terminal/common/capabilities/{commandDetectionCapability.d.ts → commandDetection/terminalCommand.d.ts} +3 -2
- package/vscode/src/vs/platform/terminal/common/capabilities/commandDetection/terminalCommand.js +257 -0
- package/vscode/src/vs/platform/terminal/common/capabilities/commandDetectionCapability.js +651 -0
- package/vscode/src/vs/platform/terminal/common/capabilities/cwdDetectionCapability.js +29 -0
- package/vscode/src/vs/platform/terminal/common/capabilities/partialCommandDetectionCapability.js +48 -0
- package/vscode/src/vs/platform/terminal/common/capabilities/terminalCapabilityStore.js +94 -0
- package/vscode/src/vs/platform/terminal/common/terminalEnvironment.js +37 -0
- package/vscode/src/vs/platform/terminal/common/terminalStrings.js +16 -0
- package/vscode/src/vs/platform/terminal/common/xterm/shellIntegrationAddon.js +319 -0
- package/vscode/src/vs/platform/window/common/window.d.ts +9 -2
- package/vscode/src/vs/platform/window/common/window.js +6 -1
- package/vscode/src/vs/platform/workspaces/common/workspaces.d.ts +2 -43
- package/vscode/src/vs/workbench/api/common/extHost.api.impl.js +113 -81
- package/vscode/src/vs/workbench/api/common/extHost.protocol.js +5 -4
- package/vscode/src/vs/workbench/api/common/extHostApiCommands.js +25 -3
- package/vscode/src/vs/workbench/api/common/extHostChat.js +13 -163
- package/vscode/src/vs/workbench/api/common/extHostChatAgents2.js +412 -0
- package/vscode/src/vs/workbench/api/common/extHostChatProvider.js +79 -11
- package/vscode/src/vs/workbench/api/common/extHostCommands.js +13 -12
- package/vscode/src/vs/workbench/api/common/extHostComments.js +1 -1
- package/vscode/src/vs/workbench/api/common/extHostEditorTabs.js +8 -6
- package/vscode/src/vs/workbench/api/common/extHostExtensionService.js +1 -1
- package/vscode/src/vs/workbench/api/common/extHostFileSystemEventService.js +36 -19
- package/vscode/src/vs/workbench/api/common/extHostInlineChat.js +52 -31
- package/vscode/src/vs/workbench/api/common/extHostIssueReporter.js +38 -0
- package/vscode/src/vs/workbench/api/common/extHostLanguageFeatures.js +28 -3
- package/vscode/src/vs/workbench/api/common/extHostLanguages.js +10 -0
- package/vscode/src/vs/workbench/api/common/extHostNotebook.js +117 -2
- package/vscode/src/vs/workbench/api/common/extHostNotebookKernels.js +32 -4
- package/vscode/src/vs/workbench/api/common/extHostSCM.js +85 -23
- package/vscode/src/vs/workbench/api/common/extHostSearch.js +3 -0
- package/vscode/src/vs/workbench/api/common/extHostSpeech.js +42 -0
- package/vscode/src/vs/workbench/api/common/extHostTask.js +2 -1
- package/vscode/src/vs/workbench/api/common/extHostTelemetry.js +1 -0
- package/vscode/src/vs/workbench/api/common/extHostTerminalService.js +3 -3
- package/vscode/src/vs/workbench/api/common/extHostTesting.js +97 -47
- package/vscode/src/vs/workbench/api/common/extHostTypeConverters.js +115 -16
- package/vscode/src/vs/workbench/api/common/extHostTypes.js +66 -36
- package/vscode/src/vs/workbench/api/common/extHostWorkspace.js +6 -1
- package/vscode/src/vs/workbench/browser/actions/layoutActions.js +182 -75
- package/vscode/src/vs/workbench/browser/actions/windowActions.js +176 -4
- package/vscode/src/vs/workbench/browser/actions/workspaceActions.js +143 -2
- package/vscode/src/vs/workbench/browser/actions/workspaceCommands.js +237 -0
- package/vscode/src/vs/workbench/browser/composite.d.ts +0 -4
- package/vscode/src/vs/workbench/browser/composite.js +5 -4
- package/vscode/src/vs/workbench/browser/dnd.js +72 -23
- package/vscode/src/vs/workbench/browser/labels.js +7 -3
- package/vscode/src/vs/workbench/browser/media/part.css.js +1 -1
- package/vscode/src/vs/workbench/browser/panecomposite.d.ts +2 -2
- package/vscode/src/vs/workbench/browser/panecomposite.js +2 -0
- package/vscode/src/vs/workbench/browser/part.js +33 -2
- package/vscode/src/vs/workbench/browser/parts/compositeBarActions.js +99 -117
- package/vscode/src/vs/workbench/browser/parts/editor/editor.contribution.js +173 -33
- package/vscode/src/vs/workbench/browser/parts/editor/editor.js +102 -6
- package/vscode/src/vs/workbench/browser/parts/editor/editorActions.js +256 -17
- package/vscode/src/vs/workbench/browser/parts/editor/editorAutoSave.js +4 -0
- package/vscode/src/vs/workbench/browser/parts/editor/editorCommands.js +68 -35
- package/vscode/src/vs/workbench/browser/parts/editor/editorPlaceholder.js +5 -5
- package/vscode/src/vs/workbench/browser/parts/editor/editorStatus.js +35 -16
- package/vscode/src/vs/workbench/browser/parts/editor/editorTabsControl.js +348 -0
- package/vscode/src/vs/workbench/browser/parts/editor/editorsObserver.js +43 -31
- package/vscode/src/vs/workbench/browser/parts/editor/media/editortabscontrol.css.js +4 -0
- package/vscode/src/vs/workbench/browser/parts/editor/sideBySideEditor.js +1 -0
- package/vscode/src/vs/workbench/browser/parts/editor/textCodeEditor.js +1 -0
- package/vscode/src/vs/workbench/browser/parts/editor/textDiffEditor.js +14 -2
- package/vscode/src/vs/workbench/browser/parts/editor/textEditor.js +4 -4
- package/vscode/src/vs/workbench/browser/parts/globalCompositeBar.js +277 -0
- package/vscode/src/vs/workbench/browser/parts/notifications/notificationsCommands.js +5 -2
- package/vscode/src/vs/workbench/browser/parts/panel/media/panelpart.css.js +1 -1
- package/vscode/src/vs/workbench/browser/parts/panel/panelActions.js +3 -38
- package/vscode/src/vs/workbench/browser/parts/statusbar/statusbarPart.d.ts +54 -52
- package/vscode/src/vs/workbench/browser/parts/titlebar/menubarControl.js +2 -1
- package/vscode/src/vs/workbench/browser/parts/titlebar/titlebarPart.d.ts +25 -0
- package/vscode/src/vs/workbench/browser/parts/titlebar/windowTitle.js +258 -0
- package/vscode/src/vs/workbench/browser/parts/views/media/paneviewlet.css.js +1 -1
- package/vscode/src/vs/workbench/browser/parts/views/viewPane.d.ts +2 -5
- package/vscode/src/vs/workbench/browser/parts/views/viewPane.js +157 -117
- package/vscode/src/vs/workbench/browser/parts/views/viewPaneContainer.js +50 -23
- package/vscode/src/vs/workbench/browser/parts/views/viewsService.js +26 -11
- package/vscode/src/vs/workbench/browser/parts/views/viewsViewlet.js +10 -6
- package/vscode/src/vs/workbench/browser/style.js +2 -1
- package/vscode/src/vs/workbench/browser/web.api.d.ts +39 -2
- package/vscode/src/vs/workbench/browser/window.js +55 -0
- package/vscode/src/vs/workbench/browser/workbench.contribution.js +220 -40
- package/vscode/src/vs/workbench/common/activity.js +3 -0
- package/vscode/src/vs/workbench/common/contextkeys.js +35 -5
- package/vscode/src/vs/workbench/common/contributions.js +4 -3
- package/vscode/src/vs/workbench/common/editor/diffEditorInput.js +14 -4
- package/vscode/src/vs/workbench/common/editor/diffEditorModel.js +1 -1
- package/vscode/src/vs/workbench/common/editor/editorGroupModel.js +22 -19
- package/vscode/src/vs/workbench/common/editor/editorInput.d.ts +4 -3
- package/vscode/src/vs/workbench/common/editor/editorModel.d.ts +1 -2
- package/vscode/src/vs/workbench/common/editor/sideBySideEditorInput.js +22 -4
- package/vscode/src/vs/workbench/common/editor/textResourceEditorInput.js +3 -3
- package/vscode/src/vs/workbench/common/editor.d.ts +60 -30
- package/vscode/src/vs/workbench/common/editor.js +11 -3
- package/vscode/src/vs/workbench/common/theme.js +2 -2
- package/vscode/src/vs/workbench/common/views.d.ts +4 -4
- package/vscode/src/vs/workbench/common/views.js +3 -1
- package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibilityConfiguration.js +97 -8
- package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibilityContributions.js +17 -99
- package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibleView.js +103 -37
- package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibleViewActions.js +2 -3
- package/vscode/src/vs/workbench/contrib/accessibility/browser/editorAccessibilityHelp.js +127 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatActions.js +71 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chat.js +2 -1
- package/vscode/src/vs/workbench/contrib/chat/common/chatAgents.js +33 -110
- package/vscode/src/vs/workbench/contrib/chat/common/chatContextKeys.js +64 -0
- package/vscode/src/vs/workbench/contrib/chat/common/chatParserTypes.js +94 -0
- package/vscode/src/vs/workbench/contrib/chat/common/chatService.js +6 -1
- package/vscode/src/vs/workbench/contrib/chat/common/chatSlashCommands.js +1 -88
- package/vscode/src/vs/workbench/contrib/codeActions/browser/codeActionsContribution.js +4 -4
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/diffEditorHelper.js +3 -2
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/quickaccess/gotoSymbolQuickAccess.js +3 -1
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/saveParticipants.js +15 -16
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/suggestEnabledInput/suggestEnabledInput.js +91 -1
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleWordWrap.js +9 -3
- package/vscode/src/vs/workbench/contrib/comments/browser/comments.contribution.js +3 -1
- package/vscode/src/vs/workbench/contrib/comments/browser/simpleCommentEditor.js +2 -3
- package/vscode/src/vs/workbench/contrib/customEditor/browser/customEditorInput.js +1 -0
- package/vscode/src/vs/workbench/contrib/debug/common/debug.d.ts +9 -1
- package/vscode/src/vs/workbench/contrib/debug/common/debug.js +10 -1
- package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsActions.js +114 -22
- package/vscode/src/vs/workbench/contrib/extensions/browser/media/extensionActions.css.js +1 -1
- package/vscode/src/vs/workbench/contrib/extensions/common/extensions.js +4 -1
- package/vscode/src/vs/workbench/contrib/files/browser/explorerFileContrib.js +19 -0
- package/vscode/src/vs/workbench/contrib/files/browser/explorerViewlet.js +10 -8
- package/vscode/src/vs/workbench/contrib/files/browser/fileActions.js +62 -10
- package/vscode/src/vs/workbench/contrib/files/browser/fileConstants.js +2 -1
- package/vscode/src/vs/workbench/contrib/files/browser/fileImportExport.js +9 -8
- package/vscode/src/vs/workbench/contrib/files/browser/files.contribution.js +10 -1
- package/vscode/src/vs/workbench/contrib/files/browser/files.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/files/browser/files.js +7 -3
- package/vscode/src/vs/workbench/contrib/files/browser/views/emptyView.js +4 -4
- package/vscode/src/vs/workbench/contrib/files/browser/views/explorerView.js +64 -36
- package/vscode/src/vs/workbench/contrib/files/browser/views/explorerViewer.js +42 -17
- package/vscode/src/vs/workbench/contrib/files/browser/views/openEditorsView.js +145 -25
- package/vscode/src/vs/workbench/contrib/format/browser/formatActionsMultiple.js +423 -0
- package/vscode/src/vs/workbench/contrib/format/browser/formatActionsNone.js +82 -0
- package/vscode/src/vs/workbench/contrib/format/browser/formatModified.js +1 -1
- package/vscode/src/vs/workbench/contrib/inlineChat/common/inlineChat.js +36 -0
- package/vscode/src/vs/workbench/contrib/notebook/common/notebookCommon.js +3 -1
- package/vscode/src/vs/workbench/contrib/preferences/common/preferences.js +24 -3
- package/vscode/src/vs/workbench/contrib/scm/browser/dirtydiffDecorator.js +11 -6
- package/vscode/src/vs/workbench/contrib/scm/common/scm.js +1 -2
- package/vscode/src/vs/workbench/contrib/search/browser/notebookSearch/searchNotebookHelpers.js +31 -0
- package/vscode/src/vs/workbench/contrib/search/browser/searchModel.js +61 -41
- package/vscode/src/vs/workbench/contrib/search/{browser/searchNotebookHelpers.js → common/cellSearchModel.js} +4 -63
- package/vscode/src/vs/workbench/contrib/search/common/searchNotebookHelpers.js +40 -0
- package/vscode/src/vs/workbench/contrib/snippets/browser/snippetsFile.js +2 -2
- package/vscode/src/vs/workbench/contrib/speech/common/speechService.js +3 -0
- package/vscode/src/vs/workbench/contrib/terminal/browser/detachedTerminal.js +92 -0
- package/vscode/src/vs/workbench/contrib/terminal/browser/terminal.d.ts +100 -79
- package/vscode/src/vs/workbench/contrib/terminal/browser/terminalConfigHelper.d.ts +3 -3
- package/vscode/src/vs/workbench/contrib/terminal/browser/terminalEditorInput.js +1 -1
- package/vscode/src/vs/workbench/contrib/terminal/browser/terminalExtensions.js +25 -0
- package/vscode/src/vs/workbench/contrib/terminal/browser/terminalIcon.js +7 -4
- package/vscode/src/vs/workbench/contrib/terminal/browser/terminalIcons.js +64 -0
- package/vscode/src/vs/workbench/contrib/terminal/browser/widgets/widgetManager.js +36 -0
- package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/decorationAddon.js +540 -0
- package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/decorationStyles.js +104 -0
- package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/markNavigationAddon.js +518 -0
- package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/suggestAddon.js +390 -0
- package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/xtermTerminal.d.ts +17 -11
- package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/xtermTerminal.js +814 -0
- package/vscode/src/vs/workbench/contrib/terminal/browser/xterm-private.d.ts +5 -2
- package/vscode/src/vs/workbench/contrib/terminal/common/terminal.d.ts +2 -8
- package/vscode/src/vs/workbench/contrib/terminal/common/terminal.js +2 -0
- package/vscode/src/vs/workbench/contrib/testing/common/getComputedState.js +101 -0
- package/vscode/src/vs/workbench/contrib/testing/common/observableValue.js +30 -0
- package/vscode/src/vs/workbench/contrib/testing/common/storedValue.js +36 -0
- package/vscode/src/vs/workbench/contrib/testing/common/testCoverage.js +115 -0
- package/vscode/src/vs/workbench/contrib/testing/common/testCoverageService.js +74 -0
- package/vscode/src/vs/workbench/contrib/testing/common/testExplorerFilterState.js +116 -0
- package/vscode/src/vs/workbench/contrib/testing/common/testProfileService.js +172 -1
- package/vscode/src/vs/workbench/contrib/testing/common/testResult.js +384 -0
- package/vscode/src/vs/workbench/contrib/testing/common/testResultService.js +156 -1
- package/vscode/src/vs/workbench/contrib/testing/common/testResultStorage.js +156 -0
- package/vscode/src/vs/workbench/contrib/testing/common/testService.js +75 -1
- package/vscode/src/vs/workbench/contrib/testing/common/testTypes.js +72 -1
- package/vscode/src/vs/workbench/contrib/testing/common/testingContextKeys.js +188 -0
- package/vscode/src/vs/workbench/contrib/testing/common/testingContinuousRunService.js +102 -0
- package/vscode/src/vs/workbench/contrib/testing/common/testingDecorations.js +29 -0
- package/vscode/src/vs/workbench/{services/editor/browser/editorDropService.js → contrib/testing/common/testingPeekOpener.js} +2 -2
- package/vscode/src/vs/workbench/contrib/testing/common/testingStates.js +47 -0
- package/vscode/src/vs/workbench/contrib/webview/browser/webviewWindowDragMonitor.js +4 -3
- package/vscode/src/vs/workbench/contrib/webviewPanel/browser/webviewEditor.js +8 -9
- package/vscode/src/vs/workbench/contrib/webviewPanel/browser/webviewEditorInput.js +1 -1
- package/vscode/src/vs/workbench/contrib/webviewPanel/browser/webviewIconManager.js +5 -2
- package/vscode/src/vs/workbench/services/activity/browser/activityService.d.ts +16 -10
- package/vscode/src/vs/workbench/services/activity/common/activity.d.ts +14 -1
- package/vscode/src/vs/workbench/services/activity/common/activity.js +1 -7
- package/vscode/src/vs/workbench/services/authentication/browser/authenticationService.js +9 -28
- package/vscode/src/vs/workbench/services/auxiliaryWindow/browser/auxiliaryWindowService.js +273 -0
- package/vscode/src/vs/workbench/services/configurationResolver/common/configurationResolver.js +1 -0
- package/vscode/src/vs/workbench/services/configurationResolver/common/variableResolver.js +2 -0
- package/vscode/src/vs/workbench/services/decorations/browser/decorationsService.js +2 -3
- package/vscode/src/vs/workbench/services/editor/browser/editorService.d.ts +7 -5
- package/vscode/src/vs/workbench/services/editor/browser/editorService.js +59 -37
- package/vscode/src/vs/workbench/services/editor/common/editorGroupsService.d.ts +193 -94
- package/vscode/src/vs/workbench/services/editor/common/editorGroupsService.js +2 -2
- package/vscode/src/vs/workbench/services/editor/common/editorResolverService.d.ts +8 -2
- package/vscode/src/vs/workbench/services/editor/common/editorService.d.ts +8 -1
- package/vscode/src/vs/workbench/services/extensionRecommendations/common/workspaceExtensionsConfig.js +62 -16
- package/vscode/src/vs/workbench/services/extensions/browser/extensionUrlHandler.js +5 -3
- package/vscode/src/vs/workbench/services/extensions/common/abstractExtensionService.d.ts +3 -2
- package/vscode/src/vs/workbench/services/extensions/common/extensionDescriptionRegistry.js +4 -9
- package/vscode/src/vs/workbench/services/extensions/common/{extensionHostManager.d.ts → extensionHostManagers.d.ts} +2 -0
- package/vscode/src/vs/workbench/services/extensions/common/extensionRunningLocationTracker.d.ts +1 -1
- package/vscode/src/vs/workbench/services/extensions/common/extensions.d.ts +9 -0
- package/vscode/src/vs/workbench/services/extensions/common/extensions.js +22 -0
- package/vscode/src/vs/workbench/services/extensions/common/extensionsApiProposals.js +14 -3
- package/vscode/src/vs/workbench/services/extensions/common/extensionsRegistry.js +9 -0
- package/vscode/src/vs/workbench/services/filesConfiguration/common/filesConfigurationService.js +3 -3
- package/vscode/src/vs/workbench/services/history/common/history.d.ts +2 -2
- package/vscode/src/vs/workbench/services/host/browser/browserHostService.js +49 -18
- package/vscode/src/vs/workbench/services/host/browser/host.d.ts +29 -7
- package/vscode/src/vs/workbench/services/hover/browser/hover.d.ts +51 -28
- package/vscode/src/vs/workbench/services/hover/browser/hoverService.d.ts +5 -2
- package/vscode/src/vs/workbench/services/keybinding/browser/unboundCommands.js +2 -2
- package/vscode/src/vs/workbench/services/languageStatus/common/languageStatusService.d.ts +4 -1
- package/vscode/src/vs/workbench/services/layout/browser/layoutService.d.ts +40 -36
- package/vscode/src/vs/workbench/services/panecomposite/browser/panecomposite.d.ts +0 -6
- package/vscode/src/vs/workbench/services/preferences/common/preferences.d.ts +3 -0
- package/vscode/src/vs/workbench/services/progress/browser/progressIndicator.js +2 -2
- package/vscode/src/vs/workbench/services/remote/common/remoteExplorerService.d.ts +16 -1
- package/vscode/src/vs/workbench/services/request/browser/requestService.js +48 -0
- package/vscode/src/vs/workbench/services/search/common/searchHelpers.js +4 -4
- package/vscode/src/vs/workbench/services/statusbar/browser/statusbar.d.ts +10 -51
- package/vscode/src/vs/workbench/services/suggest/browser/media/suggest.css.js +4 -0
- package/vscode/src/vs/workbench/services/suggest/browser/simpleCompletionItem.js +10 -0
- package/vscode/src/vs/workbench/services/suggest/browser/simpleCompletionModel.js +98 -0
- package/vscode/src/vs/workbench/services/suggest/browser/simpleSuggestWidget.js +428 -0
- package/vscode/src/vs/workbench/services/suggest/browser/simpleSuggestWidgetRenderer.js +83 -0
- package/vscode/src/vs/workbench/services/textfile/browser/textFileService.js +32 -1
- package/vscode/src/vs/workbench/services/textfile/common/textEditorService.js +1 -5
- package/vscode/src/vs/workbench/services/themes/browser/browserHostColorSchemeService.js +4 -3
- package/vscode/src/vs/workbench/services/themes/common/iconExtensionPoint.js +9 -3
- package/vscode/src/vs/workbench/services/title/browser/titleService.d.ts +18 -0
- package/vscode/src/vs/workbench/services/untitled/common/untitledTextEditorInput.js +18 -3
- package/vscode/src/vs/workbench/services/untitled/common/untitledTextEditorModel.js +16 -7
- package/vscode/src/vs/workbench/services/untitled/common/untitledTextEditorService.d.ts +6 -0
- package/vscode/src/vs/workbench/services/untitled/common/untitledTextEditorService.js +13 -0
- package/vscode/src/vs/workbench/services/url/browser/urlService.js +2 -1
- package/vscode/src/vs/workbench/services/userActivity/common/userActivityService.js +2 -2
- package/vscode/src/vs/workbench/services/userDataProfile/common/userDataProfileIcons.js +9 -0
- package/vscode-dts/vscode.proposed.chatAgents2.d.ts +375 -0
- package/vscode-dts/vscode.proposed.chatAgents2Additions.d.ts +80 -0
- package/vscode-dts/vscode.proposed.chatProvider.d.ts +5 -1
- package/vscode-dts/vscode.proposed.chatRequestAccess.d.ts +68 -10
- package/vscode-dts/vscode.proposed.chatTab.d.ts +21 -0
- package/vscode-dts/vscode.proposed.chatVariables.d.ts +5 -1
- package/vscode-dts/vscode.proposed.codeActionAI.d.ts +16 -0
- package/vscode-dts/vscode.proposed.contribSourceControlInputBoxMenu.d.ts +7 -0
- package/vscode-dts/vscode.proposed.createFileSystemWatcher.d.ts +51 -0
- package/vscode-dts/vscode.proposed.defaultChatAgent.d.ts +30 -0
- package/vscode-dts/vscode.proposed.handleIssueUri.d.ts +26 -0
- package/vscode-dts/vscode.proposed.interactive.d.ts +26 -100
- package/vscode-dts/vscode.proposed.interactiveUserActions.d.ts +14 -7
- package/vscode-dts/vscode.proposed.languageStatusText.d.ts +12 -0
- package/vscode-dts/vscode.proposed.multiDocumentHighlightProvider.d.ts +63 -0
- package/vscode-dts/vscode.proposed.notebookVariableProvider.d.ts +43 -0
- package/vscode-dts/vscode.proposed.resolvers.d.ts +100 -1
- package/vscode-dts/vscode.proposed.scmHistoryProvider.d.ts +9 -1
- package/vscode-dts/vscode.proposed.scmInputBoxActionButton.d.ts +19 -0
- package/vscode-dts/vscode.proposed.scmInputBoxValueProvider.d.ts +25 -0
- package/vscode-dts/vscode.proposed.speech.d.ts +35 -0
- package/vscode-dts/vscode.proposed.terminalQuickFixProvider.d.ts +11 -7
- package/vscode-dts/vscode.proposed.testCoverage.d.ts +6 -1
- package/vscode-dts/vscode.proposed.testingActiveProfile.d.ts +21 -0
- package/external/xterm-headless/typings/xterm-headless.d.ts +0 -49
- package/vscode/src/vs/platform/backup/common/backup.d.ts +0 -14
- package/vscode/src/vs/platform/update/common/update.d.ts +0 -112
- package/vscode/src/vs/workbench/api/common/extHostChatAgents.js +0 -62
- package/vscode/src/vs/workbench/api/common/extHostChatSlashCommand.js +0 -62
- package/vscode/src/vs/workbench/browser/parts/paneCompositePart.d.ts +0 -56
- package/vscode/src/vs/workbench/services/files/common/files.js +0 -4
- package/vscode/src/vs/workbench/services/host/browser/browserHostService.d.ts +0 -41
- package/vscode/src/vs/workbench/services/title/common/titleService.d.ts +0 -31
- package/vscode-dts/vscode.proposed.chatAgents.d.ts +0 -39
- package/vscode-dts/vscode.proposed.chatSlashCommands.d.ts +0 -47
- package/vscode-dts/vscode.proposed.testMessageContextValue.d.ts +0 -45
- /package/external/{xterm-addon-canvas/typings/xterm-addon-canvas.d.ts → @xterm/addon-canvas/typings/addon-canvas.d.ts} +0 -0
- /package/external/{xterm-addon-search/typings/xterm-addon-search.d.ts → @xterm/addon-search/typings/addon-search.d.ts} +0 -0
- /package/external/{xterm-addon-serialize/typings/xterm-addon-serialize.d.ts → @xterm/addon-serialize/typings/addon-serialize.d.ts} +0 -0
- /package/external/{xterm-addon-unicode11/typings/xterm-addon-unicode11.d.ts → @xterm/addon-unicode11/typings/addon-unicode11.d.ts} +0 -0
- /package/external/{xterm-addon-webgl/typings/xterm-addon-webgl.d.ts → @xterm/addon-webgl/typings/addon-webgl.d.ts} +0 -0
- /package/vscode/src/vs/workbench/services/title/{common → browser}/titleService.js +0 -0
|
@@ -1,13 +1,16 @@
|
|
|
1
|
-
import { ServiceIdentifier } from '../../../../platform/instantiation/common/instantiation.js';
|
|
1
|
+
import { ServiceIdentifier, IInstantiationService } from '../../../../platform/instantiation/common/instantiation.js';
|
|
2
2
|
import { Event } from '../../../../base/common/event.js';
|
|
3
|
-
import { CloseDirection, IEditorPane, GroupIdentifier,
|
|
3
|
+
import { CloseDirection, IEditorPane, GroupIdentifier, IActiveEditorChangeEvent, IEditorCloseEvent, IEditorWillMoveEvent, IEditorWillOpenEvent, IVisibleEditorPane, EditorsOrder, IFindEditorOptions, EditorInputWithOptions, IUntypedEditorInput, IMatchEditorOptions, IEditorPartOptions, IEditorPartOptionsChangeEvent, IToolbarActions } from '../../../common/editor.js';
|
|
4
4
|
import { EditorInput } from '../../../common/editor/editorInput.js';
|
|
5
5
|
import { IEditorOptions } from '../../../../platform/editor/common/editor.js';
|
|
6
6
|
import { URI } from '../../../../base/common/uri.js';
|
|
7
7
|
import { IDimension } from '../../../../editor/common/core/dimension.js';
|
|
8
|
-
import { IDisposable } from '../../../../base/common/lifecycle.js';
|
|
8
|
+
import { DisposableStore, IDisposable } from '../../../../base/common/lifecycle.js';
|
|
9
9
|
import { IContextKeyService } from '../../../../platform/contextkey/common/contextkey.js';
|
|
10
10
|
import { IGroupModelChangeEvent } from '../../../common/editor/editorGroupModel.js';
|
|
11
|
+
import { IRectangle } from '../../../../platform/window/common/window.js';
|
|
12
|
+
import { IMenuChangeEvent } from '../../../../platform/actions/common/actions.js';
|
|
13
|
+
import { DeepPartial } from '../../../../base/common/types.js';
|
|
11
14
|
|
|
12
15
|
declare const enum GroupDirection {
|
|
13
16
|
UP = 0,
|
|
@@ -26,24 +29,24 @@ declare const enum GroupLocation {
|
|
|
26
29
|
PREVIOUS = 3
|
|
27
30
|
}
|
|
28
31
|
interface IFindGroupScope {
|
|
29
|
-
direction?: GroupDirection;
|
|
30
|
-
location?: GroupLocation;
|
|
32
|
+
readonly direction?: GroupDirection;
|
|
33
|
+
readonly location?: GroupLocation;
|
|
31
34
|
}
|
|
32
35
|
declare const enum GroupsArrangement {
|
|
33
36
|
/**
|
|
34
|
-
* Make the current active group consume the
|
|
35
|
-
*
|
|
37
|
+
* Make the current active group consume the entire
|
|
38
|
+
* editor area.
|
|
36
39
|
*/
|
|
37
40
|
MAXIMIZE = 0,
|
|
38
41
|
/**
|
|
39
|
-
*
|
|
42
|
+
* Make the current active group consume the maximum
|
|
43
|
+
* amount of space possible.
|
|
40
44
|
*/
|
|
41
|
-
|
|
45
|
+
EXPAND = 1,
|
|
42
46
|
/**
|
|
43
|
-
*
|
|
44
|
-
* group is not already maximized and EVEN otherwise
|
|
47
|
+
* Size all groups evenly.
|
|
45
48
|
*/
|
|
46
|
-
|
|
49
|
+
EVEN = 2
|
|
47
50
|
}
|
|
48
51
|
interface GroupLayoutArgument {
|
|
49
52
|
/**
|
|
@@ -52,22 +55,22 @@ interface GroupLayoutArgument {
|
|
|
52
55
|
* If provided, their sum must be 1 to be applied
|
|
53
56
|
* per row or column.
|
|
54
57
|
*/
|
|
55
|
-
size?: number;
|
|
58
|
+
readonly size?: number;
|
|
56
59
|
/**
|
|
57
60
|
* Editor groups will be laid out orthogonal to the
|
|
58
61
|
* parent orientation.
|
|
59
62
|
*/
|
|
60
|
-
groups?: GroupLayoutArgument[];
|
|
63
|
+
readonly groups?: GroupLayoutArgument[];
|
|
61
64
|
}
|
|
62
65
|
interface EditorGroupLayout {
|
|
63
66
|
/**
|
|
64
67
|
* The initial orientation of the editor groups at the root.
|
|
65
68
|
*/
|
|
66
|
-
orientation: GroupOrientation;
|
|
69
|
+
readonly orientation: GroupOrientation;
|
|
67
70
|
/**
|
|
68
71
|
* The editor groups at the root of the layout.
|
|
69
72
|
*/
|
|
70
|
-
groups: GroupLayoutArgument[];
|
|
73
|
+
readonly groups: GroupLayoutArgument[];
|
|
71
74
|
}
|
|
72
75
|
declare const enum MergeGroupMode {
|
|
73
76
|
COPY_EDITORS = 0,
|
|
@@ -75,29 +78,29 @@ declare const enum MergeGroupMode {
|
|
|
75
78
|
}
|
|
76
79
|
interface IMergeGroupOptions {
|
|
77
80
|
mode?: MergeGroupMode;
|
|
78
|
-
index?: number;
|
|
81
|
+
readonly index?: number;
|
|
79
82
|
}
|
|
80
83
|
interface ICloseEditorOptions {
|
|
81
|
-
preserveFocus?: boolean;
|
|
84
|
+
readonly preserveFocus?: boolean;
|
|
82
85
|
}
|
|
83
86
|
type ICloseEditorsFilter = {
|
|
84
|
-
except?: EditorInput;
|
|
85
|
-
direction?: CloseDirection;
|
|
86
|
-
savedOnly?: boolean;
|
|
87
|
-
excludeSticky?: boolean;
|
|
87
|
+
readonly except?: EditorInput;
|
|
88
|
+
readonly direction?: CloseDirection;
|
|
89
|
+
readonly savedOnly?: boolean;
|
|
90
|
+
readonly excludeSticky?: boolean;
|
|
88
91
|
};
|
|
89
92
|
interface ICloseAllEditorsOptions {
|
|
90
|
-
excludeSticky?: boolean;
|
|
93
|
+
readonly excludeSticky?: boolean;
|
|
91
94
|
}
|
|
92
95
|
interface IEditorReplacement {
|
|
93
|
-
editor: EditorInput;
|
|
94
|
-
replacement: EditorInput;
|
|
95
|
-
options?: IEditorOptions;
|
|
96
|
+
readonly editor: EditorInput;
|
|
97
|
+
readonly replacement: EditorInput;
|
|
98
|
+
readonly options?: IEditorOptions;
|
|
96
99
|
/**
|
|
97
100
|
* Skips asking the user for confirmation and doesn't
|
|
98
101
|
* save the document. Only use this if you really need to!
|
|
99
102
|
*/
|
|
100
|
-
forceReplaceDirty?: boolean;
|
|
103
|
+
readonly forceReplaceDirty?: boolean;
|
|
101
104
|
}
|
|
102
105
|
declare const enum GroupsOrder {
|
|
103
106
|
/**
|
|
@@ -122,10 +125,18 @@ interface IEditorSideGroup {
|
|
|
122
125
|
*/
|
|
123
126
|
openEditor(editor: EditorInput, options?: IEditorOptions): Promise<IEditorPane | undefined>;
|
|
124
127
|
}
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
128
|
+
interface IEditorDropTargetDelegate {
|
|
129
|
+
/**
|
|
130
|
+
* A helper to figure out if the drop target contains the provided group.
|
|
131
|
+
*/
|
|
132
|
+
containsGroup?(groupView: IEditorGroup): boolean;
|
|
133
|
+
}
|
|
134
|
+
/**
|
|
135
|
+
* The basic primitive to work with editor groups. This interface is both implemented
|
|
136
|
+
* by editor part component as well as the editor groups service that operates across
|
|
137
|
+
* all opened editor parts.
|
|
138
|
+
*/
|
|
139
|
+
interface IEditorGroupsContainer {
|
|
129
140
|
/**
|
|
130
141
|
* An event for when the active editor group changes. The active editor
|
|
131
142
|
* group is the default location for new editors to open.
|
|
@@ -147,14 +158,6 @@ interface IEditorGroupsService {
|
|
|
147
158
|
* An event for when a group gets activated.
|
|
148
159
|
*/
|
|
149
160
|
readonly onDidActivateGroup: Event<IEditorGroup>;
|
|
150
|
-
/**
|
|
151
|
-
* An event for when the group container is layed out.
|
|
152
|
-
*/
|
|
153
|
-
readonly onDidLayout: Event<IDimension>;
|
|
154
|
-
/**
|
|
155
|
-
* An event for when the group container is scrolled.
|
|
156
|
-
*/
|
|
157
|
-
readonly onDidScroll: Event<void>;
|
|
158
161
|
/**
|
|
159
162
|
* An event for when the index of a group changes.
|
|
160
163
|
*/
|
|
@@ -164,9 +167,9 @@ interface IEditorGroupsService {
|
|
|
164
167
|
*/
|
|
165
168
|
readonly onDidChangeGroupLocked: Event<IEditorGroup>;
|
|
166
169
|
/**
|
|
167
|
-
*
|
|
170
|
+
* An event for when the maximized state of a group changes.
|
|
168
171
|
*/
|
|
169
|
-
readonly
|
|
172
|
+
readonly onDidChangeGroupMaximized: Event<boolean>;
|
|
170
173
|
/**
|
|
171
174
|
* An active group is the default location for new editors to open.
|
|
172
175
|
*/
|
|
@@ -177,12 +180,13 @@ interface IEditorGroupsService {
|
|
|
177
180
|
*/
|
|
178
181
|
readonly sideGroup: IEditorSideGroup;
|
|
179
182
|
/**
|
|
180
|
-
* All groups that are currently visible in the
|
|
181
|
-
*
|
|
183
|
+
* All groups that are currently visible in the container in the order
|
|
184
|
+
* of their creation (oldest first).
|
|
182
185
|
*/
|
|
183
186
|
readonly groups: readonly IEditorGroup[];
|
|
184
187
|
/**
|
|
185
|
-
* The number of editor groups that are currently opened
|
|
188
|
+
* The number of editor groups that are currently opened in the
|
|
189
|
+
* container.
|
|
186
190
|
*/
|
|
187
191
|
readonly count: number;
|
|
188
192
|
/**
|
|
@@ -190,38 +194,7 @@ interface IEditorGroupsService {
|
|
|
190
194
|
*/
|
|
191
195
|
readonly orientation: GroupOrientation;
|
|
192
196
|
/**
|
|
193
|
-
*
|
|
194
|
-
* and are ready to be used.
|
|
195
|
-
*/
|
|
196
|
-
readonly isReady: boolean;
|
|
197
|
-
/**
|
|
198
|
-
* A promise that resolves when groups have been created
|
|
199
|
-
* and are ready to be used.
|
|
200
|
-
*
|
|
201
|
-
* Await this promise to safely work on the editor groups model
|
|
202
|
-
* (for example, install editor group listeners).
|
|
203
|
-
*
|
|
204
|
-
* Use the `whenRestored` property to await visible editors
|
|
205
|
-
* having fully resolved.
|
|
206
|
-
*/
|
|
207
|
-
readonly whenReady: Promise<void>;
|
|
208
|
-
/**
|
|
209
|
-
* A promise that resolves when groups have been restored.
|
|
210
|
-
*
|
|
211
|
-
* For groups with active editor, the promise will resolve
|
|
212
|
-
* when the visible editor has finished to resolve.
|
|
213
|
-
*
|
|
214
|
-
* Use the `whenReady` property to not await editors to
|
|
215
|
-
* resolve.
|
|
216
|
-
*/
|
|
217
|
-
readonly whenRestored: Promise<void>;
|
|
218
|
-
/**
|
|
219
|
-
* Find out if the editor group service has UI state to restore
|
|
220
|
-
* from a previous session.
|
|
221
|
-
*/
|
|
222
|
-
readonly hasRestorableState: boolean;
|
|
223
|
-
/**
|
|
224
|
-
* Get all groups that are currently visible in the editor area.
|
|
197
|
+
* Get all groups that are currently visible in the container.
|
|
225
198
|
*
|
|
226
199
|
* @param order the order of the editors to use
|
|
227
200
|
*/
|
|
@@ -249,25 +222,25 @@ interface IEditorGroupsService {
|
|
|
249
222
|
height: number;
|
|
250
223
|
}): void;
|
|
251
224
|
/**
|
|
252
|
-
* Arrange all groups according to the provided arrangement.
|
|
225
|
+
* Arrange all groups in the container according to the provided arrangement.
|
|
253
226
|
*/
|
|
254
|
-
arrangeGroups(arrangement: GroupsArrangement): void;
|
|
227
|
+
arrangeGroups(arrangement: GroupsArrangement, target?: IEditorGroup | GroupIdentifier): void;
|
|
255
228
|
/**
|
|
256
|
-
*
|
|
229
|
+
* Toggles the target goup size to maximize/unmaximize.
|
|
257
230
|
*/
|
|
258
|
-
|
|
231
|
+
toggleMaximizeGroup(group?: IEditorGroup | GroupIdentifier): void;
|
|
259
232
|
/**
|
|
260
|
-
*
|
|
233
|
+
* Toggles the target goup size to expand/distribute even.
|
|
261
234
|
*/
|
|
262
|
-
|
|
235
|
+
toggleExpandGroup(group?: IEditorGroup | GroupIdentifier): void;
|
|
263
236
|
/**
|
|
264
|
-
*
|
|
237
|
+
* Applies the provided layout by either moving existing groups or creating new groups.
|
|
265
238
|
*/
|
|
266
|
-
|
|
239
|
+
applyLayout(layout: EditorGroupLayout): void;
|
|
267
240
|
/**
|
|
268
|
-
*
|
|
241
|
+
* Returns an editor layout of the container.
|
|
269
242
|
*/
|
|
270
|
-
|
|
243
|
+
getLayout(): EditorGroupLayout;
|
|
271
244
|
/**
|
|
272
245
|
* Sets the orientation of the root group to be either vertical or horizontal.
|
|
273
246
|
*/
|
|
@@ -289,7 +262,7 @@ interface IEditorGroupsService {
|
|
|
289
262
|
*/
|
|
290
263
|
findGroup(scope: IFindGroupScope, source?: IEditorGroup | GroupIdentifier, wrap?: boolean): IEditorGroup | undefined;
|
|
291
264
|
/**
|
|
292
|
-
* Add a new group to the
|
|
265
|
+
* Add a new group to the container. A new group is added by splitting a provided one in
|
|
293
266
|
* one of the four directions.
|
|
294
267
|
*
|
|
295
268
|
* @param location the group from which to split to add a new group
|
|
@@ -297,11 +270,11 @@ interface IEditorGroupsService {
|
|
|
297
270
|
*/
|
|
298
271
|
addGroup(location: IEditorGroup | GroupIdentifier, direction: GroupDirection): IEditorGroup;
|
|
299
272
|
/**
|
|
300
|
-
* Remove a group from the
|
|
273
|
+
* Remove a group from the container.
|
|
301
274
|
*/
|
|
302
275
|
removeGroup(group: IEditorGroup | GroupIdentifier): void;
|
|
303
276
|
/**
|
|
304
|
-
* Move a group to a new group in the
|
|
277
|
+
* Move a group to a new group in the container.
|
|
305
278
|
*
|
|
306
279
|
* @param group the group to move
|
|
307
280
|
* @param location the group from which to split to add the moved group
|
|
@@ -322,11 +295,11 @@ interface IEditorGroupsService {
|
|
|
322
295
|
*/
|
|
323
296
|
mergeGroup(group: IEditorGroup | GroupIdentifier, target: IEditorGroup | GroupIdentifier, options?: IMergeGroupOptions): IEditorGroup;
|
|
324
297
|
/**
|
|
325
|
-
* Merge all editor groups into the
|
|
298
|
+
* Merge all editor groups into the target one.
|
|
326
299
|
*/
|
|
327
|
-
mergeAllGroups(): IEditorGroup;
|
|
300
|
+
mergeAllGroups(target: IEditorGroup | GroupIdentifier): IEditorGroup;
|
|
328
301
|
/**
|
|
329
|
-
* Copy a group to a new group in the
|
|
302
|
+
* Copy a group to a new group in the container.
|
|
330
303
|
*
|
|
331
304
|
* @param group the group to copy
|
|
332
305
|
* @param location the group from which to split to add the copied group
|
|
@@ -341,10 +314,132 @@ interface IEditorGroupsService {
|
|
|
341
314
|
* An event that notifies when editor part options change.
|
|
342
315
|
*/
|
|
343
316
|
readonly onDidChangeEditorPartOptions: Event<IEditorPartOptionsChangeEvent>;
|
|
317
|
+
/**
|
|
318
|
+
* Allows to register a drag and drop target for editors
|
|
319
|
+
* on the provided `container`.
|
|
320
|
+
*/
|
|
321
|
+
createEditorDropTarget(container: unknown, delegate: IEditorDropTargetDelegate): IDisposable;
|
|
322
|
+
}
|
|
323
|
+
/**
|
|
324
|
+
* An editor part is a viewer of editor groups. There can be multiple editor
|
|
325
|
+
* parts opened in multiple windows.
|
|
326
|
+
*/
|
|
327
|
+
interface IEditorPart extends IEditorGroupsContainer {
|
|
328
|
+
/**
|
|
329
|
+
* An event for when the editor part is layed out.
|
|
330
|
+
*/
|
|
331
|
+
readonly onDidLayout: Event<IDimension>;
|
|
332
|
+
/**
|
|
333
|
+
* An event for when the editor part is scrolled.
|
|
334
|
+
*/
|
|
335
|
+
readonly onDidScroll: Event<void>;
|
|
336
|
+
/**
|
|
337
|
+
* The size of the editor part.
|
|
338
|
+
*/
|
|
339
|
+
readonly contentDimension: IDimension;
|
|
340
|
+
/**
|
|
341
|
+
* A property that indicates when groups have been created
|
|
342
|
+
* and are ready to be used in the editor part.
|
|
343
|
+
*/
|
|
344
|
+
readonly isReady: boolean;
|
|
345
|
+
/**
|
|
346
|
+
* A promise that resolves when groups have been created
|
|
347
|
+
* and are ready to be used in the editor part.
|
|
348
|
+
*
|
|
349
|
+
* Await this promise to safely work on the editor groups model
|
|
350
|
+
* (for example, install editor group listeners).
|
|
351
|
+
*
|
|
352
|
+
* Use the `whenRestored` property to await visible editors
|
|
353
|
+
* having fully resolved.
|
|
354
|
+
*/
|
|
355
|
+
readonly whenReady: Promise<void>;
|
|
356
|
+
/**
|
|
357
|
+
* A promise that resolves when groups have been restored in
|
|
358
|
+
* the editor part.
|
|
359
|
+
*
|
|
360
|
+
* For groups with active editor, the promise will resolve
|
|
361
|
+
* when the visible editor has finished to resolve.
|
|
362
|
+
*
|
|
363
|
+
* Use the `whenReady` property to not await editors to
|
|
364
|
+
* resolve.
|
|
365
|
+
*/
|
|
366
|
+
readonly whenRestored: Promise<void>;
|
|
367
|
+
/**
|
|
368
|
+
* Find out if the editor part has UI state to restore
|
|
369
|
+
* from a previous session.
|
|
370
|
+
*/
|
|
371
|
+
readonly hasRestorableState: boolean;
|
|
372
|
+
/**
|
|
373
|
+
* Enable or disable centered editor layout.
|
|
374
|
+
*/
|
|
375
|
+
centerLayout(active: boolean): void;
|
|
376
|
+
/**
|
|
377
|
+
* Find out if the editor layout is currently centered.
|
|
378
|
+
*/
|
|
379
|
+
isLayoutCentered(): boolean;
|
|
344
380
|
/**
|
|
345
381
|
* Enforce editor part options temporarily.
|
|
346
382
|
*/
|
|
347
|
-
enforcePartOptions(options: IEditorPartOptions): IDisposable;
|
|
383
|
+
enforcePartOptions(options: DeepPartial<IEditorPartOptions>): IDisposable;
|
|
384
|
+
}
|
|
385
|
+
interface IAuxiliaryEditorPart extends IEditorPart {
|
|
386
|
+
/**
|
|
387
|
+
* The identifier of the window the auxiliary editor part is contained in.
|
|
388
|
+
*/
|
|
389
|
+
readonly windowId: number;
|
|
390
|
+
/**
|
|
391
|
+
* Close this auxiliary editor part after moving all
|
|
392
|
+
* editors of all groups back to the main editor part.
|
|
393
|
+
*/
|
|
394
|
+
close(): void;
|
|
395
|
+
}
|
|
396
|
+
interface IAuxiliaryEditorPartCreateEvent {
|
|
397
|
+
readonly part: IAuxiliaryEditorPart;
|
|
398
|
+
readonly instantiationService: IInstantiationService;
|
|
399
|
+
readonly disposables: DisposableStore;
|
|
400
|
+
}
|
|
401
|
+
|
|
402
|
+
declare const IEditorGroupsService: ServiceIdentifier<IEditorGroupsService>;
|
|
403
|
+
/**
|
|
404
|
+
* The main service to interact with editor groups across all opened editor parts.
|
|
405
|
+
*/
|
|
406
|
+
interface IEditorGroupsService extends IEditorGroupsContainer {
|
|
407
|
+
readonly _serviceBrand: undefined;
|
|
408
|
+
/**
|
|
409
|
+
* An event for when a new auxiliary editor part is created.
|
|
410
|
+
*/
|
|
411
|
+
readonly onDidCreateAuxiliaryEditorPart: Event<IAuxiliaryEditorPartCreateEvent>;
|
|
412
|
+
/**
|
|
413
|
+
* Provides access to the currently active editor part.
|
|
414
|
+
*/
|
|
415
|
+
readonly activePart: IEditorPart;
|
|
416
|
+
/**
|
|
417
|
+
* Provides access to the main window editor part.
|
|
418
|
+
*/
|
|
419
|
+
readonly mainPart: IEditorPart;
|
|
420
|
+
/**
|
|
421
|
+
* Provides access to all editor parts.
|
|
422
|
+
*/
|
|
423
|
+
readonly parts: ReadonlyArray<IEditorPart>;
|
|
424
|
+
/**
|
|
425
|
+
* Get the editor part that contains the group with the provided identifier.
|
|
426
|
+
*/
|
|
427
|
+
getPart(group: IEditorGroup | GroupIdentifier): IEditorPart;
|
|
428
|
+
/**
|
|
429
|
+
* Get the editor part that is rooted in the provided container.
|
|
430
|
+
*/
|
|
431
|
+
getPart(container: unknown): IEditorPart;
|
|
432
|
+
/**
|
|
433
|
+
* Opens a new window with a full editor part instantiated
|
|
434
|
+
* in there at the optional position and size on screen.
|
|
435
|
+
*/
|
|
436
|
+
createAuxiliaryEditorPart(options?: {
|
|
437
|
+
bounds?: Partial<IRectangle>;
|
|
438
|
+
}): Promise<IAuxiliaryEditorPart>;
|
|
439
|
+
}
|
|
440
|
+
interface IActiveEditorActions {
|
|
441
|
+
readonly actions: IToolbarActions;
|
|
442
|
+
readonly onDidChange: Event<IMenuChangeEvent | void>;
|
|
348
443
|
}
|
|
349
444
|
interface IEditorGroup {
|
|
350
445
|
/**
|
|
@@ -603,6 +698,10 @@ interface IEditorGroup {
|
|
|
603
698
|
* Move keyboard focus into the group.
|
|
604
699
|
*/
|
|
605
700
|
focus(): void;
|
|
701
|
+
/**
|
|
702
|
+
* Create the editor actions for the current active editor.
|
|
703
|
+
*/
|
|
704
|
+
createEditorActions(disposables: DisposableStore): IActiveEditorActions;
|
|
606
705
|
}
|
|
607
706
|
|
|
608
|
-
export { type EditorGroupLayout, GroupDirection, type GroupLayoutArgument, GroupLocation, GroupOrientation, GroupsArrangement, GroupsOrder, type ICloseAllEditorsOptions, type ICloseEditorOptions, type ICloseEditorsFilter, type IEditorGroup, IEditorGroupsService, type IEditorReplacement, type IEditorSideGroup, type IFindGroupScope, type IMergeGroupOptions, MergeGroupMode };
|
|
707
|
+
export { type EditorGroupLayout, GroupDirection, type GroupLayoutArgument, GroupLocation, GroupOrientation, GroupsArrangement, GroupsOrder, type IActiveEditorActions, type IAuxiliaryEditorPart, type IAuxiliaryEditorPartCreateEvent, type ICloseAllEditorsOptions, type ICloseEditorOptions, type ICloseEditorsFilter, type IEditorDropTargetDelegate, type IEditorGroup, type IEditorGroupsContainer, IEditorGroupsService, type IEditorPart, type IEditorReplacement, type IEditorSideGroup, type IFindGroupScope, type IMergeGroupOptions, MergeGroupMode };
|
|
@@ -23,8 +23,8 @@ var GroupLocation;
|
|
|
23
23
|
var GroupsArrangement;
|
|
24
24
|
( (function(GroupsArrangement) {
|
|
25
25
|
GroupsArrangement[GroupsArrangement["MAXIMIZE"] = 0] = "MAXIMIZE";
|
|
26
|
-
GroupsArrangement[GroupsArrangement["
|
|
27
|
-
GroupsArrangement[GroupsArrangement["
|
|
26
|
+
GroupsArrangement[GroupsArrangement["EXPAND"] = 1] = "EXPAND";
|
|
27
|
+
GroupsArrangement[GroupsArrangement["EVEN"] = 2] = "EVEN";
|
|
28
28
|
})(GroupsArrangement || (GroupsArrangement = {})));
|
|
29
29
|
var MergeGroupMode;
|
|
30
30
|
( (function(MergeGroupMode) {
|
|
@@ -4,7 +4,7 @@ import { Event } from '../../../../base/common/event.js';
|
|
|
4
4
|
import { IDisposable } from '../../../../base/common/lifecycle.js';
|
|
5
5
|
import { URI } from '../../../../base/common/uri.js';
|
|
6
6
|
import { IResourceEditorInput, ITextResourceEditorInput } from '../../../../platform/editor/common/editor.js';
|
|
7
|
-
import { IUntypedEditorInput, EditorInputWithOptionsAndGroup, IUntitledTextResourceEditorInput, IResourceDiffEditorInput, IResourceMergeEditorInput, EditorInputWithOptions } from '../../../common/editor.js';
|
|
7
|
+
import { IUntypedEditorInput, EditorInputWithOptionsAndGroup, IUntitledTextResourceEditorInput, IResourceDiffEditorInput, IResourceMultiDiffEditorInput, IResourceMergeEditorInput, EditorInputWithOptions } from '../../../common/editor.js';
|
|
8
8
|
import { IEditorGroup } from './editorGroupsService.js';
|
|
9
9
|
import { PreferredGroup } from './editorService.js';
|
|
10
10
|
import { AtLeastOne } from '../../../../base/common/types.js';
|
|
@@ -51,11 +51,13 @@ type EditorInputFactoryResult = EditorInputWithOptions | Promise<EditorInputWith
|
|
|
51
51
|
type EditorInputFactoryFunction = (editorInput: IResourceEditorInput | ITextResourceEditorInput, group: IEditorGroup) => EditorInputFactoryResult;
|
|
52
52
|
type UntitledEditorInputFactoryFunction = (untitledEditorInput: IUntitledTextResourceEditorInput, group: IEditorGroup) => EditorInputFactoryResult;
|
|
53
53
|
type DiffEditorInputFactoryFunction = (diffEditorInput: IResourceDiffEditorInput, group: IEditorGroup) => EditorInputFactoryResult;
|
|
54
|
+
type DiffListEditorInputFactoryFunction = (diffEditorInput: IResourceMultiDiffEditorInput, group: IEditorGroup) => EditorInputFactoryResult;
|
|
54
55
|
type MergeEditorInputFactoryFunction = (mergeEditorInput: IResourceMergeEditorInput, group: IEditorGroup) => EditorInputFactoryResult;
|
|
55
56
|
type EditorInputFactories = {
|
|
56
57
|
createEditorInput?: EditorInputFactoryFunction;
|
|
57
58
|
createUntitledEditorInput?: UntitledEditorInputFactoryFunction;
|
|
58
59
|
createDiffEditorInput?: DiffEditorInputFactoryFunction;
|
|
60
|
+
createMultiDiffEditorInput?: DiffListEditorInputFactoryFunction;
|
|
59
61
|
createMergeEditorInput?: MergeEditorInputFactoryFunction;
|
|
60
62
|
};
|
|
61
63
|
type EditorInputFactoryObject = AtLeastOne<EditorInputFactories>;
|
|
@@ -109,6 +111,10 @@ interface IEditorResolverService {
|
|
|
109
111
|
* A set of all the editors that are registered to the editor resolver.
|
|
110
112
|
*/
|
|
111
113
|
getEditors(): RegisteredEditorInfo[];
|
|
114
|
+
/**
|
|
115
|
+
* Get a complete list of editor associations.
|
|
116
|
+
*/
|
|
117
|
+
getAllUserAssociations(): EditorAssociations;
|
|
112
118
|
}
|
|
113
119
|
|
|
114
|
-
export { type DiffEditorInputFactoryFunction, type EditorAssociation, type EditorAssociations, type EditorInputFactoryFunction, type EditorInputFactoryObject, IEditorResolverService, type MergeEditorInputFactoryFunction, type RegisteredEditorInfo, type RegisteredEditorOptions, RegisteredEditorPriority, type ResolvedEditor, ResolvedStatus, type UntitledEditorInputFactoryFunction };
|
|
120
|
+
export { type DiffEditorInputFactoryFunction, type DiffListEditorInputFactoryFunction, type EditorAssociation, type EditorAssociations, type EditorInputFactoryFunction, type EditorInputFactoryObject, IEditorResolverService, type MergeEditorInputFactoryFunction, type RegisteredEditorInfo, type RegisteredEditorOptions, RegisteredEditorPriority, type ResolvedEditor, ResolvedStatus, type UntitledEditorInputFactoryFunction };
|
|
@@ -4,9 +4,10 @@ import { IEditorCloseEvent, IVisibleEditorPane, EditorsOrder, IEditorIdentifier,
|
|
|
4
4
|
import { EditorInput } from '../../../common/editor/editorInput.js';
|
|
5
5
|
import { Event } from '../../../../base/common/event.js';
|
|
6
6
|
import { IEditor, IDiffEditor } from '../../../../editor/common/editorCommon.js';
|
|
7
|
-
import { IEditorGroup, ICloseEditorOptions } from './editorGroupsService.js';
|
|
7
|
+
import { IEditorGroup, ICloseEditorOptions, IEditorGroupsContainer } from './editorGroupsService.js';
|
|
8
8
|
import { URI } from '../../../../base/common/uri.js';
|
|
9
9
|
import { IGroupModelChangeEvent } from '../../../common/editor/editorGroupModel.js';
|
|
10
|
+
import { DisposableStore } from '../../../../base/common/lifecycle.js';
|
|
10
11
|
|
|
11
12
|
/**
|
|
12
13
|
* Open an editor in the currently active group.
|
|
@@ -275,6 +276,12 @@ interface IEditorService {
|
|
|
275
276
|
* @returns `true` if all editors reverted and `false` otherwise.
|
|
276
277
|
*/
|
|
277
278
|
revertAll(options?: IRevertAllEditorsOptions): Promise<boolean>;
|
|
279
|
+
/**
|
|
280
|
+
* Create a scoped editor service that only operates on the provided
|
|
281
|
+
* editor group container. Use `main` to create a scoped editor service
|
|
282
|
+
* to the main editor group container of the main window.
|
|
283
|
+
*/
|
|
284
|
+
createScoped(editorGroupsContainer: IEditorGroupsContainer | 'main', disposables: DisposableStore): IEditorService;
|
|
278
285
|
}
|
|
279
286
|
|
|
280
287
|
export { ACTIVE_GROUP, type ACTIVE_GROUP_TYPE, type IBaseSaveRevertAllEditorOptions, IEditorService, type IEditorsChangeEvent, type IOpenEditorsOptions, type IRevertAllEditorsOptions, type ISaveAllEditorsOptions, type ISaveEditorsOptions, type ISaveEditorsResult, type IUntypedEditorReplacement, type PreferredGroup, SIDE_GROUP, type SIDE_GROUP_TYPE };
|
|
@@ -121,13 +121,22 @@ let WorkspaceExtensionsConfigService = class WorkspaceExtensionsConfigService ex
|
|
|
121
121
|
async addOrRemoveWorkspaceFolderRecommendation(extensionId, workspaceFolder, extensionsConfigContent, add) {
|
|
122
122
|
const values = [];
|
|
123
123
|
if (add) {
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
124
|
+
if (Array.isArray(extensionsConfigContent.recommendations)) {
|
|
125
|
+
values.push({ path: ['recommendations', -1], value: extensionId });
|
|
126
|
+
}
|
|
127
|
+
else {
|
|
128
|
+
values.push({ path: ['recommendations'], value: [extensionId] });
|
|
129
|
+
}
|
|
130
|
+
const unwantedRecommendationEdit = this.getEditToRemoveValueFromArray(['unwantedRecommendations'], extensionsConfigContent.unwantedRecommendations, extensionId);
|
|
131
|
+
if (unwantedRecommendationEdit) {
|
|
132
|
+
values.push(unwantedRecommendationEdit);
|
|
127
133
|
}
|
|
128
134
|
}
|
|
129
135
|
else if (extensionsConfigContent.recommendations) {
|
|
130
|
-
|
|
136
|
+
const recommendationEdit = this.getEditToRemoveValueFromArray(['recommendations'], extensionsConfigContent.recommendations, extensionId);
|
|
137
|
+
if (recommendationEdit) {
|
|
138
|
+
values.push(recommendationEdit);
|
|
139
|
+
}
|
|
131
140
|
}
|
|
132
141
|
if (values.length) {
|
|
133
142
|
return this.jsonEditingService.write(workspaceFolder.toResource(EXTENSIONS_CONFIG), values, true);
|
|
@@ -137,13 +146,23 @@ let WorkspaceExtensionsConfigService = class WorkspaceExtensionsConfigService ex
|
|
|
137
146
|
const values = [];
|
|
138
147
|
if (extensionsConfigContent) {
|
|
139
148
|
if (add) {
|
|
140
|
-
|
|
141
|
-
if (
|
|
142
|
-
values.push({ path: [
|
|
149
|
+
const path = ['extensions', 'recommendations'];
|
|
150
|
+
if (Array.isArray(extensionsConfigContent.recommendations)) {
|
|
151
|
+
values.push({ path: [...path, -1], value: extensionId });
|
|
152
|
+
}
|
|
153
|
+
else {
|
|
154
|
+
values.push({ path, value: [extensionId] });
|
|
155
|
+
}
|
|
156
|
+
const unwantedRecommendationEdit = this.getEditToRemoveValueFromArray(['extensions', 'unwantedRecommendations'], extensionsConfigContent.unwantedRecommendations, extensionId);
|
|
157
|
+
if (unwantedRecommendationEdit) {
|
|
158
|
+
values.push(unwantedRecommendationEdit);
|
|
143
159
|
}
|
|
144
160
|
}
|
|
145
161
|
else if (extensionsConfigContent.recommendations) {
|
|
146
|
-
|
|
162
|
+
const recommendationEdit = this.getEditToRemoveValueFromArray(['extensions', 'recommendations'], extensionsConfigContent.recommendations, extensionId);
|
|
163
|
+
if (recommendationEdit) {
|
|
164
|
+
values.push(recommendationEdit);
|
|
165
|
+
}
|
|
147
166
|
}
|
|
148
167
|
}
|
|
149
168
|
else if (add) {
|
|
@@ -156,13 +175,23 @@ let WorkspaceExtensionsConfigService = class WorkspaceExtensionsConfigService ex
|
|
|
156
175
|
async addOrRemoveWorkspaceFolderUnwantedRecommendation(extensionId, workspaceFolder, extensionsConfigContent, add) {
|
|
157
176
|
const values = [];
|
|
158
177
|
if (add) {
|
|
159
|
-
|
|
160
|
-
if (
|
|
161
|
-
values.push({ path: [
|
|
178
|
+
const path = ['unwantedRecommendations'];
|
|
179
|
+
if (Array.isArray(extensionsConfigContent.unwantedRecommendations)) {
|
|
180
|
+
values.push({ path: [...path, -1], value: extensionId });
|
|
181
|
+
}
|
|
182
|
+
else {
|
|
183
|
+
values.push({ path, value: [extensionId] });
|
|
184
|
+
}
|
|
185
|
+
const recommendationEdit = this.getEditToRemoveValueFromArray(['recommendations'], extensionsConfigContent.recommendations, extensionId);
|
|
186
|
+
if (recommendationEdit) {
|
|
187
|
+
values.push(recommendationEdit);
|
|
162
188
|
}
|
|
163
189
|
}
|
|
164
190
|
else if (extensionsConfigContent.unwantedRecommendations) {
|
|
165
|
-
|
|
191
|
+
const unwantedRecommendationEdit = this.getEditToRemoveValueFromArray(['unwantedRecommendations'], extensionsConfigContent.unwantedRecommendations, extensionId);
|
|
192
|
+
if (unwantedRecommendationEdit) {
|
|
193
|
+
values.push(unwantedRecommendationEdit);
|
|
194
|
+
}
|
|
166
195
|
}
|
|
167
196
|
if (values.length) {
|
|
168
197
|
return this.jsonEditingService.write(workspaceFolder.toResource(EXTENSIONS_CONFIG), values, true);
|
|
@@ -172,13 +201,23 @@ let WorkspaceExtensionsConfigService = class WorkspaceExtensionsConfigService ex
|
|
|
172
201
|
const values = [];
|
|
173
202
|
if (extensionsConfigContent) {
|
|
174
203
|
if (add) {
|
|
175
|
-
|
|
176
|
-
if (
|
|
177
|
-
values.push({ path: [
|
|
204
|
+
const path = ['extensions', 'unwantedRecommendations'];
|
|
205
|
+
if (Array.isArray(extensionsConfigContent.recommendations)) {
|
|
206
|
+
values.push({ path: [...path, -1], value: extensionId });
|
|
207
|
+
}
|
|
208
|
+
else {
|
|
209
|
+
values.push({ path, value: [extensionId] });
|
|
210
|
+
}
|
|
211
|
+
const recommendationEdit = this.getEditToRemoveValueFromArray(['extensions', 'recommendations'], extensionsConfigContent.recommendations, extensionId);
|
|
212
|
+
if (recommendationEdit) {
|
|
213
|
+
values.push(recommendationEdit);
|
|
178
214
|
}
|
|
179
215
|
}
|
|
180
216
|
else if (extensionsConfigContent.unwantedRecommendations) {
|
|
181
|
-
|
|
217
|
+
const unwantedRecommendationEdit = this.getEditToRemoveValueFromArray(['extensions', 'unwantedRecommendations'], extensionsConfigContent.unwantedRecommendations, extensionId);
|
|
218
|
+
if (unwantedRecommendationEdit) {
|
|
219
|
+
values.push(unwantedRecommendationEdit);
|
|
220
|
+
}
|
|
182
221
|
}
|
|
183
222
|
}
|
|
184
223
|
else if (add) {
|
|
@@ -243,6 +282,13 @@ let WorkspaceExtensionsConfigService = class WorkspaceExtensionsConfigService ex
|
|
|
243
282
|
unwantedRecommendations: distinct(( (extensionsConfigContent.unwantedRecommendations || []).map(e => e.toLowerCase())))
|
|
244
283
|
};
|
|
245
284
|
}
|
|
285
|
+
getEditToRemoveValueFromArray(path, array, value) {
|
|
286
|
+
const index = array?.indexOf(value);
|
|
287
|
+
if (index !== undefined && index !== -1) {
|
|
288
|
+
return { path: [...path, index], value: undefined };
|
|
289
|
+
}
|
|
290
|
+
return undefined;
|
|
291
|
+
}
|
|
246
292
|
};
|
|
247
293
|
WorkspaceExtensionsConfigService = ( __decorate([
|
|
248
294
|
( __param(0, IWorkspaceContextService)),
|