@codingame/monaco-vscode-api 1.83.16 → 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.
Files changed (328) hide show
  1. package/api.js +13 -7
  2. package/assets/clear.mp3 +0 -0
  3. package/assets/format.mp3 +0 -0
  4. package/assets/save.mp3 +0 -0
  5. package/extensions.d.ts +13 -3
  6. package/external/{xterm-addon-image/typings/xterm-addon-image.d.ts → @xterm/addon-image/typings/addon-image.d.ts} +1 -1
  7. package/external/{xterm → @xterm/xterm}/typings/xterm.d.ts +13 -1
  8. package/lifecycle.js +2 -2
  9. package/localExtensionHost.js +3 -1
  10. package/missing-services.js +115 -23
  11. package/monaco-editor-treemending.patch +6884 -18018
  12. package/monaco-treemending.js +2 -2
  13. package/package.json +7 -7
  14. package/service-override/tools/editor.d.ts +8 -8
  15. package/service-override/tools/editor.js +44 -19
  16. package/services.d.ts +2 -2
  17. package/services.js +3 -3
  18. package/vscode/src/vs/base/browser/broadcast.js +6 -5
  19. package/vscode/src/vs/base/browser/dnd.d.ts +6 -0
  20. package/vscode/src/vs/base/browser/mouseEvent.d.ts +1 -1
  21. package/vscode/src/vs/base/browser/touch.d.ts +10 -0
  22. package/vscode/src/vs/base/browser/ui/actionbar/actionbar.d.ts +1 -0
  23. package/vscode/src/vs/base/browser/ui/iconLabel/iconHoverDelegate.d.ts +22 -15
  24. package/vscode/src/vs/base/browser/ui/menu/menubar.js +4 -3
  25. package/vscode/src/vs/base/browser/ui/splitview/paneview.css.js +1 -1
  26. package/vscode/src/vs/base/browser/ui/splitview/paneview.d.ts +3 -0
  27. package/vscode/src/vs/base/browser/ui/splitview/paneview.js +34 -11
  28. package/vscode/src/vs/base/common/actions.d.ts +1 -15
  29. package/vscode/src/vs/base/common/async.d.ts +1 -31
  30. package/vscode/src/vs/base/common/event.d.ts +2 -1
  31. package/vscode/src/vs/base/common/observableInternal/base.d.ts +23 -10
  32. package/vscode/src/vs/base/common/prefixTree.js +21 -11
  33. package/vscode/src/vs/base/common/product.d.ts +16 -2
  34. package/vscode/src/vs/base/common/resourceTree.js +135 -0
  35. package/vscode/src/vs/base/common/skipList.js +1 -0
  36. package/vscode/src/vs/base/common/tfIdf.js +137 -0
  37. package/vscode/src/vs/base/common/types.d.ts +13 -1
  38. package/vscode/src/vs/base/common/verifier.js +62 -0
  39. package/vscode/src/vs/editor/browser/editorBrowser.d.ts +4 -2
  40. package/vscode/src/vs/editor/common/config/editorOptions.d.ts +23 -4
  41. package/vscode/src/vs/editor/common/core/lineRange.d.ts +1 -0
  42. package/vscode/src/vs/editor/common/core/offsetRange.d.ts +3 -0
  43. package/vscode/src/vs/editor/common/core/position.d.ts +1 -0
  44. package/vscode/src/vs/editor/common/editorCommon.d.ts +2 -1
  45. package/vscode/src/vs/editor/common/languages.d.ts +23 -1
  46. package/vscode/src/vs/editor/common/services/languageFeatures.d.ts +2 -1
  47. package/vscode/src/vs/editor/common/services/resolverService.d.ts +11 -2
  48. package/vscode/src/vs/platform/accessibility/common/accessibility.d.ts +16 -1
  49. package/vscode/src/vs/platform/action/common/action.d.ts +8 -0
  50. package/vscode/src/vs/platform/actions/browser/dropdownWithPrimaryActionViewItem.js +4 -0
  51. package/vscode/src/vs/platform/actions/common/actions.d.ts +8 -0
  52. package/vscode/src/vs/platform/audioCues/browser/audioCueService.d.ts +6 -0
  53. package/vscode/src/vs/platform/commands/common/commands.d.ts +13 -5
  54. package/vscode/src/vs/platform/dialogs/common/dialogs.d.ts +9 -3
  55. package/vscode/src/vs/platform/dialogs/common/dialogs.js +5 -2
  56. package/vscode/src/vs/platform/editor/common/editor.d.ts +3 -15
  57. package/vscode/src/vs/platform/extensionManagement/common/extensionManagement.d.ts +1 -0
  58. package/vscode/src/vs/platform/extensionManagement/common/extensionManagement.js +3 -15
  59. package/vscode/src/vs/platform/extensionManagement/common/implicitActivationEvents.js +5 -0
  60. package/vscode/src/vs/platform/extensions/common/extensions.d.ts +0 -1
  61. package/vscode/src/vs/platform/files/common/files.d.ts +72 -8
  62. package/vscode/src/vs/platform/files/common/watcher.js +77 -0
  63. package/vscode/src/vs/platform/keybinding/common/keybindingsRegistry.d.ts +2 -2
  64. package/vscode/src/vs/platform/layout/browser/layoutService.d.ts +52 -21
  65. package/vscode/src/vs/platform/request/browser/requestService.js +3 -0
  66. package/vscode/src/vs/platform/request/common/requestIpc.js +17 -0
  67. package/vscode/src/vs/platform/storage/common/storage.js +2 -2
  68. package/vscode/src/vs/platform/telemetry/common/telemetry.d.ts +1 -0
  69. package/vscode/src/vs/platform/terminal/common/capabilities/capabilities.d.ts +12 -7
  70. package/vscode/src/vs/platform/terminal/common/capabilities/{commandDetectionCapability.d.ts → commandDetection/terminalCommand.d.ts} +3 -2
  71. package/vscode/src/vs/platform/terminal/common/capabilities/commandDetection/terminalCommand.js +257 -0
  72. package/vscode/src/vs/platform/terminal/common/capabilities/commandDetectionCapability.js +439 -354
  73. package/vscode/src/vs/platform/window/common/window.d.ts +9 -2
  74. package/vscode/src/vs/platform/window/common/window.js +6 -1
  75. package/vscode/src/vs/platform/workspaces/common/workspaces.d.ts +2 -43
  76. package/vscode/src/vs/workbench/api/common/extHost.api.impl.js +113 -81
  77. package/vscode/src/vs/workbench/api/common/extHost.protocol.js +5 -4
  78. package/vscode/src/vs/workbench/api/common/extHostApiCommands.js +25 -3
  79. package/vscode/src/vs/workbench/api/common/extHostChat.js +13 -163
  80. package/vscode/src/vs/workbench/api/common/extHostChatAgents2.js +412 -0
  81. package/vscode/src/vs/workbench/api/common/extHostChatProvider.js +79 -11
  82. package/vscode/src/vs/workbench/api/common/extHostCommands.js +13 -12
  83. package/vscode/src/vs/workbench/api/common/extHostComments.js +1 -1
  84. package/vscode/src/vs/workbench/api/common/extHostEditorTabs.js +8 -6
  85. package/vscode/src/vs/workbench/api/common/extHostExtensionService.js +1 -1
  86. package/vscode/src/vs/workbench/api/common/extHostFileSystemEventService.js +36 -19
  87. package/vscode/src/vs/workbench/api/common/extHostInlineChat.js +52 -31
  88. package/vscode/src/vs/workbench/api/common/extHostIssueReporter.js +38 -0
  89. package/vscode/src/vs/workbench/api/common/extHostLanguageFeatures.js +28 -3
  90. package/vscode/src/vs/workbench/api/common/extHostLanguages.js +10 -0
  91. package/vscode/src/vs/workbench/api/common/extHostNotebook.js +117 -2
  92. package/vscode/src/vs/workbench/api/common/extHostNotebookKernels.js +32 -4
  93. package/vscode/src/vs/workbench/api/common/extHostSCM.js +85 -23
  94. package/vscode/src/vs/workbench/api/common/extHostSearch.js +3 -0
  95. package/vscode/src/vs/workbench/api/common/extHostSpeech.js +42 -0
  96. package/vscode/src/vs/workbench/api/common/extHostTask.js +2 -1
  97. package/vscode/src/vs/workbench/api/common/extHostTelemetry.js +1 -0
  98. package/vscode/src/vs/workbench/api/common/extHostTerminalService.js +3 -3
  99. package/vscode/src/vs/workbench/api/common/extHostTesting.js +97 -47
  100. package/vscode/src/vs/workbench/api/common/extHostTypeConverters.js +115 -16
  101. package/vscode/src/vs/workbench/api/common/extHostTypes.js +66 -36
  102. package/vscode/src/vs/workbench/api/common/extHostWorkspace.js +6 -1
  103. package/vscode/src/vs/workbench/browser/actions/layoutActions.js +182 -75
  104. package/vscode/src/vs/workbench/browser/actions/windowActions.js +176 -4
  105. package/vscode/src/vs/workbench/browser/actions/workspaceActions.js +143 -2
  106. package/vscode/src/vs/workbench/browser/actions/workspaceCommands.js +237 -0
  107. package/vscode/src/vs/workbench/browser/composite.d.ts +0 -4
  108. package/vscode/src/vs/workbench/browser/composite.js +5 -4
  109. package/vscode/src/vs/workbench/browser/dnd.js +72 -23
  110. package/vscode/src/vs/workbench/browser/labels.js +7 -3
  111. package/vscode/src/vs/workbench/browser/media/part.css.js +1 -1
  112. package/vscode/src/vs/workbench/browser/panecomposite.d.ts +2 -2
  113. package/vscode/src/vs/workbench/browser/panecomposite.js +2 -0
  114. package/vscode/src/vs/workbench/browser/part.js +33 -2
  115. package/vscode/src/vs/workbench/browser/parts/compositeBarActions.js +99 -117
  116. package/vscode/src/vs/workbench/browser/parts/editor/editor.contribution.js +173 -33
  117. package/vscode/src/vs/workbench/browser/parts/editor/editor.js +102 -6
  118. package/vscode/src/vs/workbench/browser/parts/editor/editorActions.js +256 -17
  119. package/vscode/src/vs/workbench/browser/parts/editor/editorAutoSave.js +4 -0
  120. package/vscode/src/vs/workbench/browser/parts/editor/editorCommands.js +68 -35
  121. package/vscode/src/vs/workbench/browser/parts/editor/editorPlaceholder.js +5 -5
  122. package/vscode/src/vs/workbench/browser/parts/editor/editorStatus.js +35 -16
  123. package/vscode/src/vs/workbench/browser/parts/editor/editorTabsControl.js +348 -0
  124. package/vscode/src/vs/workbench/browser/parts/editor/editorsObserver.js +43 -31
  125. package/vscode/src/vs/workbench/browser/parts/editor/media/editortabscontrol.css.js +4 -0
  126. package/vscode/src/vs/workbench/browser/parts/editor/sideBySideEditor.js +1 -0
  127. package/vscode/src/vs/workbench/browser/parts/editor/textCodeEditor.js +1 -0
  128. package/vscode/src/vs/workbench/browser/parts/editor/textDiffEditor.js +14 -2
  129. package/vscode/src/vs/workbench/browser/parts/editor/textEditor.js +4 -4
  130. package/vscode/src/vs/workbench/browser/parts/globalCompositeBar.js +277 -0
  131. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsCommands.js +5 -2
  132. package/vscode/src/vs/workbench/browser/parts/panel/media/panelpart.css.js +1 -1
  133. package/vscode/src/vs/workbench/browser/parts/panel/panelActions.js +3 -38
  134. package/vscode/src/vs/workbench/browser/parts/statusbar/statusbarPart.d.ts +54 -52
  135. package/vscode/src/vs/workbench/browser/parts/titlebar/menubarControl.js +2 -1
  136. package/vscode/src/vs/workbench/browser/parts/titlebar/titlebarPart.d.ts +25 -0
  137. package/vscode/src/vs/workbench/browser/parts/titlebar/windowTitle.js +258 -0
  138. package/vscode/src/vs/workbench/browser/parts/views/media/paneviewlet.css.js +1 -1
  139. package/vscode/src/vs/workbench/browser/parts/views/viewPane.d.ts +2 -5
  140. package/vscode/src/vs/workbench/browser/parts/views/viewPane.js +157 -117
  141. package/vscode/src/vs/workbench/browser/parts/views/viewPaneContainer.js +50 -23
  142. package/vscode/src/vs/workbench/browser/parts/views/viewsService.js +26 -11
  143. package/vscode/src/vs/workbench/browser/parts/views/viewsViewlet.js +10 -6
  144. package/vscode/src/vs/workbench/browser/style.js +2 -1
  145. package/vscode/src/vs/workbench/browser/web.api.d.ts +39 -2
  146. package/vscode/src/vs/workbench/browser/window.js +55 -0
  147. package/vscode/src/vs/workbench/browser/workbench.contribution.js +220 -40
  148. package/vscode/src/vs/workbench/common/activity.js +3 -0
  149. package/vscode/src/vs/workbench/common/contextkeys.js +35 -5
  150. package/vscode/src/vs/workbench/common/contributions.js +4 -3
  151. package/vscode/src/vs/workbench/common/editor/diffEditorInput.js +14 -4
  152. package/vscode/src/vs/workbench/common/editor/diffEditorModel.js +1 -1
  153. package/vscode/src/vs/workbench/common/editor/editorGroupModel.js +22 -19
  154. package/vscode/src/vs/workbench/common/editor/editorInput.d.ts +4 -3
  155. package/vscode/src/vs/workbench/common/editor/editorModel.d.ts +1 -2
  156. package/vscode/src/vs/workbench/common/editor/sideBySideEditorInput.js +22 -4
  157. package/vscode/src/vs/workbench/common/editor/textResourceEditorInput.js +3 -3
  158. package/vscode/src/vs/workbench/common/editor.d.ts +60 -30
  159. package/vscode/src/vs/workbench/common/editor.js +11 -3
  160. package/vscode/src/vs/workbench/common/theme.js +2 -2
  161. package/vscode/src/vs/workbench/common/views.d.ts +4 -4
  162. package/vscode/src/vs/workbench/common/views.js +3 -1
  163. package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibilityConfiguration.js +97 -8
  164. package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibilityContributions.js +17 -99
  165. package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibleView.js +103 -37
  166. package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibleViewActions.js +2 -3
  167. package/vscode/src/vs/workbench/contrib/accessibility/browser/editorAccessibilityHelp.js +127 -0
  168. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatActions.js +71 -0
  169. package/vscode/src/vs/workbench/contrib/chat/browser/chat.js +2 -1
  170. package/vscode/src/vs/workbench/contrib/chat/common/chatAgents.js +33 -110
  171. package/vscode/src/vs/workbench/contrib/chat/common/chatContextKeys.js +64 -0
  172. package/vscode/src/vs/workbench/contrib/chat/common/chatParserTypes.js +94 -0
  173. package/vscode/src/vs/workbench/contrib/chat/common/chatService.js +6 -1
  174. package/vscode/src/vs/workbench/contrib/chat/common/chatSlashCommands.js +1 -88
  175. package/vscode/src/vs/workbench/contrib/codeActions/browser/codeActionsContribution.js +4 -4
  176. package/vscode/src/vs/workbench/contrib/codeEditor/browser/diffEditorHelper.js +3 -2
  177. package/vscode/src/vs/workbench/contrib/codeEditor/browser/quickaccess/gotoSymbolQuickAccess.js +3 -1
  178. package/vscode/src/vs/workbench/contrib/codeEditor/browser/saveParticipants.js +15 -16
  179. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleWordWrap.js +9 -3
  180. package/vscode/src/vs/workbench/contrib/comments/browser/comments.contribution.js +3 -1
  181. package/vscode/src/vs/workbench/contrib/comments/browser/simpleCommentEditor.js +2 -3
  182. package/vscode/src/vs/workbench/contrib/customEditor/browser/customEditorInput.js +1 -0
  183. package/vscode/src/vs/workbench/contrib/debug/common/debug.d.ts +9 -1
  184. package/vscode/src/vs/workbench/contrib/debug/common/debug.js +10 -1
  185. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsActions.js +114 -22
  186. package/vscode/src/vs/workbench/contrib/extensions/browser/media/extensionActions.css.js +1 -1
  187. package/vscode/src/vs/workbench/contrib/extensions/common/extensions.js +4 -1
  188. package/vscode/src/vs/workbench/contrib/files/browser/explorerFileContrib.js +19 -0
  189. package/vscode/src/vs/workbench/contrib/files/browser/explorerViewlet.js +10 -8
  190. package/vscode/src/vs/workbench/contrib/files/browser/fileActions.js +62 -10
  191. package/vscode/src/vs/workbench/contrib/files/browser/fileConstants.js +2 -1
  192. package/vscode/src/vs/workbench/contrib/files/browser/fileImportExport.js +9 -8
  193. package/vscode/src/vs/workbench/contrib/files/browser/files.contribution.js +10 -1
  194. package/vscode/src/vs/workbench/contrib/files/browser/files.d.ts +1 -0
  195. package/vscode/src/vs/workbench/contrib/files/browser/files.js +7 -3
  196. package/vscode/src/vs/workbench/contrib/files/browser/views/emptyView.js +4 -4
  197. package/vscode/src/vs/workbench/contrib/files/browser/views/explorerView.js +64 -36
  198. package/vscode/src/vs/workbench/contrib/files/browser/views/explorerViewer.js +42 -17
  199. package/vscode/src/vs/workbench/contrib/files/browser/views/openEditorsView.js +145 -25
  200. package/vscode/src/vs/workbench/contrib/format/browser/formatActionsMultiple.js +1 -1
  201. package/vscode/src/vs/workbench/contrib/format/browser/formatModified.js +1 -1
  202. package/vscode/src/vs/workbench/contrib/inlineChat/common/inlineChat.js +36 -0
  203. package/vscode/src/vs/workbench/contrib/notebook/common/notebookCommon.js +3 -1
  204. package/vscode/src/vs/workbench/contrib/preferences/common/preferences.js +24 -3
  205. package/vscode/src/vs/workbench/contrib/scm/browser/dirtydiffDecorator.js +11 -6
  206. package/vscode/src/vs/workbench/contrib/scm/common/scm.js +1 -2
  207. package/vscode/src/vs/workbench/contrib/search/browser/notebookSearch/searchNotebookHelpers.js +31 -0
  208. package/vscode/src/vs/workbench/contrib/search/browser/searchModel.js +61 -41
  209. package/vscode/src/vs/workbench/contrib/search/{browser/searchNotebookHelpers.js → common/cellSearchModel.js} +4 -63
  210. package/vscode/src/vs/workbench/contrib/search/common/searchNotebookHelpers.js +40 -0
  211. package/vscode/src/vs/workbench/contrib/snippets/browser/snippetsFile.js +2 -2
  212. package/vscode/src/vs/workbench/{services/editor/browser/editorDropService.js → contrib/speech/common/speechService.js} +2 -2
  213. package/vscode/src/vs/workbench/contrib/terminal/browser/detachedTerminal.js +29 -4
  214. package/vscode/src/vs/workbench/contrib/terminal/browser/terminal.d.ts +100 -79
  215. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalConfigHelper.d.ts +3 -3
  216. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalEditorInput.js +1 -1
  217. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalIcon.js +7 -4
  218. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/decorationAddon.js +5 -3
  219. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/markNavigationAddon.js +143 -41
  220. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/xtermTerminal.d.ts +17 -11
  221. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/xtermTerminal.js +41 -26
  222. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm-private.d.ts +5 -2
  223. package/vscode/src/vs/workbench/contrib/terminal/common/terminal.d.ts +2 -8
  224. package/vscode/src/vs/workbench/contrib/terminal/common/terminal.js +2 -0
  225. package/vscode/src/vs/workbench/contrib/testing/common/testCoverage.js +115 -0
  226. package/vscode/src/vs/workbench/contrib/testing/common/testCoverageService.js +74 -0
  227. package/vscode/src/vs/workbench/contrib/testing/common/testResult.js +3 -3
  228. package/vscode/src/vs/workbench/contrib/testing/common/testTypes.js +64 -1
  229. package/vscode/src/vs/workbench/contrib/testing/common/testingContextKeys.js +9 -0
  230. package/vscode/src/vs/workbench/contrib/webview/browser/webviewWindowDragMonitor.js +4 -3
  231. package/vscode/src/vs/workbench/contrib/webviewPanel/browser/webviewEditor.js +8 -9
  232. package/vscode/src/vs/workbench/contrib/webviewPanel/browser/webviewEditorInput.js +1 -1
  233. package/vscode/src/vs/workbench/contrib/webviewPanel/browser/webviewIconManager.js +5 -2
  234. package/vscode/src/vs/workbench/services/activity/browser/activityService.d.ts +16 -10
  235. package/vscode/src/vs/workbench/services/activity/common/activity.d.ts +14 -1
  236. package/vscode/src/vs/workbench/services/activity/common/activity.js +1 -7
  237. package/vscode/src/vs/workbench/services/authentication/browser/authenticationService.js +9 -28
  238. package/vscode/src/vs/workbench/services/auxiliaryWindow/browser/auxiliaryWindowService.js +273 -0
  239. package/vscode/src/vs/workbench/services/configurationResolver/common/configurationResolver.js +1 -0
  240. package/vscode/src/vs/workbench/services/configurationResolver/common/variableResolver.js +2 -0
  241. package/vscode/src/vs/workbench/services/decorations/browser/decorationsService.js +2 -3
  242. package/vscode/src/vs/workbench/services/editor/browser/editorService.d.ts +7 -5
  243. package/vscode/src/vs/workbench/services/editor/browser/editorService.js +59 -37
  244. package/vscode/src/vs/workbench/services/editor/common/editorGroupsService.d.ts +193 -94
  245. package/vscode/src/vs/workbench/services/editor/common/editorGroupsService.js +2 -2
  246. package/vscode/src/vs/workbench/services/editor/common/editorResolverService.d.ts +8 -2
  247. package/vscode/src/vs/workbench/services/editor/common/editorService.d.ts +8 -1
  248. package/vscode/src/vs/workbench/services/extensionRecommendations/common/workspaceExtensionsConfig.js +62 -16
  249. package/vscode/src/vs/workbench/services/extensions/browser/extensionUrlHandler.js +5 -3
  250. package/vscode/src/vs/workbench/services/extensions/common/abstractExtensionService.d.ts +3 -2
  251. package/vscode/src/vs/workbench/services/extensions/common/extensionDescriptionRegistry.js +4 -9
  252. package/vscode/src/vs/workbench/services/extensions/common/{extensionHostManager.d.ts → extensionHostManagers.d.ts} +2 -0
  253. package/vscode/src/vs/workbench/services/extensions/common/extensionRunningLocationTracker.d.ts +1 -1
  254. package/vscode/src/vs/workbench/services/extensions/common/extensions.d.ts +9 -0
  255. package/vscode/src/vs/workbench/services/extensions/common/extensions.js +22 -0
  256. package/vscode/src/vs/workbench/services/extensions/common/extensionsApiProposals.js +14 -3
  257. package/vscode/src/vs/workbench/services/extensions/common/extensionsRegistry.js +9 -0
  258. package/vscode/src/vs/workbench/services/filesConfiguration/common/filesConfigurationService.js +3 -3
  259. package/vscode/src/vs/workbench/services/history/common/history.d.ts +2 -2
  260. package/vscode/src/vs/workbench/services/host/browser/browserHostService.js +49 -18
  261. package/vscode/src/vs/workbench/services/host/browser/host.d.ts +29 -7
  262. package/vscode/src/vs/workbench/services/hover/browser/hover.d.ts +51 -28
  263. package/vscode/src/vs/workbench/services/hover/browser/hoverService.d.ts +5 -2
  264. package/vscode/src/vs/workbench/services/keybinding/browser/unboundCommands.js +2 -2
  265. package/vscode/src/vs/workbench/services/languageStatus/common/languageStatusService.d.ts +4 -1
  266. package/vscode/src/vs/workbench/services/layout/browser/layoutService.d.ts +40 -36
  267. package/vscode/src/vs/workbench/services/panecomposite/browser/panecomposite.d.ts +0 -6
  268. package/vscode/src/vs/workbench/services/preferences/common/preferences.d.ts +3 -0
  269. package/vscode/src/vs/workbench/services/progress/browser/progressIndicator.js +2 -2
  270. package/vscode/src/vs/workbench/services/remote/common/remoteExplorerService.d.ts +16 -1
  271. package/vscode/src/vs/workbench/services/request/browser/requestService.js +48 -0
  272. package/vscode/src/vs/workbench/services/search/common/searchHelpers.js +4 -4
  273. package/vscode/src/vs/workbench/services/statusbar/browser/statusbar.d.ts +10 -51
  274. package/vscode/src/vs/workbench/services/suggest/browser/simpleSuggestWidget.js +2 -2
  275. package/vscode/src/vs/workbench/services/textfile/browser/textFileService.js +32 -1
  276. package/vscode/src/vs/workbench/services/textfile/common/textEditorService.js +1 -5
  277. package/vscode/src/vs/workbench/services/themes/browser/browserHostColorSchemeService.js +4 -3
  278. package/vscode/src/vs/workbench/services/themes/common/iconExtensionPoint.js +9 -3
  279. package/vscode/src/vs/workbench/services/title/browser/titleService.d.ts +18 -0
  280. package/vscode/src/vs/workbench/services/untitled/common/untitledTextEditorInput.js +18 -3
  281. package/vscode/src/vs/workbench/services/untitled/common/untitledTextEditorModel.js +16 -7
  282. package/vscode/src/vs/workbench/services/untitled/common/untitledTextEditorService.d.ts +6 -0
  283. package/vscode/src/vs/workbench/services/untitled/common/untitledTextEditorService.js +13 -0
  284. package/vscode/src/vs/workbench/services/url/browser/urlService.js +2 -1
  285. package/vscode/src/vs/workbench/services/userActivity/common/userActivityService.js +2 -2
  286. package/vscode/src/vs/workbench/services/userDataProfile/common/userDataProfileIcons.js +9 -0
  287. package/vscode-dts/vscode.proposed.chatAgents2.d.ts +375 -0
  288. package/vscode-dts/vscode.proposed.chatAgents2Additions.d.ts +80 -0
  289. package/vscode-dts/vscode.proposed.chatProvider.d.ts +5 -1
  290. package/vscode-dts/vscode.proposed.chatRequestAccess.d.ts +68 -10
  291. package/vscode-dts/vscode.proposed.chatTab.d.ts +21 -0
  292. package/vscode-dts/vscode.proposed.chatVariables.d.ts +5 -1
  293. package/vscode-dts/vscode.proposed.codeActionAI.d.ts +16 -0
  294. package/vscode-dts/vscode.proposed.contribSourceControlInputBoxMenu.d.ts +7 -0
  295. package/vscode-dts/vscode.proposed.createFileSystemWatcher.d.ts +51 -0
  296. package/vscode-dts/vscode.proposed.defaultChatAgent.d.ts +30 -0
  297. package/vscode-dts/vscode.proposed.handleIssueUri.d.ts +26 -0
  298. package/vscode-dts/vscode.proposed.interactive.d.ts +26 -100
  299. package/vscode-dts/vscode.proposed.interactiveUserActions.d.ts +14 -7
  300. package/vscode-dts/vscode.proposed.languageStatusText.d.ts +12 -0
  301. package/vscode-dts/vscode.proposed.multiDocumentHighlightProvider.d.ts +63 -0
  302. package/vscode-dts/vscode.proposed.notebookVariableProvider.d.ts +43 -0
  303. package/vscode-dts/vscode.proposed.resolvers.d.ts +100 -1
  304. package/vscode-dts/vscode.proposed.scmHistoryProvider.d.ts +9 -1
  305. package/vscode-dts/vscode.proposed.scmInputBoxActionButton.d.ts +19 -0
  306. package/vscode-dts/vscode.proposed.scmInputBoxValueProvider.d.ts +25 -0
  307. package/vscode-dts/vscode.proposed.speech.d.ts +35 -0
  308. package/vscode-dts/vscode.proposed.terminalQuickFixProvider.d.ts +11 -7
  309. package/vscode-dts/vscode.proposed.testCoverage.d.ts +6 -1
  310. package/vscode-dts/vscode.proposed.testingActiveProfile.d.ts +21 -0
  311. package/external/xterm-headless/typings/xterm-headless.d.ts +0 -49
  312. package/vscode/src/vs/platform/backup/common/backup.d.ts +0 -14
  313. package/vscode/src/vs/platform/update/common/update.d.ts +0 -112
  314. package/vscode/src/vs/workbench/api/common/extHostChatAgents.js +0 -62
  315. package/vscode/src/vs/workbench/api/common/extHostChatSlashCommand.js +0 -62
  316. package/vscode/src/vs/workbench/browser/parts/paneCompositePart.d.ts +0 -56
  317. package/vscode/src/vs/workbench/services/files/common/files.js +0 -4
  318. package/vscode/src/vs/workbench/services/host/browser/browserHostService.d.ts +0 -41
  319. package/vscode/src/vs/workbench/services/title/common/titleService.d.ts +0 -31
  320. package/vscode-dts/vscode.proposed.chatAgents.d.ts +0 -39
  321. package/vscode-dts/vscode.proposed.chatSlashCommands.d.ts +0 -47
  322. package/vscode-dts/vscode.proposed.testMessageContextValue.d.ts +0 -45
  323. /package/external/{xterm-addon-canvas/typings/xterm-addon-canvas.d.ts → @xterm/addon-canvas/typings/addon-canvas.d.ts} +0 -0
  324. /package/external/{xterm-addon-search/typings/xterm-addon-search.d.ts → @xterm/addon-search/typings/addon-search.d.ts} +0 -0
  325. /package/external/{xterm-addon-serialize/typings/xterm-addon-serialize.d.ts → @xterm/addon-serialize/typings/addon-serialize.d.ts} +0 -0
  326. /package/external/{xterm-addon-unicode11/typings/xterm-addon-unicode11.d.ts → @xterm/addon-unicode11/typings/addon-unicode11.d.ts} +0 -0
  327. /package/external/{xterm-addon-webgl/typings/xterm-addon-webgl.d.ts → @xterm/addon-webgl/typings/addon-webgl.d.ts} +0 -0
  328. /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
