@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,5 +1,5 @@
|
|
|
1
1
|
import { __decorate, __param } from '../../../../../../../external/tslib/tslib.es6.js';
|
|
2
|
-
import { addDisposableListener, EventType } from 'monaco-editor/esm/vs/base/browser/dom.js';
|
|
2
|
+
import { addDisposableListener, EventType, isActiveElement, getActiveWindow } from 'monaco-editor/esm/vs/base/browser/dom.js';
|
|
3
3
|
import { StandardKeyboardEvent } from 'monaco-editor/esm/vs/base/browser/keyboardEvent.js';
|
|
4
4
|
import { alert } from 'monaco-editor/esm/vs/base/browser/ui/aria/aria.js';
|
|
5
5
|
import { Codicon } from 'monaco-editor/esm/vs/base/common/codicons.js';
|
|
@@ -53,6 +53,9 @@ let AccessibleView = class AccessibleView extends Disposable {
|
|
|
53
53
|
this._onLastLine = accessibleViewOnLastLine.bindTo(this._contextKeyService);
|
|
54
54
|
this._container = document.createElement('div');
|
|
55
55
|
this._container.classList.add('accessible-view');
|
|
56
|
+
if (this._configurationService.getValue("accessibility.hideAccessibleView" )) {
|
|
57
|
+
this._container.classList.add('hide');
|
|
58
|
+
}
|
|
56
59
|
const codeEditorWidgetOptions = {
|
|
57
60
|
contributions: EditorExtensionsRegistry.getEditorContributions().filter(c => c.id !== CodeActionController.ID)
|
|
58
61
|
};
|
|
@@ -97,6 +100,9 @@ let AccessibleView = class AccessibleView extends Disposable {
|
|
|
97
100
|
this._accessibleViewVerbosityEnabled.set(this._configurationService.getValue(this._currentProvider.verbositySettingKey));
|
|
98
101
|
this._updateToolbar(this._currentProvider.actions, this._currentProvider.options.type);
|
|
99
102
|
}
|
|
103
|
+
if (e.affectsConfiguration("accessibility.hideAccessibleView" )) {
|
|
104
|
+
this._container.classList.toggle('hide', this._configurationService.getValue("accessibility.hideAccessibleView" ));
|
|
105
|
+
}
|
|
100
106
|
}));
|
|
101
107
|
this._register(this._editorWidget.onDidDispose(() => this._resetContextKeys()));
|
|
102
108
|
this._register(this._editorWidget.onDidChangeCursorPosition(() => {
|
|
@@ -111,34 +117,63 @@ let AccessibleView = class AccessibleView extends Disposable {
|
|
|
111
117
|
this._accessibleViewGoToSymbolSupported.reset();
|
|
112
118
|
this._accessibleViewCurrentProviderId.reset();
|
|
113
119
|
}
|
|
114
|
-
|
|
120
|
+
getPosition(id) {
|
|
121
|
+
if (!id || !this._lastProvider || this._lastProvider.id !== id) {
|
|
122
|
+
return undefined;
|
|
123
|
+
}
|
|
124
|
+
return this._editorWidget.getPosition() || undefined;
|
|
125
|
+
}
|
|
126
|
+
setPosition(position, reveal) {
|
|
127
|
+
this._editorWidget.setPosition(position);
|
|
128
|
+
if (reveal) {
|
|
129
|
+
this._editorWidget.revealPosition(position);
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
showLastProvider(id) {
|
|
133
|
+
if (!this._lastProvider || this._lastProvider.options.id !== id) {
|
|
134
|
+
return;
|
|
135
|
+
}
|
|
136
|
+
this.show(this._lastProvider);
|
|
137
|
+
}
|
|
138
|
+
show(provider, symbol, showAccessibleViewHelp, position) {
|
|
115
139
|
provider = provider ?? this._currentProvider;
|
|
116
140
|
if (!provider) {
|
|
117
141
|
return;
|
|
118
142
|
}
|
|
119
143
|
const delegate = {
|
|
120
|
-
getAnchor: () => { return { x: (
|
|
144
|
+
getAnchor: () => { return { x: (getActiveWindow().innerWidth / 2) - ((Math.min(this._layoutService.activeContainerDimension.width * 0.62 , 600 )) / 2), y: this._layoutService.activeContainerOffset.quickPickTop }; },
|
|
121
145
|
render: (container) => {
|
|
122
146
|
container.classList.add('accessible-view-container');
|
|
123
147
|
return this._render(provider, container, showAccessibleViewHelp);
|
|
124
148
|
},
|
|
125
149
|
onHide: () => {
|
|
126
150
|
if (!showAccessibleViewHelp) {
|
|
151
|
+
this._updateLastProvider();
|
|
127
152
|
this._currentProvider = undefined;
|
|
128
153
|
this._resetContextKeys();
|
|
129
154
|
}
|
|
130
155
|
}
|
|
131
156
|
};
|
|
132
157
|
this._contextViewService.showContextView(delegate);
|
|
133
|
-
if (
|
|
158
|
+
if (position) {
|
|
134
159
|
setTimeout(() => {
|
|
135
|
-
this._editorWidget.revealLine(lineNumber);
|
|
136
|
-
this._editorWidget.setSelection({ startLineNumber: lineNumber, startColumn:
|
|
137
|
-
},
|
|
160
|
+
this._editorWidget.revealLine(position.lineNumber);
|
|
161
|
+
this._editorWidget.setSelection({ startLineNumber: position.lineNumber, startColumn: position.column, endLineNumber: position.lineNumber, endColumn: position.column });
|
|
162
|
+
}, 10);
|
|
138
163
|
}
|
|
139
164
|
if (symbol && this._currentProvider) {
|
|
140
165
|
this.showSymbol(this._currentProvider, symbol);
|
|
141
166
|
}
|
|
167
|
+
if (provider.onDidRequestClearLastProvider) {
|
|
168
|
+
this._register(provider.onDidRequestClearLastProvider((id) => {
|
|
169
|
+
if (this._lastProvider?.options.id === id) {
|
|
170
|
+
this._lastProvider = undefined;
|
|
171
|
+
}
|
|
172
|
+
}));
|
|
173
|
+
}
|
|
174
|
+
if (provider.options.id) {
|
|
175
|
+
this._lastProvider = provider;
|
|
176
|
+
}
|
|
142
177
|
}
|
|
143
178
|
previous() {
|
|
144
179
|
if (!this._currentProvider) {
|
|
@@ -234,7 +269,7 @@ let AccessibleView = class AccessibleView extends Disposable {
|
|
|
234
269
|
if (lineNumber === undefined) {
|
|
235
270
|
return;
|
|
236
271
|
}
|
|
237
|
-
this.show(provider, undefined, undefined, lineNumber);
|
|
272
|
+
this.show(provider, undefined, undefined, { lineNumber, column: 1 });
|
|
238
273
|
this._updateContextKeys(provider, true);
|
|
239
274
|
}
|
|
240
275
|
disableHint() {
|
|
@@ -271,7 +306,7 @@ let AccessibleView = class AccessibleView extends Disposable {
|
|
|
271
306
|
_render(provider, container, showAccessibleViewHelp) {
|
|
272
307
|
if (!showAccessibleViewHelp) {
|
|
273
308
|
this._currentProvider = provider;
|
|
274
|
-
this._accessibleViewCurrentProviderId.set(provider.
|
|
309
|
+
this._accessibleViewCurrentProviderId.set(provider.id);
|
|
275
310
|
}
|
|
276
311
|
const value = this._configurationService.getValue(provider.verbositySettingKey);
|
|
277
312
|
const readMoreLink = provider.options.readMoreUrl ? ( localizeWithPath(
|
|
@@ -299,7 +334,7 @@ let AccessibleView = class AccessibleView extends Disposable {
|
|
|
299
334
|
}
|
|
300
335
|
}
|
|
301
336
|
const verbose = this._configurationService.getValue(provider.verbositySettingKey);
|
|
302
|
-
const exitThisDialogHint = verbose && !provider.options.
|
|
337
|
+
const exitThisDialogHint = verbose && !provider.options.position ? ( localizeWithPath(
|
|
303
338
|
'vs/workbench/contrib/accessibility/browser/accessibleView',
|
|
304
339
|
'exit',
|
|
305
340
|
'\n\nExit this dialog (Escape).'
|
|
@@ -323,7 +358,7 @@ let AccessibleView = class AccessibleView extends Disposable {
|
|
|
323
358
|
const verbose = this._configurationService.getValue(provider.verbositySettingKey);
|
|
324
359
|
const hasActions = this._accessibleViewSupportsNavigation.get() || this._accessibleViewVerbosityEnabled.get() || this._accessibleViewGoToSymbolSupported.get() || this._currentProvider?.actions;
|
|
325
360
|
if (verbose && !showAccessibleViewHelp && hasActions) {
|
|
326
|
-
actionsHint = provider.options.
|
|
361
|
+
actionsHint = provider.options.position ? ( localizeWithPath(
|
|
327
362
|
'vs/workbench/contrib/accessibility/browser/accessibleView',
|
|
328
363
|
'ariaAccessibleViewActionsBottom',
|
|
329
364
|
'Explore actions such as disabling this hint (Shift+Tab), use Escape to exit this dialog.'
|
|
@@ -361,27 +396,30 @@ let AccessibleView = class AccessibleView extends Disposable {
|
|
|
361
396
|
}
|
|
362
397
|
this._editorWidget.updateOptions({ ariaLabel });
|
|
363
398
|
this._editorWidget.focus();
|
|
364
|
-
if (this._currentProvider?.options.
|
|
365
|
-
const
|
|
366
|
-
const
|
|
367
|
-
if (position) {
|
|
368
|
-
this.
|
|
369
|
-
|
|
399
|
+
if (this._currentProvider?.options.position) {
|
|
400
|
+
const position = this._editorWidget.getPosition();
|
|
401
|
+
const isDefaultPosition = position?.lineNumber === 1 && position.column === 1;
|
|
402
|
+
if (this._currentProvider.options.position === 'bottom' || this._currentProvider.options.position === 'initial-bottom' && isDefaultPosition) {
|
|
403
|
+
const lastLine = this.editorWidget.getModel()?.getLineCount();
|
|
404
|
+
const position = lastLine !== undefined && lastLine > 0 ? ( new Position(lastLine, 1)) : undefined;
|
|
405
|
+
if (position) {
|
|
406
|
+
this._editorWidget.setPosition(position);
|
|
407
|
+
this._editorWidget.revealLine(position.lineNumber);
|
|
408
|
+
}
|
|
370
409
|
}
|
|
371
410
|
}
|
|
372
411
|
});
|
|
373
412
|
this._updateToolbar(provider.actions, provider.options.type);
|
|
374
|
-
const
|
|
413
|
+
const hide = (e) => {
|
|
414
|
+
provider.onClose();
|
|
375
415
|
e.stopPropagation();
|
|
376
416
|
this._contextViewService.hideContextView();
|
|
377
417
|
this._updateContextKeys(provider, false);
|
|
378
|
-
setTimeout(() => provider.onClose(), 100);
|
|
379
418
|
};
|
|
380
419
|
const disposableStore = ( new DisposableStore());
|
|
381
|
-
disposableStore.add(this._editorWidget.onKeyUp((e) => provider.onKeyUp?.(e)));
|
|
382
420
|
disposableStore.add(this._editorWidget.onKeyDown((e) => {
|
|
383
|
-
if (e.keyCode === 9 ) {
|
|
384
|
-
|
|
421
|
+
if (e.keyCode === 9 || shouldHide(e.browserEvent, this._keybindingService, this._configurationService)) {
|
|
422
|
+
hide(e);
|
|
385
423
|
}
|
|
386
424
|
else if (e.keyCode === 38 && provider.options.readMoreUrl) {
|
|
387
425
|
const url = provider.options.readMoreUrl;
|
|
@@ -390,20 +428,21 @@ let AccessibleView = class AccessibleView extends Disposable {
|
|
|
390
428
|
e.preventDefault();
|
|
391
429
|
e.stopPropagation();
|
|
392
430
|
}
|
|
431
|
+
provider.onKeyDown?.(e);
|
|
393
432
|
}));
|
|
394
433
|
disposableStore.add(addDisposableListener(this._toolbar.getElement(), EventType.KEY_DOWN, (e) => {
|
|
395
434
|
const keyboardEvent = ( new StandardKeyboardEvent(e));
|
|
396
435
|
if (keyboardEvent.equals(9 )) {
|
|
397
|
-
|
|
436
|
+
hide(e);
|
|
398
437
|
}
|
|
399
438
|
}));
|
|
400
439
|
disposableStore.add(this._editorWidget.onDidBlurEditorWidget(() => {
|
|
401
|
-
if (
|
|
440
|
+
if (!isActiveElement(this._toolbar.getElement())) {
|
|
402
441
|
this._contextViewService.hideContextView();
|
|
403
442
|
}
|
|
404
443
|
}));
|
|
405
444
|
disposableStore.add(this._editorWidget.onDidContentSizeChange(() => this._layout()));
|
|
406
|
-
disposableStore.add(this._layoutService.
|
|
445
|
+
disposableStore.add(this._layoutService.onDidLayoutActiveContainer(() => this._layout()));
|
|
407
446
|
return disposableStore;
|
|
408
447
|
}
|
|
409
448
|
_updateToolbar(providedActions, type) {
|
|
@@ -431,7 +470,7 @@ let AccessibleView = class AccessibleView extends Disposable {
|
|
|
431
470
|
}
|
|
432
471
|
}
|
|
433
472
|
_layout() {
|
|
434
|
-
const dimension = this._layoutService.
|
|
473
|
+
const dimension = this._layoutService.activeContainerDimension;
|
|
435
474
|
const maxHeight = dimension.height && dimension.height * .4;
|
|
436
475
|
const height = Math.min(maxHeight, this._editorWidget.getContentHeight());
|
|
437
476
|
const width = Math.min(dimension.width * 0.62 , 600 );
|
|
@@ -450,18 +489,27 @@ let AccessibleView = class AccessibleView extends Disposable {
|
|
|
450
489
|
}
|
|
451
490
|
return this._currentProvider.options.type === "help" || this._currentProvider.options.language === 'markdown' || this._currentProvider.options.language === undefined || !!this._currentProvider.getSymbols?.();
|
|
452
491
|
}
|
|
453
|
-
|
|
492
|
+
_updateLastProvider() {
|
|
454
493
|
if (!this._currentProvider) {
|
|
455
494
|
return;
|
|
456
495
|
}
|
|
457
|
-
const
|
|
458
|
-
|
|
459
|
-
|
|
496
|
+
const lastProvider = Object.assign({}, this._currentProvider);
|
|
497
|
+
lastProvider.provideContent = this._currentProvider.provideContent.bind(lastProvider);
|
|
498
|
+
lastProvider.options = Object.assign({}, this._currentProvider.options);
|
|
499
|
+
lastProvider.verbositySettingKey = this._currentProvider.verbositySettingKey;
|
|
500
|
+
return lastProvider;
|
|
501
|
+
}
|
|
502
|
+
showAccessibleViewHelp() {
|
|
503
|
+
const lastProvider = this._updateLastProvider();
|
|
504
|
+
if (!lastProvider) {
|
|
505
|
+
return;
|
|
506
|
+
}
|
|
460
507
|
const accessibleViewHelpProvider = {
|
|
461
|
-
|
|
462
|
-
|
|
508
|
+
id: lastProvider.id,
|
|
509
|
+
provideContent: () => lastProvider.options.customHelp ? lastProvider?.options.customHelp() : this._getAccessibleViewHelpDialogContent(this._goToSymbolsSupported()),
|
|
510
|
+
onClose: () => this.show(lastProvider),
|
|
463
511
|
options: { type: "help" },
|
|
464
|
-
verbositySettingKey:
|
|
512
|
+
verbositySettingKey: lastProvider.verbositySettingKey
|
|
465
513
|
};
|
|
466
514
|
this._contextViewService.hideContextView();
|
|
467
515
|
setTimeout(() => this.show(accessibleViewHelpProvider, undefined, true), 100);
|
|
@@ -577,11 +625,14 @@ let AccessibleViewService = class AccessibleViewService extends Disposable {
|
|
|
577
625
|
this._configurationService = _configurationService;
|
|
578
626
|
this._keybindingService = _keybindingService;
|
|
579
627
|
}
|
|
580
|
-
show(provider) {
|
|
628
|
+
show(provider, position) {
|
|
581
629
|
if (!this._accessibleView) {
|
|
582
630
|
this._accessibleView = this._register(this._instantiationService.createInstance(AccessibleView));
|
|
583
631
|
}
|
|
584
|
-
this._accessibleView.show(provider);
|
|
632
|
+
this._accessibleView.show(provider, undefined, undefined, position);
|
|
633
|
+
}
|
|
634
|
+
showLastProvider(id) {
|
|
635
|
+
this._accessibleView?.showLastProvider(id);
|
|
585
636
|
}
|
|
586
637
|
next() {
|
|
587
638
|
this._accessibleView?.next();
|
|
@@ -621,8 +672,8 @@ let AccessibleViewService = class AccessibleViewService extends Disposable {
|
|
|
621
672
|
showAccessibleViewHelp() {
|
|
622
673
|
this._accessibleView?.showAccessibleViewHelp();
|
|
623
674
|
}
|
|
624
|
-
getPosition() {
|
|
625
|
-
return this._accessibleView?.
|
|
675
|
+
getPosition(id) {
|
|
676
|
+
return this._accessibleView?.getPosition(id) ?? undefined;
|
|
626
677
|
}
|
|
627
678
|
getLastPosition() {
|
|
628
679
|
const lastLine = this._accessibleView?.editorWidget.getModel()?.getLineCount();
|
|
@@ -681,4 +732,19 @@ let AccessibleViewSymbolQuickPick = class AccessibleViewSymbolQuickPick {
|
|
|
681
732
|
AccessibleViewSymbolQuickPick = ( __decorate([
|
|
682
733
|
( __param(1, IQuickInputService))
|
|
683
734
|
], AccessibleViewSymbolQuickPick));
|
|
735
|
+
function shouldHide(event, keybindingService, configurationService) {
|
|
736
|
+
if (!configurationService.getValue("accessibility.accessibleView.closeOnKeyPress" )) {
|
|
737
|
+
return false;
|
|
738
|
+
}
|
|
739
|
+
const standardKeyboardEvent = ( new StandardKeyboardEvent(event));
|
|
740
|
+
const resolveResult = keybindingService.softDispatch(standardKeyboardEvent, standardKeyboardEvent.target);
|
|
741
|
+
const isValidChord = resolveResult.kind === 1 ;
|
|
742
|
+
if (keybindingService.inChordMode || isValidChord) {
|
|
743
|
+
return false;
|
|
744
|
+
}
|
|
745
|
+
return shouldHandleKey(event) && !event.ctrlKey && !event.altKey && !event.metaKey && !event.shiftKey;
|
|
746
|
+
}
|
|
747
|
+
function shouldHandleKey(event) {
|
|
748
|
+
return !!event.code.match(/^(Key[A-Z]|Digit[0-9]|Equal|Comma|Period|Slash|Quote|Backquote|Backslash|Minus|Semicolon|Space|Enter)$/);
|
|
749
|
+
}
|
|
684
750
|
export { AccessibleView, AccessibleViewService, IAccessibleViewService };
|
|
@@ -7,7 +7,6 @@ import { accessibleViewIsShown, accessibleViewSupportsNavigation, accessibilityH
|
|
|
7
7
|
import { IAccessibleViewService } from './accessibleView.js';
|
|
8
8
|
import { ICodeEditorService } from 'monaco-editor/esm/vs/editor/browser/services/codeEditorService.js';
|
|
9
9
|
import { InlineCompletionsController } from 'monaco-editor/esm/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsController.js';
|
|
10
|
-
import { alert } from 'monaco-editor/esm/vs/base/browser/ui/aria/aria.js';
|
|
11
10
|
const accessibleViewMenu = {
|
|
12
11
|
id: MenuId.AccessibleView,
|
|
13
12
|
group: 'navigation',
|
|
@@ -119,7 +118,8 @@ const AccessibilityHelpAction = registerCommand(( new MultiCommand({
|
|
|
119
118
|
linux: {
|
|
120
119
|
primary: 512 | 1024 | 59 ,
|
|
121
120
|
secondary: [512 | 59 ]
|
|
122
|
-
}
|
|
121
|
+
},
|
|
122
|
+
kbExpr: ( accessibilityHelpIsShown.toNegated())
|
|
123
123
|
},
|
|
124
124
|
menuOpts: [{
|
|
125
125
|
menuId: MenuId.CommandPalette,
|
|
@@ -229,7 +229,6 @@ class AccessibleViewAcceptInlineCompletionAction extends Action2 {
|
|
|
229
229
|
return;
|
|
230
230
|
}
|
|
231
231
|
await model.accept(editor);
|
|
232
|
-
alert('Accepted');
|
|
233
232
|
model.stop();
|
|
234
233
|
editor.focus();
|
|
235
234
|
}
|
|
@@ -0,0 +1,127 @@
|
|
|
1
|
+
import { __decorate, __param } from '../../../../../../../external/tslib/tslib.es6.js';
|
|
2
|
+
import { Disposable } from 'monaco-editor/esm/vs/base/common/lifecycle.js';
|
|
3
|
+
import { ICodeEditorService } from 'monaco-editor/esm/vs/editor/browser/services/codeEditorService.js';
|
|
4
|
+
import { EditorContextKeys } from 'monaco-editor/esm/vs/editor/common/editorContextKeys.js';
|
|
5
|
+
import { AccessibilityHelpNLS } from 'monaco-editor/esm/vs/editor/common/standaloneStrings.js';
|
|
6
|
+
import { ToggleTabFocusModeAction } from 'monaco-editor/esm/vs/editor/contrib/toggleTabFocusMode/browser/toggleTabFocusMode.js';
|
|
7
|
+
import { AudioCue } from 'monaco-editor/esm/vs/platform/audioCues/browser/audioCueService.js';
|
|
8
|
+
import { ICommandService } from 'monaco-editor/esm/vs/platform/commands/common/commands.js';
|
|
9
|
+
import { IConfigurationService } from 'monaco-editor/esm/vs/platform/configuration/common/configuration.js';
|
|
10
|
+
import { IContextKeyService } from 'monaco-editor/esm/vs/platform/contextkey/common/contextkey.js';
|
|
11
|
+
import { IInstantiationService } from 'monaco-editor/esm/vs/platform/instantiation/common/instantiation.js';
|
|
12
|
+
import { IKeybindingService } from 'monaco-editor/esm/vs/platform/keybinding/common/keybinding.js';
|
|
13
|
+
import { descriptionForCommand } from './accessibilityContributions.js';
|
|
14
|
+
import { IAccessibleViewService } from './accessibleView.js';
|
|
15
|
+
import { AccessibilityHelpAction } from './accessibleViewActions.js';
|
|
16
|
+
import { CommentAccessibilityHelpNLS } from '../../comments/browser/comments.contribution.js';
|
|
17
|
+
import { CommentContextKeys } from '../../comments/common/commentContextKeys.js';
|
|
18
|
+
import { NEW_UNTITLED_FILE_COMMAND_ID } from '../../files/browser/fileConstants.js';
|
|
19
|
+
class EditorAccessibilityHelpContribution extends Disposable {
|
|
20
|
+
constructor() {
|
|
21
|
+
super();
|
|
22
|
+
this._register(AccessibilityHelpAction.addImplementation(95, 'editor', async (accessor) => {
|
|
23
|
+
const codeEditorService = accessor.get(ICodeEditorService);
|
|
24
|
+
const accessibleViewService = accessor.get(IAccessibleViewService);
|
|
25
|
+
const instantiationService = accessor.get(IInstantiationService);
|
|
26
|
+
const commandService = accessor.get(ICommandService);
|
|
27
|
+
let codeEditor = codeEditorService.getActiveCodeEditor() || codeEditorService.getFocusedCodeEditor();
|
|
28
|
+
if (!codeEditor) {
|
|
29
|
+
await commandService.executeCommand(NEW_UNTITLED_FILE_COMMAND_ID);
|
|
30
|
+
codeEditor = codeEditorService.getActiveCodeEditor();
|
|
31
|
+
}
|
|
32
|
+
accessibleViewService.show(instantiationService.createInstance(EditorAccessibilityHelpProvider, codeEditor));
|
|
33
|
+
}, EditorContextKeys.focus));
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
let EditorAccessibilityHelpProvider = class EditorAccessibilityHelpProvider {
|
|
37
|
+
onClose() {
|
|
38
|
+
this._editor.focus();
|
|
39
|
+
}
|
|
40
|
+
constructor(_editor, _keybindingService, _contextKeyService, _configurationService) {
|
|
41
|
+
this._editor = _editor;
|
|
42
|
+
this._keybindingService = _keybindingService;
|
|
43
|
+
this._contextKeyService = _contextKeyService;
|
|
44
|
+
this._configurationService = _configurationService;
|
|
45
|
+
this.id = "editor" ;
|
|
46
|
+
this.options = { type: "help" , readMoreUrl: 'https://go.microsoft.com/fwlink/?linkid=851010' };
|
|
47
|
+
this.verbositySettingKey = "accessibility.verbosity.editor" ;
|
|
48
|
+
}
|
|
49
|
+
provideContent() {
|
|
50
|
+
const options = this._editor.getOptions();
|
|
51
|
+
const content = [];
|
|
52
|
+
if (options.get(61 )) {
|
|
53
|
+
if (options.get(90 )) {
|
|
54
|
+
content.push(AccessibilityHelpNLS.readonlyDiffEditor);
|
|
55
|
+
}
|
|
56
|
+
else {
|
|
57
|
+
content.push(AccessibilityHelpNLS.editableDiffEditor);
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
else {
|
|
61
|
+
if (options.get(90 )) {
|
|
62
|
+
content.push(AccessibilityHelpNLS.readonlyEditor);
|
|
63
|
+
}
|
|
64
|
+
else {
|
|
65
|
+
content.push(AccessibilityHelpNLS.editableEditor);
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
const saveAudioCue = this._configurationService.getValue(AudioCue.save.settingsKey);
|
|
69
|
+
switch (saveAudioCue) {
|
|
70
|
+
case 'never':
|
|
71
|
+
content.push(AccessibilityHelpNLS.saveAudioCueDisabled);
|
|
72
|
+
break;
|
|
73
|
+
case 'always':
|
|
74
|
+
content.push(AccessibilityHelpNLS.saveAudioCueAlways);
|
|
75
|
+
break;
|
|
76
|
+
case 'userGesture':
|
|
77
|
+
content.push(AccessibilityHelpNLS.saveAudioCueUserGesture);
|
|
78
|
+
break;
|
|
79
|
+
}
|
|
80
|
+
const formatAudioCue = this._configurationService.getValue(AudioCue.format.settingsKey);
|
|
81
|
+
switch (formatAudioCue) {
|
|
82
|
+
case 'never':
|
|
83
|
+
content.push(AccessibilityHelpNLS.formatAudioCueDisabled);
|
|
84
|
+
break;
|
|
85
|
+
case 'always':
|
|
86
|
+
content.push(AccessibilityHelpNLS.formatAudioCueAlways);
|
|
87
|
+
break;
|
|
88
|
+
case 'userGesture':
|
|
89
|
+
content.push(AccessibilityHelpNLS.formatAudioCueUserGesture);
|
|
90
|
+
break;
|
|
91
|
+
}
|
|
92
|
+
const commentCommandInfo = getCommentCommandInfo(this._keybindingService, this._contextKeyService, this._editor);
|
|
93
|
+
if (commentCommandInfo) {
|
|
94
|
+
content.push(commentCommandInfo);
|
|
95
|
+
}
|
|
96
|
+
if (options.get(114 ).enabled) {
|
|
97
|
+
content.push(descriptionForCommand('editor.action.focusStickyScroll', AccessibilityHelpNLS.stickScrollKb, AccessibilityHelpNLS.stickScrollNoKb, this._keybindingService));
|
|
98
|
+
}
|
|
99
|
+
if (options.get(142 )) {
|
|
100
|
+
content.push(descriptionForCommand(ToggleTabFocusModeAction.ID, AccessibilityHelpNLS.tabFocusModeOnMsg, AccessibilityHelpNLS.tabFocusModeOnMsgNoKb, this._keybindingService));
|
|
101
|
+
}
|
|
102
|
+
else {
|
|
103
|
+
content.push(descriptionForCommand(ToggleTabFocusModeAction.ID, AccessibilityHelpNLS.tabFocusModeOffMsg, AccessibilityHelpNLS.tabFocusModeOffMsgNoKb, this._keybindingService));
|
|
104
|
+
}
|
|
105
|
+
return content.join('\n\n');
|
|
106
|
+
}
|
|
107
|
+
};
|
|
108
|
+
EditorAccessibilityHelpProvider = ( __decorate([
|
|
109
|
+
( __param(1, IKeybindingService)),
|
|
110
|
+
( __param(2, IContextKeyService)),
|
|
111
|
+
( __param(3, IConfigurationService))
|
|
112
|
+
], EditorAccessibilityHelpProvider));
|
|
113
|
+
function getCommentCommandInfo(keybindingService, contextKeyService, editor) {
|
|
114
|
+
const editorContext = contextKeyService.getContext(editor.getDomNode());
|
|
115
|
+
if (editorContext.getValue(CommentContextKeys.activeEditorHasCommentingRange.key)) {
|
|
116
|
+
const commentCommandInfo = [];
|
|
117
|
+
commentCommandInfo.push(CommentAccessibilityHelpNLS.intro);
|
|
118
|
+
commentCommandInfo.push(descriptionForCommand("workbench.action.addComment" , CommentAccessibilityHelpNLS.addComment, CommentAccessibilityHelpNLS.addCommentNoKb, keybindingService));
|
|
119
|
+
commentCommandInfo.push(descriptionForCommand("editor.action.nextCommentThreadAction" , CommentAccessibilityHelpNLS.nextCommentThreadKb, CommentAccessibilityHelpNLS.nextCommentThreadNoKb, keybindingService));
|
|
120
|
+
commentCommandInfo.push(descriptionForCommand("editor.action.previousCommentThreadAction" , CommentAccessibilityHelpNLS.previousCommentThreadKb, CommentAccessibilityHelpNLS.previousCommentThreadNoKb, keybindingService));
|
|
121
|
+
commentCommandInfo.push(descriptionForCommand("editor.action.nextCommentingRange" , CommentAccessibilityHelpNLS.nextRange, CommentAccessibilityHelpNLS.nextRangeNoKb, keybindingService));
|
|
122
|
+
commentCommandInfo.push(descriptionForCommand("editor.action.previousCommentingRange" , CommentAccessibilityHelpNLS.previousRange, CommentAccessibilityHelpNLS.previousRangeNoKb, keybindingService));
|
|
123
|
+
return commentCommandInfo.join('\n');
|
|
124
|
+
}
|
|
125
|
+
return;
|
|
126
|
+
}
|
|
127
|
+
export { EditorAccessibilityHelpContribution, getCommentCommandInfo };
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
import { EditorAction2 } from 'monaco-editor/esm/vs/editor/browser/editorExtensions.js';
|
|
2
|
+
import { EditorContextKeys } from 'monaco-editor/esm/vs/editor/common/editorContextKeys.js';
|
|
3
|
+
import { localize2WithPath, localizeWithPath } from 'monaco-editor/esm/vs/nls.js';
|
|
4
|
+
import { IChatWidgetService } from '../chat.js';
|
|
5
|
+
import { IChatAgentService } from '../../common/chatAgents.js';
|
|
6
|
+
import { CONTEXT_IN_CHAT_INPUT } from '../../common/chatContextKeys.js';
|
|
7
|
+
import { chatAgentLeader } from '../../common/chatParserTypes.js';
|
|
8
|
+
const CHAT_CATEGORY = { value: ( localizeWithPath(
|
|
9
|
+
'vs/workbench/contrib/chat/browser/actions/chatActions',
|
|
10
|
+
'chat.category',
|
|
11
|
+
"Chat"
|
|
12
|
+
)), original: 'Chat' };
|
|
13
|
+
const CHAT_OPEN_ACTION_ID = 'workbench.action.chat.open';
|
|
14
|
+
class ChatSubmitSecondaryAgentEditorAction extends EditorAction2 {
|
|
15
|
+
static { this.ID = 'workbench.action.chat.submitSecondaryAgent'; }
|
|
16
|
+
constructor() {
|
|
17
|
+
super({
|
|
18
|
+
id: ChatSubmitSecondaryAgentEditorAction.ID,
|
|
19
|
+
title: ( localize2WithPath(
|
|
20
|
+
'vs/workbench/contrib/chat/browser/actions/chatActions',
|
|
21
|
+
{ key: 'actions.chat.submitSecondaryAgent', comment: ['Send input from the chat input box to the secondary agent'] },
|
|
22
|
+
"Submit to Secondary Agent"
|
|
23
|
+
)),
|
|
24
|
+
precondition: CONTEXT_IN_CHAT_INPUT,
|
|
25
|
+
keybinding: {
|
|
26
|
+
when: EditorContextKeys.textInputFocus,
|
|
27
|
+
primary: 2048 | 3 ,
|
|
28
|
+
weight: 100
|
|
29
|
+
}
|
|
30
|
+
});
|
|
31
|
+
}
|
|
32
|
+
runEditorCommand(accessor, editor) {
|
|
33
|
+
const editorUri = editor.getModel()?.uri;
|
|
34
|
+
if (editorUri) {
|
|
35
|
+
const agentService = accessor.get(IChatAgentService);
|
|
36
|
+
const secondaryAgent = agentService.getSecondaryAgent();
|
|
37
|
+
if (!secondaryAgent) {
|
|
38
|
+
return;
|
|
39
|
+
}
|
|
40
|
+
const widgetService = accessor.get(IChatWidgetService);
|
|
41
|
+
widgetService.getWidgetByInputUri(editorUri)?.acceptInputWithPrefix(`${chatAgentLeader}${secondaryAgent.id}`);
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
class ChatSubmitEditorAction extends EditorAction2 {
|
|
46
|
+
static { this.ID = 'workbench.action.chat.acceptInput'; }
|
|
47
|
+
constructor() {
|
|
48
|
+
super({
|
|
49
|
+
id: ChatSubmitEditorAction.ID,
|
|
50
|
+
title: ( localize2WithPath(
|
|
51
|
+
'vs/workbench/contrib/chat/browser/actions/chatActions',
|
|
52
|
+
{ key: 'actions.chat.submit', comment: ['Apply input from the chat input box'] },
|
|
53
|
+
"Submit"
|
|
54
|
+
)),
|
|
55
|
+
precondition: CONTEXT_IN_CHAT_INPUT,
|
|
56
|
+
keybinding: {
|
|
57
|
+
when: EditorContextKeys.textInputFocus,
|
|
58
|
+
primary: 3 ,
|
|
59
|
+
weight: 100
|
|
60
|
+
}
|
|
61
|
+
});
|
|
62
|
+
}
|
|
63
|
+
runEditorCommand(accessor, editor) {
|
|
64
|
+
const editorUri = editor.getModel()?.uri;
|
|
65
|
+
if (editorUri) {
|
|
66
|
+
const widgetService = accessor.get(IChatWidgetService);
|
|
67
|
+
widgetService.getWidgetByInputUri(editorUri)?.acceptInput();
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
export { CHAT_CATEGORY, CHAT_OPEN_ACTION_ID, ChatSubmitEditorAction, ChatSubmitSecondaryAgentEditorAction };
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { createDecorator } from 'monaco-editor/esm/vs/platform/instantiation/common/instantiation.js';
|
|
2
2
|
const IChatWidgetService = ( createDecorator('chatWidgetService'));
|
|
3
3
|
const IQuickChatService = ( createDecorator('quickChatService'));
|
|
4
|
-
|
|
4
|
+
const IChatAccessibilityService = ( createDecorator('chatAccessibilityService'));
|
|
5
|
+
export { IChatAccessibilityService, IChatWidgetService, IQuickChatService };
|