- show(provider, symbol, showAccessibleViewHelp, lineNumber) {
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: (window.innerWidth / 2) - ((Math.min(this._layoutService.dimension.width * 0.62 , 600 )) / 2), y: this._layoutService.offset.quickPickTop }; },
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 (lineNumber) {
158
+ if (position) {
134
159
  setTimeout(() => {
135
- this._editorWidget.revealLine(lineNumber);
136
- this._editorWidget.setSelection({ startLineNumber: lineNumber, startColumn: 1, endLineNumber: lineNumber, endColumn: 1 });
137
- }, 50);
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.verbositySettingKey.replaceAll('accessibility.verbosity.', ''));
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.positionBottom ? ( localizeWithPath(
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.positionBottom ? ( localizeWithPath(
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.positionBottom) {
365
- const lastLine = this.editorWidget.getModel()?.getLineCount();
366
- const position = lastLine !== undefined && lastLine > 0 ? ( new Position(lastLine, 1)) : undefined;
367
- if (position) {
368
- this._editorWidget.setPosition(position);
369
- this._editorWidget.revealLine(position.lineNumber);
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 handleEscape = (e) => {
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
- handleEscape(e);
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
- handleEscape(e);
436
+ hide(e);
398
437
  }
399
438
  }));
400
439
  disposableStore.add(this._editorWidget.onDidBlurEditorWidget(() => {
401
- if (document.activeElement !== this._toolbar.getElement()) {
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.onDidLayout(() => this._layout()));
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.dimension;
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
- showAccessibleViewHelp() {
492
+ _updateLastProvider() {
454
493
  if (!this._currentProvider) {
455
494
  return;
456
495
  }
457
- const currentProvider = Object.assign({}, this._currentProvider);
458
- currentProvider.provideContent = this._currentProvider.provideContent.bind(currentProvider);
459
- currentProvider.options = Object.assign({}, currentProvider.options);
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
- provideContent: () => currentProvider.options.customHelp ? currentProvider?.options.customHelp() : this._getAccessibleViewHelpDialogContent(this._goToSymbolsSupported()),
462
- onClose: () => this.show(currentProvider),
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: this._currentProvider.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?.editorWidget.getPosition() ?? undefined;
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
- export { IChatWidgetService, IQuickChatService };
4
+ const IChatAccessibilityService = ( createDecorator('chatAccessibilityService'));
5
+ export { IChatAccessibilityService, IChatWidgetService, IQuickChatService };