@codingame/monaco-vscode-api 2.2.2 → 3.0.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 (578) hide show
  1. package/README.md +16 -3
  2. package/api.js +8 -10
  3. package/contributions.js +3 -3
  4. package/debugProtocol.d.ts +143 -51
  5. package/extensions.d.ts +9 -5
  6. package/external/@xterm/xterm/typings/xterm.d.ts +2 -2
  7. package/missing-services.js +48 -13
  8. package/monaco.js +30 -14
  9. package/package.json +8 -8
  10. package/service-override/tools/editor.js +31 -8
  11. package/service-override/tools/views.d.ts +5 -6
  12. package/service-override/tools/views.js +10 -11
  13. package/services.d.ts +2 -2
  14. package/services.js +4 -3
  15. package/vscode/src/vs/base/browser/browser.js +2 -66
  16. package/vscode/src/vs/base/browser/dom.js +10 -22
  17. package/vscode/src/vs/base/browser/markdownRenderer.js +13 -5
  18. package/vscode/src/vs/base/browser/mouseEvent.js +9 -3
  19. package/vscode/src/vs/base/browser/pixelRatio.js +72 -0
  20. package/vscode/src/vs/base/browser/ui/actionbar/actionViewItems.js +4 -3
  21. package/vscode/src/vs/base/browser/ui/actionbar/actionbar.css.js +1 -1
  22. package/vscode/src/vs/base/browser/ui/actionbar/actionbar.d.ts +1 -1
  23. package/vscode/src/vs/base/browser/ui/actionbar/actionbar.js +3 -4
  24. package/vscode/src/vs/base/browser/ui/button/button.js +16 -4
  25. package/vscode/src/vs/base/browser/ui/codicons/codicon/codicon.css.js +1 -1
  26. package/vscode/src/vs/base/browser/ui/contextview/contextview.js +1 -3
  27. package/vscode/src/vs/base/browser/ui/dropdown/dropdown.js +8 -1
  28. package/vscode/src/vs/base/browser/ui/dropdown/dropdownActionViewItem.js +6 -2
  29. package/vscode/src/vs/base/browser/ui/hover/hoverDelegate.js +22 -0
  30. package/vscode/src/vs/base/browser/ui/iconLabel/iconHoverDelegate.d.ts +1 -0
  31. package/vscode/src/vs/base/browser/ui/iconLabel/iconLabel.js +3 -2
  32. package/vscode/src/vs/base/browser/ui/iconLabel/iconLabelHover.js +2 -1
  33. package/vscode/src/vs/base/browser/ui/list/listView.js +27 -42
  34. package/vscode/src/vs/base/browser/ui/menu/menu.js +0 -4
  35. package/vscode/src/vs/base/browser/ui/selectBox/selectBoxCustom.js +7 -4
  36. package/vscode/src/vs/base/browser/ui/table/tableWidget.js +8 -4
  37. package/vscode/src/vs/base/browser/ui/toggle/toggle.js +4 -2
  38. package/vscode/src/vs/base/browser/ui/toolbar/toolbar.js +7 -2
  39. package/vscode/src/vs/base/browser/ui/tree/asyncDataTree.js +1 -0
  40. package/vscode/src/vs/base/common/actions.js +1 -1
  41. package/vscode/src/vs/base/common/assert.js +1 -1
  42. package/vscode/src/vs/base/common/async.js +11 -7
  43. package/vscode/src/vs/base/common/codicons.d.ts +4 -0
  44. package/vscode/src/vs/base/common/codicons.js +4 -0
  45. package/vscode/src/vs/base/common/date.js +55 -1
  46. package/vscode/src/vs/base/common/event.js +5 -3
  47. package/vscode/src/vs/base/common/filters.js +1 -1
  48. package/vscode/src/vs/base/common/hotReload.js +5 -4
  49. package/vscode/src/vs/base/common/network.js +3 -0
  50. package/vscode/src/vs/base/common/observableInternal/autorun.js +19 -35
  51. package/vscode/src/vs/base/common/observableInternal/base.js +3 -82
  52. package/vscode/src/vs/base/common/observableInternal/debugName.js +100 -0
  53. package/vscode/src/vs/base/common/observableInternal/derived.js +14 -46
  54. package/vscode/src/vs/base/common/observableInternal/promise.js +94 -0
  55. package/vscode/src/vs/base/common/observableInternal/utils.js +5 -27
  56. package/vscode/src/vs/base/common/prefixTree.js +56 -22
  57. package/vscode/src/vs/base/common/product.d.ts +1 -1
  58. package/vscode/src/vs/base/common/strings.js +9 -1
  59. package/vscode/src/vs/editor/browser/config/charWidthReader.js +5 -6
  60. package/vscode/src/vs/editor/browser/config/editorConfiguration.js +7 -4
  61. package/vscode/src/vs/editor/browser/config/fontMeasurements.js +39 -26
  62. package/vscode/src/vs/editor/browser/controller/mouseHandler.js +10 -10
  63. package/vscode/src/vs/editor/browser/controller/mouseTarget.js +4 -4
  64. package/vscode/src/vs/editor/browser/controller/textAreaHandler.js +12 -12
  65. package/vscode/src/vs/editor/browser/coreCommands.js +2 -2
  66. package/vscode/src/vs/editor/browser/view/viewController.js +3 -3
  67. package/vscode/src/vs/editor/browser/view/viewLayer.js +1 -1
  68. package/vscode/src/vs/editor/browser/view/viewOverlays.js +6 -6
  69. package/vscode/src/vs/editor/browser/view.js +2 -2
  70. package/vscode/src/vs/editor/browser/viewParts/blockDecorations/blockDecorations.js +1 -1
  71. package/vscode/src/vs/editor/browser/viewParts/contentWidgets/contentWidgets.js +5 -5
  72. package/vscode/src/vs/editor/browser/viewParts/currentLineHighlight/currentLineHighlight.js +8 -8
  73. package/vscode/src/vs/editor/browser/viewParts/decorations/decorations.js +2 -2
  74. package/vscode/src/vs/editor/browser/viewParts/editorScrollbar/editorScrollbar.js +11 -11
  75. package/vscode/src/vs/editor/browser/viewParts/glyphMargin/glyphMargin.js +4 -4
  76. package/vscode/src/vs/editor/browser/viewParts/indentGuides/indentGuides.js +4 -4
  77. package/vscode/src/vs/editor/browser/viewParts/lineNumbers/lineNumbers.js +4 -4
  78. package/vscode/src/vs/editor/browser/viewParts/lines/viewLine.js +4 -4
  79. package/vscode/src/vs/editor/browser/viewParts/lines/viewLines.js +13 -13
  80. package/vscode/src/vs/editor/browser/viewParts/linesDecorations/linesDecorations.js +2 -2
  81. package/vscode/src/vs/editor/browser/viewParts/margin/margin.js +2 -2
  82. package/vscode/src/vs/editor/browser/viewParts/minimap/minimap.js +7 -7
  83. package/vscode/src/vs/editor/browser/viewParts/overlayWidgets/overlayWidgets.js +2 -2
  84. package/vscode/src/vs/editor/browser/viewParts/overviewRuler/decorationsOverviewRuler.js +7 -7
  85. package/vscode/src/vs/editor/browser/viewParts/overviewRuler/overviewRuler.js +6 -6
  86. package/vscode/src/vs/editor/browser/viewParts/rulers/rulers.js +2 -2
  87. package/vscode/src/vs/editor/browser/viewParts/scrollDecoration/scrollDecoration.js +3 -3
  88. package/vscode/src/vs/editor/browser/viewParts/selections/selections.js +4 -4
  89. package/vscode/src/vs/editor/browser/viewParts/viewCursors/viewCursor.js +2 -2
  90. package/vscode/src/vs/editor/browser/viewParts/viewCursors/viewCursors.js +2 -2
  91. package/vscode/src/vs/editor/browser/viewParts/viewZones/viewZones.js +5 -5
  92. package/vscode/src/vs/editor/browser/viewParts/whitespace/whitespace.js +5 -5
  93. package/vscode/src/vs/editor/browser/widget/codeEditorContributions.js +2 -2
  94. package/vscode/src/vs/editor/browser/widget/codeEditorWidget.js +34 -32
  95. package/vscode/src/vs/editor/browser/widget/diffEditor/components/accessibleDiffViewer.css.js +1 -1
  96. package/vscode/src/vs/editor/browser/widget/diffEditor/components/accessibleDiffViewer.js +82 -37
  97. package/vscode/src/vs/editor/browser/widget/diffEditor/components/diffEditorEditors.js +3 -1
  98. package/vscode/src/vs/editor/browser/widget/diffEditor/components/diffEditorViewZones/diffEditorViewZones.js +7 -7
  99. package/vscode/src/vs/editor/browser/widget/diffEditor/components/diffEditorViewZones/inlineDiffDeletedCodeMargin.js +3 -3
  100. package/vscode/src/vs/editor/browser/widget/diffEditor/components/diffEditorViewZones/renderLines.js +6 -6
  101. package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditor.contribution.js +10 -16
  102. package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditorViewModel.js +2 -1
  103. package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditorWidget.js +12 -12
  104. package/vscode/src/vs/editor/browser/widget/diffEditor/features/movedBlocksLinesFeature.js +2 -4
  105. package/vscode/src/vs/editor/browser/widget/diffEditor/features/overviewRulerFeature.js +1 -1
  106. package/vscode/src/vs/editor/browser/widget/diffEditor/features/revertButtonsFeature.js +17 -18
  107. package/vscode/src/vs/editor/browser/widget/diffEditor/utils.js +1 -1
  108. package/vscode/src/vs/editor/browser/widget/embeddedCodeEditorWidget.js +4 -4
  109. package/vscode/src/vs/editor/browser/widget/markdownRenderer/browser/renderedMarkdown.css.js +1 -1
  110. package/vscode/src/vs/editor/browser/widget/multiDiffEditorWidget/colors.js +2 -2
  111. package/vscode/src/vs/editor/browser/widget/multiDiffEditorWidget/diffEditorItemTemplate.js +43 -16
  112. package/vscode/src/vs/editor/browser/widget/multiDiffEditorWidget/multiDiffEditorWidget.js +3 -0
  113. package/vscode/src/vs/editor/browser/widget/multiDiffEditorWidget/multiDiffEditorWidgetImpl.js +42 -8
  114. package/vscode/src/vs/editor/browser/widget/multiDiffEditorWidget/style.css.js +1 -1
  115. package/vscode/src/vs/editor/common/config/editorOptions.d.ts +18 -1
  116. package/vscode/src/vs/editor/common/config/editorOptions.js +188 -107
  117. package/vscode/src/vs/editor/common/config/fontInfo.js +2 -2
  118. package/vscode/src/vs/editor/common/cursorCommon.js +14 -14
  119. package/vscode/src/vs/editor/common/editorContextKeys.js +1 -1
  120. package/vscode/src/vs/editor/common/languageSelector.js +12 -1
  121. package/vscode/src/vs/editor/common/languages.d.ts +28 -1
  122. package/vscode/src/vs/editor/common/languages.js +6 -1
  123. package/vscode/src/vs/editor/common/services/languageFeatures.d.ts +3 -1
  124. package/vscode/src/vs/editor/common/services/languageFeaturesService.js +2 -0
  125. package/vscode/src/vs/editor/common/standalone/standaloneEnums.js +96 -86
  126. package/vscode/src/vs/editor/common/standaloneStrings.js +5 -5
  127. package/vscode/src/vs/editor/common/viewLayout/viewLayout.js +19 -19
  128. package/vscode/src/vs/editor/common/viewModel/monospaceLineBreaksComputer.js +2 -2
  129. package/vscode/src/vs/editor/common/viewModel/viewModelImpl.js +12 -12
  130. package/vscode/src/vs/editor/contrib/bracketMatching/browser/bracketMatching.js +3 -3
  131. package/vscode/src/vs/editor/contrib/clipboard/browser/clipboard.js +6 -6
  132. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionController.js +5 -1
  133. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionModel.js +3 -3
  134. package/vscode/src/vs/editor/contrib/codeAction/browser/lightBulbWidget.js +2 -2
  135. package/vscode/src/vs/editor/contrib/codelens/browser/codelensController.js +1 -1
  136. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorContributions.js +1 -1
  137. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorDetector.js +3 -3
  138. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorHoverParticipant.js +2 -2
  139. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorPickerWidget.js +3 -3
  140. package/vscode/src/vs/editor/contrib/colorPicker/browser/standaloneColorPickerActions.js +2 -3
  141. package/vscode/src/vs/editor/contrib/contextmenu/browser/contextmenu.js +3 -3
  142. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/copyPasteController.js +3 -3
  143. package/vscode/src/vs/editor/contrib/find/browser/findController.js +1 -1
  144. package/vscode/src/vs/editor/contrib/find/browser/findModel.js +6 -6
  145. package/vscode/src/vs/editor/contrib/find/browser/findWidget.css.js +1 -1
  146. package/vscode/src/vs/editor/contrib/find/browser/findWidget.js +9 -62
  147. package/vscode/src/vs/editor/contrib/folding/browser/folding.js +3 -3
  148. package/vscode/src/vs/editor/contrib/format/browser/format.js +5 -5
  149. package/vscode/src/vs/editor/contrib/format/browser/formatActions.js +5 -5
  150. package/vscode/src/vs/editor/contrib/gotoError/browser/gotoErrorWidget.js +1 -1
  151. package/vscode/src/vs/editor/contrib/gotoError/browser/markerNavigationService.js +1 -1
  152. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/goToCommands.js +58 -84
  153. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/link/clickLinkGesture.js +3 -3
  154. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/link/goToDefinitionAtPosition.js +1 -1
  155. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/peek/referencesController.js +8 -2
  156. package/vscode/src/vs/editor/contrib/hover/browser/contentHover.js +1 -1
  157. package/vscode/src/vs/editor/contrib/hover/browser/hover.js +1 -1
  158. package/vscode/src/vs/editor/contrib/hover/browser/marginHover.js +1 -1
  159. package/vscode/src/vs/editor/contrib/hover/browser/markdownHoverParticipant.js +1 -1
  160. package/vscode/src/vs/editor/contrib/hover/browser/markerHoverParticipant.js +18 -15
  161. package/vscode/src/vs/editor/contrib/inlayHints/browser/inlayHintsController.js +3 -3
  162. package/vscode/src/vs/editor/contrib/inlayHints/browser/inlayHintsHover.js +1 -1
  163. package/vscode/src/vs/editor/contrib/inlayHints/browser/inlayHintsLocations.js +2 -2
  164. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/commands.js +1 -1
  165. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/ghostText.js +14 -6
  166. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/ghostTextWidget.js +10 -10
  167. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/hoverParticipant.js +1 -1
  168. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/inlineCompletionContextKeys.js +3 -3
  169. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsController.js +54 -27
  170. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsHintsWidget.js +1 -1
  171. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsModel.js +115 -45
  172. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsSource.js +1 -1
  173. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/singleTextEdit.js +6 -5
  174. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/utils.js +46 -1
  175. package/vscode/src/vs/editor/contrib/inlineEdit/browser/commandIds.js +5 -0
  176. package/vscode/src/vs/editor/contrib/inlineEdit/browser/commands.js +145 -0
  177. package/vscode/src/vs/editor/contrib/inlineEdit/browser/ghostTextWidget.js +188 -0
  178. package/vscode/src/vs/editor/contrib/inlineEdit/browser/hoverParticipant.js +91 -0
  179. package/vscode/src/vs/editor/contrib/inlineEdit/browser/inlineEdit.contribution.js +12 -0
  180. package/vscode/src/vs/editor/contrib/inlineEdit/browser/inlineEdit.css.js +4 -0
  181. package/vscode/src/vs/editor/contrib/inlineEdit/browser/inlineEditController.js +309 -0
  182. package/vscode/src/vs/editor/contrib/inlineEdit/browser/inlineEditHintsWidget.css.js +4 -0
  183. package/vscode/src/vs/editor/contrib/inlineEdit/browser/inlineEditHintsWidget.js +193 -0
  184. package/vscode/src/vs/editor/contrib/inlineProgress/browser/inlineProgress.js +2 -2
  185. package/vscode/src/vs/editor/contrib/linesOperations/browser/linesOperations.js +1 -1
  186. package/vscode/src/vs/editor/contrib/linkedEditing/browser/linkedEditing.js +2 -2
  187. package/vscode/src/vs/editor/contrib/links/browser/links.js +5 -5
  188. package/vscode/src/vs/editor/contrib/longLinesHelper/browser/longLinesHelper.js +1 -1
  189. package/vscode/src/vs/editor/contrib/multicursor/browser/multicursor.js +10 -10
  190. package/vscode/src/vs/editor/contrib/parameterHints/browser/parameterHintsModel.js +3 -3
  191. package/vscode/src/vs/editor/contrib/peekView/browser/peekView.js +1 -1
  192. package/vscode/src/vs/editor/contrib/quickAccess/browser/gotoLineQuickAccess.js +1 -1
  193. package/vscode/src/vs/editor/contrib/readOnlyMessage/browser/contribution.js +1 -1
  194. package/vscode/src/vs/editor/contrib/rename/browser/rename.js +143 -9
  195. package/vscode/src/vs/editor/contrib/rename/browser/renameInputField.css.js +1 -1
  196. package/vscode/src/vs/editor/contrib/rename/browser/renameInputField.js +347 -17
  197. package/vscode/src/vs/editor/contrib/smartSelect/browser/smartSelect.js +1 -1
  198. package/vscode/src/vs/editor/contrib/snippet/browser/snippetSession.js +2 -2
  199. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollActions.js +23 -37
  200. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollController.js +11 -10
  201. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollProvider.js +2 -2
  202. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollWidget.js +8 -8
  203. package/vscode/src/vs/editor/contrib/suggest/browser/suggestController.js +4 -4
  204. package/vscode/src/vs/editor/contrib/suggest/browser/suggestInlineCompletions.js +2 -2
  205. package/vscode/src/vs/editor/contrib/suggest/browser/suggestModel.js +11 -11
  206. package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidget.js +6 -6
  207. package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidgetDetails.js +3 -3
  208. package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidgetRenderer.js +3 -3
  209. package/vscode/src/vs/editor/contrib/suggest/browser/wordContextKey.js +2 -2
  210. package/vscode/src/vs/editor/contrib/suggest/browser/wordDistance.js +1 -1
  211. package/vscode/src/vs/editor/contrib/toggleTabFocusMode/browser/toggleTabFocusMode.js +3 -3
  212. package/vscode/src/vs/editor/contrib/unicodeHighlighter/browser/unicodeHighlighter.js +3 -3
  213. package/vscode/src/vs/editor/contrib/unusualLineTerminators/browser/unusualLineTerminators.js +4 -4
  214. package/vscode/src/vs/editor/contrib/wordHighlighter/browser/wordHighlighter.js +26 -16
  215. package/vscode/src/vs/editor/contrib/wordOperations/browser/wordOperations.js +3 -3
  216. package/vscode/src/vs/editor/contrib/zoneWidget/browser/zoneWidget.js +7 -3
  217. package/vscode/src/vs/editor/editor.api.d.ts +146 -85
  218. package/vscode/src/vs/editor/standalone/browser/iPadShowKeyboard/iPadShowKeyboard.js +1 -1
  219. package/vscode/src/vs/editor/standalone/browser/quickInput/standaloneQuickInputService.js +3 -5
  220. package/vscode/src/vs/editor/standalone/browser/standaloneCodeEditor.js +7 -4
  221. package/vscode/src/vs/editor/standalone/browser/standaloneServices.js +10 -10
  222. package/vscode/src/vs/platform/accessibilitySignal/browser/accessibilitySignalService.d.ts +99 -0
  223. package/vscode/src/vs/platform/accessibilitySignal/browser/accessibilitySignalService.js +608 -0
  224. package/vscode/src/vs/platform/action/common/actionCommonCategories.d.ts +1 -4
  225. package/vscode/src/vs/platform/action/common/actionCommonCategories.js +3 -3
  226. package/vscode/src/vs/platform/actionWidget/browser/actionWidget.js +26 -41
  227. package/vscode/src/vs/platform/actions/browser/dropdownWithPrimaryActionViewItem.js +6 -4
  228. package/vscode/src/vs/platform/actions/common/actions.d.ts +11 -0
  229. package/vscode/src/vs/platform/actions/common/actions.js +11 -0
  230. package/vscode/src/vs/platform/configuration/common/configuration.d.ts +17 -33
  231. package/vscode/src/vs/platform/configuration/common/configurationModels.js +42 -29
  232. package/vscode/src/vs/platform/extensionManagement/common/extensionManagement.js +3 -4
  233. package/vscode/src/vs/platform/extensions/common/extensions.d.ts +2 -2
  234. package/vscode/src/vs/platform/hover/browser/hover.js +69 -1
  235. package/vscode/src/vs/platform/product/common/product.js +1 -1
  236. package/vscode/src/vs/platform/quickinput/browser/quickInput.js +14 -20
  237. package/vscode/src/vs/platform/quickinput/browser/quickInputController.js +11 -5
  238. package/vscode/src/vs/platform/quickinput/browser/quickInputList.js +22 -2
  239. package/vscode/src/vs/platform/quickinput/browser/quickInputService.js +9 -7
  240. package/vscode/src/vs/platform/remote/common/remoteAgentConnection.js +2 -5
  241. package/vscode/src/vs/platform/request/common/request.js +111 -0
  242. package/vscode/src/vs/platform/terminal/common/capabilities/capabilities.d.ts +1 -0
  243. package/vscode/src/vs/platform/terminal/common/capabilities/commandDetection/terminalCommand.js +15 -0
  244. package/vscode/src/vs/platform/terminal/common/capabilities/commandDetectionCapability.js +9 -0
  245. package/vscode/src/vs/platform/terminal/common/terminal.d.ts +5 -3
  246. package/vscode/src/vs/platform/theme/common/colorRegistry.js +5 -5
  247. package/vscode/src/vs/platform/theme/common/tokenClassificationRegistry.js +6 -2
  248. package/vscode/src/vs/platform/window/common/window.js +4 -1
  249. package/vscode/src/vs/platform/workspace/common/workspace.js +2 -1
  250. package/vscode/src/vs/workbench/api/browser/statusBarExtensionPoint.js +2 -2
  251. package/vscode/src/vs/workbench/api/browser/viewsExtensionPoint.js +130 -14
  252. package/vscode/src/vs/workbench/api/common/extHost.api.impl.js +76 -24
  253. package/vscode/src/vs/workbench/api/common/extHostAuthentication.js +4 -1
  254. package/vscode/src/vs/workbench/api/common/extHostChat.js +0 -39
  255. package/vscode/src/vs/workbench/api/common/extHostChatAgents2.js +309 -137
  256. package/vscode/src/vs/workbench/api/common/extHostChatProvider.js +164 -49
  257. package/vscode/src/vs/workbench/api/common/extHostChatVariables.js +67 -7
  258. package/vscode/src/vs/workbench/api/common/extHostComments.js +28 -0
  259. package/vscode/src/vs/workbench/api/common/extHostDebugService.js +129 -48
  260. package/vscode/src/vs/workbench/api/common/extHostDocumentData.js +1 -2
  261. package/vscode/src/vs/workbench/api/common/extHostDocumentsAndEditors.js +1 -1
  262. package/vscode/src/vs/workbench/api/common/extHostInlineChat.js +5 -4
  263. package/vscode/src/vs/workbench/api/common/extHostInteractive.js +0 -1
  264. package/vscode/src/vs/workbench/api/common/extHostLanguageFeatures.js +130 -16
  265. package/vscode/src/vs/workbench/api/common/extHostNotebook.js +12 -1
  266. package/vscode/src/vs/workbench/api/common/extHostNotebookDocument.js +14 -5
  267. package/vscode/src/vs/workbench/api/common/extHostNotebookKernels.js +19 -1
  268. package/vscode/src/vs/workbench/api/common/extHostSpeech.js +2 -2
  269. package/vscode/src/vs/workbench/api/common/extHostTypeConverters.js +301 -75
  270. package/vscode/src/vs/workbench/api/common/extHostTypes.js +127 -45
  271. package/vscode/src/vs/workbench/api/common/extHostWorkspace.js +46 -7
  272. package/vscode/src/vs/workbench/api/common/jsonValidationExtensionPoint.js +55 -2
  273. package/vscode/src/vs/workbench/api/worker/extensionHostWorker.js +1 -1
  274. package/vscode/src/vs/workbench/browser/actions/layoutActions.js +146 -99
  275. package/vscode/src/vs/workbench/browser/actions/listCommands.js +2 -3
  276. package/vscode/src/vs/workbench/browser/actions/widgetNavigationCommands.js +3 -4
  277. package/vscode/src/vs/workbench/browser/actions/windowActions.js +4 -8
  278. package/vscode/src/vs/workbench/browser/composite.d.ts +2 -1
  279. package/vscode/src/vs/workbench/browser/composite.js +1 -1
  280. package/vscode/src/vs/workbench/browser/editor.js +11 -1
  281. package/vscode/src/vs/workbench/browser/media/style.css.js +1 -1
  282. package/vscode/src/vs/workbench/browser/panecomposite.d.ts +2 -1
  283. package/vscode/src/vs/workbench/browser/panecomposite.js +2 -2
  284. package/vscode/src/vs/workbench/browser/parts/activitybar/activitybarPart.js +4 -6
  285. package/vscode/src/vs/workbench/browser/parts/activitybar/media/activityaction.css.js +1 -1
  286. package/vscode/src/vs/workbench/browser/parts/auxiliarybar/auxiliaryBarActions.js +4 -4
  287. package/vscode/src/vs/workbench/browser/parts/auxiliarybar/auxiliaryBarPart.js +1 -1
  288. package/vscode/src/vs/workbench/browser/parts/compositeBar.js +1 -1
  289. package/vscode/src/vs/workbench/browser/parts/compositeBarActions.js +10 -10
  290. package/vscode/src/vs/workbench/browser/parts/compositePart.js +8 -5
  291. package/vscode/src/vs/workbench/browser/parts/editor/auxiliaryEditorPart.js +39 -29
  292. package/vscode/src/vs/workbench/browser/parts/editor/binaryEditor.js +1 -1
  293. package/vscode/src/vs/workbench/browser/parts/editor/breadcrumbsControl.js +20 -24
  294. package/vscode/src/vs/workbench/browser/parts/editor/breadcrumbsPicker.js +6 -4
  295. package/vscode/src/vs/workbench/browser/parts/editor/editor.autosave.contribution.js +2 -3
  296. package/vscode/src/vs/workbench/browser/parts/editor/editor.contribution.js +52 -54
  297. package/vscode/src/vs/workbench/browser/parts/editor/editorActions.js +30 -30
  298. package/vscode/src/vs/workbench/browser/parts/editor/editorAutoSave.js +1 -0
  299. package/vscode/src/vs/workbench/browser/parts/editor/editorCommands.js +12 -18
  300. package/vscode/src/vs/workbench/browser/parts/editor/editorConfiguration.js +1 -0
  301. package/vscode/src/vs/workbench/browser/parts/editor/editorGroupView.js +1 -1
  302. package/vscode/src/vs/workbench/browser/parts/editor/editorGroupWatermark.js +7 -6
  303. package/vscode/src/vs/workbench/browser/parts/editor/editorStatus.js +17 -6
  304. package/vscode/src/vs/workbench/browser/parts/editor/editorTabsControl.js +13 -5
  305. package/vscode/src/vs/workbench/browser/parts/editor/media/multieditortabscontrol.css.js +1 -1
  306. package/vscode/src/vs/workbench/browser/parts/editor/multiEditorTabsControl.js +84 -71
  307. package/vscode/src/vs/workbench/browser/parts/editor/singleEditorTabsControl.js +2 -6
  308. package/vscode/src/vs/workbench/browser/parts/editor/textDiffEditor.js +4 -1
  309. package/vscode/src/vs/workbench/browser/parts/editor/textResourceEditor.js +2 -2
  310. package/vscode/src/vs/workbench/browser/parts/globalCompositeBar.js +29 -29
  311. package/vscode/src/vs/workbench/browser/parts/media/paneCompositePart.css.js +1 -1
  312. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsCenter.js +5 -5
  313. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsCommands.js +3 -3
  314. package/vscode/src/vs/workbench/browser/parts/paneCompositeBar.js +1 -5
  315. package/vscode/src/vs/workbench/browser/parts/paneCompositePart.js +9 -6
  316. package/vscode/src/vs/workbench/browser/parts/panel/panelActions.js +56 -74
  317. package/vscode/src/vs/workbench/browser/parts/panel/panelPart.js +1 -1
  318. package/vscode/src/vs/workbench/browser/parts/sidebar/sidebarPart.js +6 -9
  319. package/vscode/src/vs/workbench/browser/parts/titlebar/menubarControl.js +4 -4
  320. package/vscode/src/vs/workbench/browser/parts/titlebar/titlebarPart.d.ts +9 -1
  321. package/vscode/src/vs/workbench/browser/parts/titlebar/windowTitle.js +55 -12
  322. package/vscode/src/vs/workbench/browser/parts/views/treeView.js +9 -16
  323. package/vscode/src/vs/workbench/browser/parts/views/viewPane.js +1 -1
  324. package/vscode/src/vs/workbench/browser/parts/views/viewPaneContainer.d.ts +2 -1
  325. package/vscode/src/vs/workbench/browser/parts/views/viewPaneContainer.js +4 -4
  326. package/vscode/src/vs/workbench/browser/quickaccess.js +8 -1
  327. package/vscode/src/vs/workbench/browser/workbench.contribution.js +22 -20
  328. package/vscode/src/vs/workbench/common/configuration.js +146 -43
  329. package/vscode/src/vs/workbench/common/contextkeys.js +4 -4
  330. package/vscode/src/vs/workbench/common/contributions.js +136 -20
  331. package/vscode/src/vs/workbench/common/editor/diffEditorInput.js +5 -5
  332. package/vscode/src/vs/workbench/common/editor/editorGroupModel.js +1 -1
  333. package/vscode/src/vs/workbench/common/editor/editorInput.d.ts +17 -11
  334. package/vscode/src/vs/workbench/common/editor/editorInput.js +1 -1
  335. package/vscode/src/vs/workbench/common/editor/sideBySideEditorInput.js +2 -2
  336. package/vscode/src/vs/workbench/common/editor.d.ts +4 -0
  337. package/vscode/src/vs/workbench/common/theme.js +11 -1
  338. package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibilityConfiguration.js +1064 -118
  339. package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibilityContributions.js +7 -7
  340. package/vscode/src/vs/workbench/contrib/accessibility/browser/editorAccessibilityHelp.js +5 -5
  341. package/vscode/src/vs/workbench/contrib/accessibilitySignals/browser/accessibilitySignal.contribution.js +306 -0
  342. package/vscode/src/vs/workbench/contrib/accessibilitySignals/browser/accessibilitySignalDebuggerContribution.js +46 -0
  343. package/vscode/src/vs/workbench/contrib/accessibilitySignals/browser/accessibilitySignalLineFeatureContribution.js +177 -0
  344. package/vscode/src/vs/workbench/contrib/accessibilitySignals/browser/commands.js +163 -0
  345. package/vscode/src/vs/workbench/contrib/callHierarchy/browser/callHierarchy.contribution.js +1 -1
  346. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityHelp.js +2 -2
  347. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatActions.js +31 -17
  348. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatExecuteActions.js +11 -17
  349. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQuickInputActions.js +18 -27
  350. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditorInput.js +2 -5
  351. package/vscode/src/vs/workbench/contrib/chat/browser/chatFollowups.js +34 -8
  352. package/vscode/src/vs/workbench/contrib/chat/browser/chatInputPart.js +8 -7
  353. package/vscode/src/vs/workbench/contrib/chat/browser/chatListRenderer.js +142 -109
  354. package/vscode/src/vs/workbench/contrib/chat/browser/chatMarkdownDecorationsRenderer.js +80 -52
  355. package/vscode/src/vs/workbench/contrib/chat/browser/chatSlashCommandContentWidget.js +1 -1
  356. package/vscode/src/vs/workbench/contrib/chat/browser/chatWidget.js +44 -13
  357. package/vscode/src/vs/workbench/contrib/chat/browser/codeBlockPart.js +230 -74
  358. package/vscode/src/vs/workbench/contrib/chat/browser/media/chat.css.js +1 -1
  359. package/vscode/src/vs/workbench/contrib/chat/common/chatAgents.js +5 -5
  360. package/vscode/src/vs/workbench/contrib/chat/common/chatModel.js +87 -29
  361. package/vscode/src/vs/workbench/contrib/chat/common/chatParserTypes.js +19 -3
  362. package/vscode/src/vs/workbench/contrib/chat/common/chatProvider.js +18 -3
  363. package/vscode/src/vs/workbench/contrib/chat/common/chatRequestParser.js +11 -8
  364. package/vscode/src/vs/workbench/contrib/chat/common/chatService.js +6 -6
  365. package/vscode/src/vs/workbench/contrib/chat/common/chatViewModel.js +11 -5
  366. package/vscode/src/vs/workbench/contrib/codeActions/browser/codeActions.contribution.js +2 -2
  367. package/vscode/src/vs/workbench/contrib/codeActions/common/codeActionsExtensionPoint.js +71 -0
  368. package/vscode/src/vs/workbench/contrib/codeEditor/browser/dictation/editorDictation.css.js +4 -0
  369. package/vscode/src/vs/workbench/contrib/codeEditor/browser/dictation/editorDictation.js +256 -0
  370. package/vscode/src/vs/workbench/contrib/codeEditor/browser/diffEditorHelper.js +2 -2
  371. package/vscode/src/vs/workbench/contrib/codeEditor/browser/editorFeatures.js +3 -4
  372. package/vscode/src/vs/workbench/contrib/codeEditor/browser/quickaccess/gotoSymbolQuickAccess.js +8 -6
  373. package/vscode/src/vs/workbench/contrib/codeEditor/browser/saveParticipants.js +11 -11
  374. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleMinimap.js +3 -4
  375. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleRenderControlCharacter.js +2 -3
  376. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleRenderWhitespace.js +2 -3
  377. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleWordWrap.js +9 -10
  378. package/vscode/src/vs/workbench/contrib/comments/browser/commentFormActions.js +9 -2
  379. package/vscode/src/vs/workbench/contrib/comments/browser/commentNode.js +27 -13
  380. package/vscode/src/vs/workbench/contrib/comments/browser/commentReply.js +41 -23
  381. package/vscode/src/vs/workbench/contrib/comments/browser/commentService.js +15 -7
  382. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadAdditionalActions.js +22 -10
  383. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadBody.js +1 -1
  384. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadWidget.js +1 -0
  385. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadZoneWidget.js +3 -3
  386. package/vscode/src/vs/workbench/contrib/comments/browser/commentsController.js +3 -3
  387. package/vscode/src/vs/workbench/contrib/comments/browser/commentsView.js +2 -2
  388. package/vscode/src/vs/workbench/contrib/comments/browser/simpleCommentEditor.js +3 -1
  389. package/vscode/src/vs/workbench/contrib/customEditor/browser/customEditor.contribution.js +2 -3
  390. package/vscode/src/vs/workbench/contrib/customEditor/browser/customEditorInputFactory.js +1 -0
  391. package/vscode/src/vs/workbench/contrib/customEditor/common/extensionPoint.js +66 -2
  392. package/vscode/src/vs/workbench/contrib/debug/browser/baseDebugView.js +31 -2
  393. package/vscode/src/vs/workbench/contrib/debug/browser/breakpointEditorContribution.js +2 -2
  394. package/vscode/src/vs/workbench/contrib/debug/browser/breakpointWidget.js +37 -7
  395. package/vscode/src/vs/workbench/contrib/debug/browser/breakpointsView.js +118 -25
  396. package/vscode/src/vs/workbench/contrib/debug/browser/media/breakpointWidget.css.js +1 -1
  397. package/vscode/src/vs/workbench/contrib/debug/common/debug.d.ts +37 -5
  398. package/vscode/src/vs/workbench/contrib/debug/common/debug.js +24 -1
  399. package/vscode/src/vs/workbench/contrib/debug/common/debugModel.d.ts +18 -0
  400. package/vscode/src/vs/workbench/contrib/debug/common/debugModel.js +237 -140
  401. package/vscode/src/vs/workbench/contrib/debug/common/debugVisualizers.js +72 -25
  402. package/vscode/src/vs/workbench/contrib/editSessions/common/editSessions.js +5 -8
  403. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsActions.js +29 -4
  404. package/vscode/src/vs/workbench/contrib/files/browser/editors/fileEditorHandler.js +1 -0
  405. package/vscode/src/vs/workbench/contrib/files/browser/editors/textFileEditorTracker.js +1 -0
  406. package/vscode/src/vs/workbench/contrib/files/browser/editors/textFileSaveErrorHandler.js +2 -1
  407. package/vscode/src/vs/workbench/contrib/files/browser/explorerViewlet.js +8 -7
  408. package/vscode/src/vs/workbench/contrib/files/browser/fileActions.contribution.js +21 -19
  409. package/vscode/src/vs/workbench/contrib/files/browser/fileActions.js +152 -120
  410. package/vscode/src/vs/workbench/contrib/files/browser/fileCommands.js +24 -1
  411. package/vscode/src/vs/workbench/contrib/files/browser/fileConstants.js +6 -6
  412. package/vscode/src/vs/workbench/contrib/files/browser/files.contribution.js +26 -25
  413. package/vscode/src/vs/workbench/contrib/files/browser/views/explorerView.js +5 -5
  414. package/vscode/src/vs/workbench/contrib/files/browser/views/explorerViewer.js +51 -12
  415. package/vscode/src/vs/workbench/contrib/files/browser/views/media/openeditors.css.js +1 -1
  416. package/vscode/src/vs/workbench/contrib/files/browser/views/openEditorsView.js +24 -9
  417. package/vscode/src/vs/workbench/contrib/files/browser/workspaceWatcher.js +1 -1
  418. package/vscode/src/vs/workbench/contrib/files/common/dirtyFilesIndicator.js +1 -0
  419. package/vscode/src/vs/workbench/contrib/inlayHints/browser/inlayHintsAccessibilty.js +16 -22
  420. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChat.css.js +1 -1
  421. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatController.js +48 -27
  422. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatLivePreviewWidget.js +2 -2
  423. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSession.js +23 -8
  424. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatStrategies.js +48 -6
  425. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatWidget.js +145 -73
  426. package/vscode/src/vs/workbench/contrib/inlineChat/common/inlineChat.js +31 -9
  427. package/vscode/src/vs/workbench/contrib/languageStatus/browser/languageStatus.contribution.js +8 -10
  428. package/vscode/src/vs/workbench/contrib/list/browser/list.contribution.js +3 -3
  429. package/vscode/src/vs/workbench/contrib/markdown/browser/markdownDocumentRenderer.js +7 -3
  430. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/commands/commands.js +95 -152
  431. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/commands/devCommands.js +16 -25
  432. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/mergeEditor.contribution.js +2 -4
  433. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/model/mergeEditorModel.js +2 -1
  434. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/model/textModelDiffs.js +19 -19
  435. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/view/conflictActions.js +1 -1
  436. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/view/mergeEditor.js +1 -0
  437. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/cellOutputActions.js +17 -3
  438. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/editActions.js +102 -15
  439. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/foldingController.js +2 -2
  440. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/notebookIndentationActions.js +234 -0
  441. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookEditor.js +1 -2
  442. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookEditorWidget.js +48 -24
  443. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookOptions.js +52 -22
  444. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellActionView.js +62 -3
  445. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellEditorOptions.js +40 -0
  446. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellOutput.js +20 -6
  447. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellToolbars.js +4 -4
  448. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/chat/cellChatPart.js +3 -27
  449. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/codeCell.js +28 -6
  450. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/markupCell.js +28 -3
  451. package/vscode/src/vs/workbench/contrib/notebook/browser/view/notebookCellList.js +78 -18
  452. package/vscode/src/vs/workbench/contrib/notebook/browser/view/notebookCellListView.js +208 -1
  453. package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/backLayerWebView.js +1 -1
  454. package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/cellRenderer.js +4 -4
  455. package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/webviewPreloads.js +85 -71
  456. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/baseCellViewModel.js +1 -2
  457. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/notebookViewModelImpl.js +1 -4
  458. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookEditorStickyScroll.js +2 -3
  459. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookEditorToolbar.js +82 -14
  460. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookKernelQuickPickStrategy.js +1 -1
  461. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookKernelView.js +0 -1
  462. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookOverviewRuler.js +4 -3
  463. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookTopCellToolbar.js +92 -33
  464. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookViewZones.js +136 -0
  465. package/vscode/src/vs/workbench/contrib/notebook/common/notebookEditorInput.js +6 -1
  466. package/vscode/src/vs/workbench/contrib/notebook/common/notebookRange.js +5 -1
  467. package/vscode/src/vs/workbench/contrib/preferences/browser/keybindingWidgets.js +279 -0
  468. package/vscode/src/vs/workbench/contrib/preferences/browser/keyboardLayoutPicker.js +6 -7
  469. package/vscode/src/vs/workbench/contrib/preferences/browser/media/keybindings.css.js +4 -0
  470. package/vscode/src/vs/workbench/contrib/preferences/browser/preferencesIcons.js +64 -0
  471. package/vscode/src/vs/workbench/contrib/preferences/browser/preferencesWidgets.js +507 -0
  472. package/vscode/src/vs/workbench/contrib/preferences/browser/settingsLayout.js +478 -0
  473. package/vscode/src/vs/workbench/contrib/preferences/browser/settingsTreeModels.js +796 -0
  474. package/vscode/src/vs/workbench/contrib/remote/browser/remoteExplorer.js +8 -10
  475. package/vscode/src/vs/workbench/contrib/remote/browser/tunnelView.js +14 -20
  476. package/vscode/src/vs/workbench/contrib/scm/browser/dirtydiffDecorator.js +12 -12
  477. package/vscode/src/vs/workbench/contrib/search/browser/searchActionsBase.js +3 -3
  478. package/vscode/src/vs/workbench/contrib/search/browser/searchActionsFind.js +44 -54
  479. package/vscode/src/vs/workbench/contrib/search/common/constants.js +26 -65
  480. package/vscode/src/vs/workbench/contrib/snippets/browser/commands/abstractSnippetsActions.js +6 -9
  481. package/vscode/src/vs/workbench/contrib/snippets/browser/commands/fileTemplateSnippets.js +6 -9
  482. package/vscode/src/vs/workbench/contrib/snippets/browser/snippetsService.js +2 -2
  483. package/vscode/src/vs/workbench/contrib/snippets/browser/tabCompletion.js +2 -2
  484. package/vscode/src/vs/workbench/contrib/speech/common/speechService.js +3 -124
  485. package/vscode/src/vs/workbench/contrib/tasks/common/taskDefinitionRegistry.js +2 -2
  486. package/vscode/src/vs/workbench/contrib/tasks/common/tasks.js +2 -2
  487. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/decorationAddon.js +5 -5
  488. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/decorationStyles.js +61 -24
  489. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/xtermTerminal.d.ts +3 -3
  490. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/xtermTerminal.js +5 -5
  491. package/vscode/src/vs/workbench/contrib/terminal/common/terminalContextKey.js +24 -1
  492. package/vscode/src/vs/workbench/contrib/terminal/common/terminalExtensionPoints.js +1 -1
  493. package/vscode/src/vs/workbench/contrib/testing/common/testCoverage.js +4 -4
  494. package/vscode/src/vs/workbench/contrib/testing/common/testTypes.js +10 -10
  495. package/vscode/src/vs/workbench/contrib/testing/common/testingContinuousRunService.js +45 -20
  496. package/vscode/src/vs/workbench/contrib/update/common/update.js +2 -1
  497. package/vscode/src/vs/workbench/contrib/webview/browser/webviewElement.js +3 -4
  498. package/vscode/src/vs/workbench/contrib/webviewPanel/browser/webviewCommands.js +3 -3
  499. package/vscode/src/vs/workbench/contrib/webviewPanel/browser/webviewEditor.js +1 -1
  500. package/vscode/src/vs/workbench/contrib/webviewPanel/browser/webviewEditorInputSerializer.js +1 -1
  501. package/vscode/src/vs/workbench/contrib/webviewPanel/browser/webviewPanel.contribution.js +15 -18
  502. package/vscode/src/vs/workbench/contrib/webviewView/browser/webviewViewPane.js +2 -5
  503. package/vscode/src/vs/workbench/contrib/webviewView/browser/webviewViewService.js +4 -4
  504. package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStartedExtensionPoint.js +2 -2
  505. package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStartedService.js +5 -5
  506. package/vscode/src/vs/workbench/services/authentication/browser/authenticationService.js +193 -54
  507. package/vscode/src/vs/workbench/services/authentication/common/authentication.js +2 -1
  508. package/vscode/src/vs/workbench/services/auxiliaryWindow/browser/auxiliaryWindowService.js +9 -3
  509. package/vscode/src/vs/workbench/services/editor/browser/editorPaneService.js +10 -0
  510. package/vscode/src/vs/workbench/services/editor/browser/editorService.d.ts +3 -1
  511. package/vscode/src/vs/workbench/services/editor/browser/editorService.js +5 -0
  512. package/vscode/src/vs/workbench/services/editor/common/editorGroupsService.d.ts +1 -6
  513. package/vscode/src/vs/workbench/services/editor/common/editorPaneService.js +3 -0
  514. package/vscode/src/vs/workbench/services/editor/common/editorService.d.ts +5 -1
  515. package/vscode/src/vs/workbench/services/extensionManagement/common/extensionFeatures.js +29 -0
  516. package/vscode/src/vs/workbench/services/extensionManagement/common/extensionManagement.js +1 -1
  517. package/vscode/src/vs/workbench/services/extensions/browser/extensionUrlHandler.js +3 -4
  518. package/vscode/src/vs/workbench/services/extensions/common/extensionDescriptionRegistry.js +4 -3
  519. package/vscode/src/vs/workbench/services/extensions/common/extensionsApiProposals.js +11 -5
  520. package/vscode/src/vs/workbench/services/extensions/common/workspaceContains.js +5 -5
  521. package/vscode/src/vs/workbench/services/history/browser/historyService.js +25 -4
  522. package/vscode/src/vs/workbench/services/history/common/history.d.ts +5 -0
  523. package/vscode/src/vs/workbench/services/language/common/languageService.js +111 -2
  524. package/vscode/src/vs/workbench/services/layout/browser/layoutService.d.ts +2 -2
  525. package/vscode/src/vs/workbench/services/layout/browser/layoutService.js +59 -1
  526. package/vscode/src/vs/workbench/services/preferences/common/preferencesModels.js +1008 -0
  527. package/vscode/src/vs/workbench/services/preferences/common/preferencesValidation.js +477 -0
  528. package/vscode/src/vs/workbench/services/remote/common/remoteExplorerService.js +2 -2
  529. package/vscode/src/vs/workbench/services/remote/common/tunnelModel.d.ts +4 -1
  530. package/vscode/src/vs/workbench/services/remote/common/tunnelModel.js +53 -13
  531. package/vscode/src/vs/workbench/services/search/common/queryBuilder.js +1 -0
  532. package/vscode/src/vs/workbench/services/textMate/common/TMGrammars.js +2 -2
  533. package/vscode/src/vs/workbench/services/textfile/common/textFileEditorModel.js +1 -1
  534. package/vscode/src/vs/workbench/services/textfile/common/textfiles.d.ts +22 -9
  535. package/vscode/src/vs/workbench/services/themes/common/colorExtensionPoint.js +76 -4
  536. package/vscode/src/vs/workbench/services/themes/common/iconExtensionPoint.js +2 -2
  537. package/vscode/src/vs/workbench/services/themes/common/tokenClassificationExtensionPoint.js +7 -7
  538. package/vscode/src/vs/workbench/services/timer/browser/timerService.js +1 -0
  539. package/vscode/src/vs/workbench/services/untitled/common/untitledTextEditorHandler.js +3 -2
  540. package/vscode/src/vs/workbench/services/untitled/common/untitledTextEditorInput.js +1 -1
  541. package/vscode/src/vs/workbench/services/userDataSync/common/userDataSync.js +2 -2
  542. package/vscode/src/vs/workbench/services/views/browser/viewDescriptorService.js +6 -9
  543. package/vscode/src/vs/workbench/services/views/browser/viewsService.js +12 -12
  544. package/vscode/src/vs/workbench/services/views/common/viewContainerModel.js +6 -1
  545. package/vscode/src/vs/workbench/services/workingCopy/common/storedFileWorkingCopy.d.ts +43 -4
  546. package/vscode/src/vs/workbench/services/workingCopy/common/storedFileWorkingCopy.js +1 -1
  547. package/vscode/src/vs/workbench/services/workingCopy/common/workingCopyFileService.d.ts +16 -7
  548. package/vscode/src/vs/workbench/services/workspaces/common/workspaceTrust.js +3 -6
  549. package/vscode-dts/vscode.proposed.activeComment.d.ts +23 -0
  550. package/vscode-dts/vscode.proposed.chatParticipant.d.ts +509 -0
  551. package/vscode-dts/vscode.proposed.chatParticipantAdditions.d.ts +288 -0
  552. package/vscode-dts/vscode.proposed.chatProvider.d.ts +10 -1
  553. package/vscode-dts/vscode.proposed.chatVariableResolver.d.ts +56 -0
  554. package/vscode-dts/vscode.proposed.codeActionRanges.d.ts +2 -4
  555. package/vscode-dts/{vscode.proposed.chat.d.ts → vscode.proposed.contribIssueReporter.d.ts} +2 -20
  556. package/vscode-dts/vscode.proposed.contribSourceControlHistoryItemGroupMenu.d.ts +2 -0
  557. package/vscode-dts/vscode.proposed.contribSourceControlTitleMenu.d.ts +7 -0
  558. package/vscode-dts/vscode.proposed.debugVisualization.d.ts +76 -6
  559. package/vscode-dts/vscode.proposed.defaultChatParticipant.d.ts +49 -0
  560. package/vscode-dts/vscode.proposed.findFiles2.d.ts +89 -0
  561. package/vscode-dts/vscode.proposed.inlineEdit.d.ts +86 -0
  562. package/vscode-dts/vscode.proposed.interactive.d.ts +6 -3
  563. package/vscode-dts/vscode.proposed.languageModels.d.ts +184 -0
  564. package/vscode-dts/vscode.proposed.newSymbolNamesProvider.d.ts +36 -0
  565. package/vscode-dts/vscode.proposed.notebookVariableProvider.d.ts +6 -0
  566. package/vscode-dts/vscode.proposed.quickPickSortByLabel.d.ts +3 -0
  567. package/vscode-dts/vscode.proposed.speech.d.ts +5 -1
  568. package/vscode-dts/vscode.proposed.testCoverage.d.ts +40 -27
  569. package/vscode/src/vs/platform/audioCues/browser/audioCueService.d.ts +0 -98
  570. package/vscode/src/vs/platform/audioCues/browser/audioCueService.js +0 -576
  571. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/insertCellActions.js +0 -348
  572. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/chat/cellChatActions.js +0 -554
  573. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/chat/cellChatController.js +0 -471
  574. package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/browser/featuredExtensionService.js +0 -159
  575. package/vscode-dts/vscode.proposed.chatAgents2.d.ts +0 -440
  576. package/vscode-dts/vscode.proposed.chatAgents2Additions.d.ts +0 -139
  577. package/vscode-dts/vscode.proposed.chatRequestAccess.d.ts +0 -105
  578. package/vscode-dts/vscode.proposed.defaultChatAgent.d.ts +0 -30
@@ -5,6 +5,7 @@ import { setupNativeHover, setupCustomHover } from './iconLabelHover.js';
5
5
  import { Disposable } from '../../../common/lifecycle.js';
6
6
  import { equals } from '../../../common/objects.js';
7
7
  import { Range } from '../../../common/range.js';
8
+ import { getDefaultHoverDelegate } from '../hover/hoverDelegate.js';
8
9
  class FastLabelNode {
9
10
  constructor(_element) {
10
11
  this._element = _element;
@@ -51,7 +52,7 @@ class IconLabel extends Disposable {
51
52
  else {
52
53
  this.nameNode = ( new Label(this.nameContainer));
53
54
  }
54
- this.hoverDelegate = options?.hoverDelegate;
55
+ this.hoverDelegate = options?.hoverDelegate ?? getDefaultHoverDelegate('mouse');
55
56
  }
56
57
  get element() {
57
58
  return this.domNode.element;
@@ -114,7 +115,7 @@ class IconLabel extends Disposable {
114
115
  htmlElement.removeAttribute('title');
115
116
  return;
116
117
  }
117
- if (!this.hoverDelegate) {
118
+ if (this.hoverDelegate.showNativeHover) {
118
119
  setupNativeHover(htmlElement, tooltip);
119
120
  }
120
121
  else {
@@ -110,13 +110,14 @@ function setupCustomHover(hoverDelegate, htmlElement, content, options) {
110
110
  }
111
111
  if (hadHover) {
112
112
  hoverDelegate.onDidHideHover?.();
113
+ hoverWidget = undefined;
113
114
  }
114
115
  };
115
116
  const triggerShowHover = (delay, focus, target) => {
116
117
  return ( new TimeoutTimer(async () => {
117
118
  if (!hoverWidget || hoverWidget.isDisposed) {
118
119
  hoverWidget = ( new UpdatableHoverWidget(hoverDelegate, target || htmlElement, delay > 0));
119
- await hoverWidget.update(content, focus, options);
120
+ await hoverWidget.update(typeof content === 'function' ? content() : content, focus, options);
120
121
  }
121
122
  }, delay));
122
123
  };
@@ -14,6 +14,7 @@ import { Scrollable } from '../../../common/scrollable.js';
14
14
  import { RangeMap, shift } from './rangeMap.js';
15
15
  import { RowCache } from './rowCache.js';
16
16
  import { BugIndicatingError } from '../../../common/errors.js';
17
+ import { clamp } from '../../../common/numbers.js';
17
18
  const StaticDND = {
18
19
  CurrentDragAndDropData: undefined
19
20
  };
@@ -176,7 +177,7 @@ class ListView {
176
177
  }
177
178
  this.items = [];
178
179
  this.itemId = 0;
179
- this.rangeMap = ( new RangeMap(options.paddingTop ?? 0));
180
+ this.rangeMap = this.createRangeMap(options.paddingTop ?? 0);
180
181
  for (const renderer of renderers) {
181
182
  this.renderers.set(renderer.templateId, renderer);
182
183
  }
@@ -310,6 +311,9 @@ class ListView {
310
311
  this._rerender(this.lastRenderTop, this.lastRenderHeight);
311
312
  }
312
313
  }
314
+ createRangeMap(paddingTop) {
315
+ return ( new RangeMap(paddingTop));
316
+ }
313
317
  splice(start, deleteCount, elements = []) {
314
318
  if (this.splicing) {
315
319
  throw new Error('Can\'t run recursive splices.');
@@ -345,6 +349,7 @@ class ListView {
345
349
  rows.push(item.row);
346
350
  }
347
351
  item.row = null;
352
+ item.stale = true;
348
353
  }
349
354
  const previousRestRange = { start: start + deleteCount, end: this.items.length };
350
355
  const previousRenderedRestRange = Range.intersect(previousRestRange, previousRenderRange);
@@ -361,11 +366,12 @@ class ListView {
361
366
  uri: undefined,
362
367
  dropTarget: false,
363
368
  dragStartDisposable: Disposable.None,
364
- checkedDisposable: Disposable.None
369
+ checkedDisposable: Disposable.None,
370
+ stale: false
365
371
  })));
366
372
  let deleted;
367
373
  if (start === 0 && deleteCount >= this.items.length) {
368
- this.rangeMap = ( new RangeMap(this.rangeMap.paddingTop));
374
+ this.rangeMap = this.createRangeMap(this.rangeMap.paddingTop);
369
375
  this.rangeMap.splice(0, 0, inserted);
370
376
  deleted = this.items;
371
377
  this.items = inserted;
@@ -389,14 +395,13 @@ class ListView {
389
395
  }
390
396
  const unrenderedRestRanges = ( previousUnrenderedRestRanges.map(r => shift(r, delta)));
391
397
  const elementsRange = { start, end: start + elements.length };
392
- const insertRanges = ( [elementsRange, ...unrenderedRestRanges].map(r => Range.intersect(renderRange, r)));
393
- const beforeElement = this.getNextToLastElement(insertRanges);
398
+ const insertRanges = ( [elementsRange, ...unrenderedRestRanges].map(r => Range.intersect(renderRange, r))).reverse();
394
399
  for (const range of insertRanges) {
395
- for (let i = range.start; i < range.end; i++) {
400
+ for (let i = range.end - 1; i >= range.start; i--) {
396
401
  const item = this.items[i];
397
402
  const rows = rowsToDispose.get(item.templateId);
398
403
  const row = rows?.pop();
399
- this.insertItemInDOM(i, beforeElement, row);
404
+ this.insertItemInDOM(i, row);
400
405
  }
401
406
  }
402
407
  for (const rows of ( rowsToDispose.values())) {
@@ -536,9 +541,8 @@ class ListView {
536
541
  }
537
542
  render(previousRenderRange, renderTop, renderHeight, renderLeft, scrollWidth, updateItemsInDOM = false) {
538
543
  const renderRange = this.getRenderRange(renderTop, renderHeight);
539
- const rangesToInsert = Range.relativeComplement(renderRange, previousRenderRange);
544
+ const rangesToInsert = Range.relativeComplement(renderRange, previousRenderRange).reverse();
540
545
  const rangesToRemove = Range.relativeComplement(previousRenderRange, renderRange);
541
- const beforeElement = this.getNextToLastElement(rangesToInsert);
542
546
  if (updateItemsInDOM) {
543
547
  const rangesToUpdate = Range.intersect(previousRenderRange, renderRange);
544
548
  for (let i = rangesToUpdate.start; i < rangesToUpdate.end; i++) {
@@ -552,8 +556,8 @@ class ListView {
552
556
  }
553
557
  }
554
558
  for (const range of rangesToInsert) {
555
- for (let i = range.start; i < range.end; i++) {
556
- this.insertItemInDOM(i, beforeElement);
559
+ for (let i = range.end - 1; i >= range.start; i--) {
560
+ this.insertItemInDOM(i);
557
561
  }
558
562
  }
559
563
  });
@@ -567,17 +571,17 @@ class ListView {
567
571
  this.lastRenderTop = renderTop;
568
572
  this.lastRenderHeight = renderHeight;
569
573
  }
570
- insertItemInDOM(index, beforeElement, row) {
574
+ insertItemInDOM(index, row) {
571
575
  const item = this.items[index];
572
- let isStale = false;
573
576
  if (!item.row) {
574
577
  if (row) {
575
578
  item.row = row;
579
+ item.stale = true;
576
580
  }
577
581
  else {
578
582
  const result = this.cache.alloc(item.templateId);
579
583
  item.row = result.row;
580
- isStale = result.isReusingConnectedDomNode;
584
+ item.stale ||= result.isReusingConnectedDomNode;
581
585
  }
582
586
  }
583
587
  const role = this.accessibilityProvider.getRole(item.element) || 'listitem';
@@ -591,13 +595,10 @@ class ListView {
591
595
  update(checked.value);
592
596
  item.checkedDisposable = checked.onDidChange(update);
593
597
  }
594
- if (isStale || !item.row.domNode.parentElement) {
595
- if (beforeElement) {
596
- this.rowsContainer.insertBefore(item.row.domNode, beforeElement);
597
- }
598
- else {
599
- this.rowsContainer.appendChild(item.row.domNode);
600
- }
598
+ if (item.stale || !item.row.domNode.parentElement) {
599
+ const referenceNode = this.items.at(index + 1)?.row?.domNode ?? null;
600
+ this.rowsContainer.insertBefore(item.row.domNode, referenceNode);
601
+ item.stale = false;
601
602
  }
602
603
  this.updateItemInDOM(item, index);
603
604
  const renderer = this.renderers.get(item.templateId);
@@ -944,7 +945,8 @@ class ListView {
944
945
  return undefined;
945
946
  }
946
947
  const relativePosition = browserEvent.offsetY / this.items[targetIndex].size;
947
- return Math.floor(relativePosition / 0.25);
948
+ const sector = Math.floor(relativePosition / 0.25);
949
+ return clamp(sector, 0, 3);
948
950
  }
949
951
  getItemIndexFromEventTarget(target) {
950
952
  const scrollableElement = this.scrollableElement.getDomNode();
@@ -1003,13 +1005,10 @@ class ListView {
1003
1005
  }
1004
1006
  }
1005
1007
  }
1006
- const renderRanges = Range.relativeComplement(renderRange, previousRenderRange);
1008
+ const renderRanges = Range.relativeComplement(renderRange, previousRenderRange).reverse();
1007
1009
  for (const range of renderRanges) {
1008
- for (let i = range.start; i < range.end; i++) {
1009
- const afterIndex = i + 1;
1010
- const beforeRow = afterIndex < this.items.length ? this.items[afterIndex].row : null;
1011
- const beforeElement = beforeRow ? beforeRow.domNode : null;
1012
- this.insertItemInDOM(i, beforeElement);
1010
+ for (let i = range.end - 1; i >= range.start; i--) {
1011
+ this.insertItemInDOM(i);
1013
1012
  }
1014
1013
  }
1015
1014
  for (let i = renderRange.start; i < renderRange.end; i++) {
@@ -1067,20 +1066,6 @@ class ListView {
1067
1066
  this.cache.release(row);
1068
1067
  return item.size - size;
1069
1068
  }
1070
- getNextToLastElement(ranges) {
1071
- const lastRange = ranges[ranges.length - 1];
1072
- if (!lastRange) {
1073
- return null;
1074
- }
1075
- const nextToLastItem = this.items[lastRange.end];
1076
- if (!nextToLastItem) {
1077
- return null;
1078
- }
1079
- if (!nextToLastItem.row) {
1080
- return null;
1081
- }
1082
- return nextToLastItem.row.domNode;
1083
- }
1084
1069
  getElementDomId(index) {
1085
1070
  return `${this.domId}_${index}`;
1086
1071
  }
@@ -767,10 +767,6 @@ ${formatRule(Codicon.menuSubmenu)}
767
767
  cursor: default;
768
768
  }
769
769
 
770
- .monaco-menu .monaco-action-bar.animated .action-item.active {
771
- transform: scale(1.272019649, 1.272019649); /* 1.272019649 = √φ */
772
- }
773
-
774
770
  .monaco-menu .monaco-action-bar .action-item .icon,
775
771
  .monaco-menu .monaco-action-bar .action-item .codicon {
776
772
  display: inline-block;
@@ -2,6 +2,8 @@ import { $ as $$1, append, createStyleSheet, addDisposableListener, addStandardD
2
2
  import { DomEmitter } from '../../event.js';
3
3
  import { StandardKeyboardEvent } from '../../keyboardEvent.js';
4
4
  import { renderMarkdown } from '../../markdownRenderer.js';
5
+ import { getDefaultHoverDelegate } from '../hover/hoverDelegate.js';
6
+ import { setupCustomHover } from '../iconLabel/iconLabelHover.js';
5
7
  import { List } from '../list/listWidget.js';
6
8
  import { equals } from '../../../common/arrays.js';
7
9
  import { Emitter, Event } from '../../../common/event.js';
@@ -69,6 +71,7 @@ class SelectBoxList extends Disposable {
69
71
  if (typeof this.selectBoxOptions.ariaDescription === 'string') {
70
72
  this.selectElement.setAttribute('aria-description', this.selectBoxOptions.ariaDescription);
71
73
  }
74
+ this._hover = this._register(setupCustomHover(getDefaultHoverDelegate('mouse'), this.selectElement, ''));
72
75
  this._onDidSelect = ( new Emitter());
73
76
  this._register(this._onDidSelect);
74
77
  this.registerListeners();
@@ -110,7 +113,7 @@ class SelectBoxList extends Disposable {
110
113
  selected: e.target.value
111
114
  });
112
115
  if (!!this.options[this.selected] && !!this.options[this.selected].text) {
113
- this.selectElement.title = this.options[this.selected].text;
116
+ this._hover.update(this.options[this.selected].text);
114
117
  }
115
118
  }));
116
119
  this._register(addDisposableListener(this.selectElement, EventType.CLICK, (e) => {
@@ -193,7 +196,7 @@ class SelectBoxList extends Disposable {
193
196
  }
194
197
  this.selectElement.selectedIndex = this.selected;
195
198
  if (!!this.options[this.selected] && !!this.options[this.selected].text) {
196
- this.selectElement.title = this.options[this.selected].text;
199
+ this._hover.update(this.options[this.selected].text);
197
200
  }
198
201
  }
199
202
  setAriaLabel(label) {
@@ -568,7 +571,7 @@ class SelectBoxList extends Disposable {
568
571
  selected: this.options[this.selected].text
569
572
  });
570
573
  if (!!this.options[this.selected] && !!this.options[this.selected].text) {
571
- this.selectElement.title = this.options[this.selected].text;
574
+ this._hover.update(this.options[this.selected].text);
572
575
  }
573
576
  }
574
577
  this.hideSelectDropDown(true);
@@ -643,7 +646,7 @@ class SelectBoxList extends Disposable {
643
646
  selected: this.options[this.selected].text
644
647
  });
645
648
  if (!!this.options[this.selected] && !!this.options[this.selected].text) {
646
- this.selectElement.title = this.options[this.selected].text;
649
+ this._hover.update(this.options[this.selected].text);
647
650
  }
648
651
  }
649
652
  this.hideSelectDropDown(true);
@@ -1,8 +1,10 @@
1
1
  import { append, $, createStyleSheet, getContentHeight, getContentWidth, clearNode } from '../../dom.js';
2
+ import { getDefaultHoverDelegate } from '../hover/hoverDelegate.js';
3
+ import { setupCustomHover } from '../iconLabel/iconLabelHover.js';
2
4
  import { List, unthemedListStyles } from '../list/listWidget.js';
3
5
  import { SplitView } from '../splitview/splitview.js';
4
6
  import { Event, Emitter } from '../../../common/event.js';
5
- import { DisposableStore } from '../../../common/lifecycle.js';
7
+ import { DisposableStore, Disposable } from '../../../common/lifecycle.js';
6
8
  import './table.css.js';
7
9
  class TableListRenderer {
8
10
  static { this.TemplateId = 'row'; }
@@ -74,16 +76,18 @@ function asListVirtualDelegate(delegate) {
74
76
  getTemplateId() { return TableListRenderer.TemplateId; },
75
77
  };
76
78
  }
77
- class ColumnHeader {
79
+ class ColumnHeader extends Disposable {
78
80
  get minimumSize() { return this.column.minimumWidth ?? 120; }
79
81
  get maximumSize() { return this.column.maximumWidth ?? Number.POSITIVE_INFINITY; }
80
82
  get onDidChange() { return this.column.onDidChangeWidthConstraints ?? Event.None; }
81
83
  constructor(column, index) {
84
+ super();
82
85
  this.column = column;
83
86
  this.index = index;
84
87
  this._onDidLayout = ( new Emitter());
85
88
  this.onDidLayout = this._onDidLayout.event;
86
- this.element = $('.monaco-table-th', { 'data-col-index': index, title: column.tooltip }, column.label);
89
+ this.element = $('.monaco-table-th', { 'data-col-index': index }, column.label);
90
+ this._register(setupCustomHover(getDefaultHoverDelegate('mouse'), this.element, column.tooltip));
87
91
  }
88
92
  layout(size) {
89
93
  this._onDidLayout.fire([this.index, size]);
@@ -122,7 +126,7 @@ class Table {
122
126
  this.cachedWidth = 0;
123
127
  this.cachedHeight = 0;
124
128
  this.domNode = append(container, $(`.monaco-table.${this.domId}`));
125
- const headers = ( columns.map((c, i) => ( new ColumnHeader(c, i))));
129
+ const headers = ( columns.map((c, i) => this.disposables.add(( new ColumnHeader(c, i)))));
126
130
  const descriptor = {
127
131
  size: headers.reduce((a, b) => a + b.column.weight, 0),
128
132
  views: ( headers.map(view => ({ size: view.column.weight, view })))
@@ -5,6 +5,8 @@ import { ThemeIcon } from '../../../common/themables.js';
5
5
  import { Emitter } from '../../../common/event.js';
6
6
  import './toggle.css.js';
7
7
  import { $, addDisposableListener, EventType, isActiveElement } from '../../dom.js';
8
+ import { setupCustomHover } from '../iconLabel/iconLabelHover.js';
9
+ import { getDefaultHoverDelegate } from '../hover/hoverDelegate.js';
8
10
  const unthemedToggleStyles = {
9
11
  inputActiveOptionBorder: '#007ACC00',
10
12
  inputActiveOptionForeground: '#FFFFFF',
@@ -74,7 +76,7 @@ class Toggle extends Widget {
74
76
  classes.push('checked');
75
77
  }
76
78
  this.domNode = document.createElement('div');
77
- this.domNode.title = this._opts.title;
79
+ this._hover = this._register(setupCustomHover(getDefaultHoverDelegate('mouse'), this.domNode, this._opts.title));
78
80
  this.domNode.classList.add(...classes);
79
81
  if (!this._opts.notFocusable) {
80
82
  this.domNode.tabIndex = 0;
@@ -143,7 +145,7 @@ class Toggle extends Widget {
143
145
  this.domNode.setAttribute('aria-disabled', String(true));
144
146
  }
145
147
  setTitle(newTitle) {
146
- this.domNode.title = newTitle;
148
+ this._hover.update(newTitle);
147
149
  this.domNode.setAttribute('aria-label', newTitle);
148
150
  }
149
151
  }
@@ -7,6 +7,7 @@ import { EventMultiplexer } from '../../../common/event.js';
7
7
  import { Disposable, DisposableStore } from '../../../common/lifecycle.js';
8
8
  import './toolbar.css.js';
9
9
  import { localizeWithPath } from '../../../../nls.js';
10
+ import { getDefaultHoverDelegate } from '../hover/hoverDelegate.js';
10
11
  class ToolBar extends Disposable {
11
12
  constructor(container, contextMenuProvider, options = { orientation: 0 }) {
12
13
  super();
@@ -15,6 +16,7 @@ class ToolBar extends Disposable {
15
16
  this._onDidChangeDropdownVisibility = this._register(( new EventMultiplexer()));
16
17
  this.onDidChangeDropdownVisibility = this._onDidChangeDropdownVisibility.event;
17
18
  this.disposables = this._register(( new DisposableStore()));
19
+ options.hoverDelegate = options.hoverDelegate ?? this._register(getDefaultHoverDelegate('element', true));
18
20
  this.options = options;
19
21
  this.lookupKeybindings = typeof this.options.getKeyBinding === 'function';
20
22
  this.toggleMenuAction = this._register(( new ToggleMenuAction(() => this.toggleMenuActionViewItem?.show(), options.toggleMenuTitle)));
@@ -27,6 +29,7 @@ class ToolBar extends Disposable {
27
29
  actionRunner: options.actionRunner,
28
30
  allowContextMenu: options.allowContextMenu,
29
31
  highlightToggledItems: options.highlightToggledItems,
32
+ hoverDelegate: options.hoverDelegate,
30
33
  actionViewItemProvider: (action, viewItemOptions) => {
31
34
  if (action.id === ToggleMenuAction.ID) {
32
35
  this.toggleMenuActionViewItem = ( new DropdownMenuActionViewItem(action, action.menuActions, contextMenuProvider, {
@@ -37,7 +40,8 @@ class ToolBar extends Disposable {
37
40
  anchorAlignmentProvider: this.options.anchorAlignmentProvider,
38
41
  menuAsChild: !!this.options.renderDropdownAsChildElement,
39
42
  skipTelemetry: this.options.skipTelemetry,
40
- isMenu: true
43
+ isMenu: true,
44
+ hoverDelegate: this.options.hoverDelegate
41
45
  }));
42
46
  this.toggleMenuActionViewItem.setActionContext(this.actionBar.context);
43
47
  this.disposables.add(this._onDidChangeDropdownVisibility.add(this.toggleMenuActionViewItem.onDidChangeVisibility));
@@ -57,7 +61,8 @@ class ToolBar extends Disposable {
57
61
  classNames: action.class,
58
62
  anchorAlignmentProvider: this.options.anchorAlignmentProvider,
59
63
  menuAsChild: !!this.options.renderDropdownAsChildElement,
60
- skipTelemetry: this.options.skipTelemetry
64
+ skipTelemetry: this.options.skipTelemetry,
65
+ hoverDelegate: this.options.hoverDelegate
61
66
  }));
62
67
  result.setActionContext(this.actionBar.context);
63
68
  this.submenuActionViewItems.push(result);
@@ -590,6 +590,7 @@ class AsyncDataTree {
590
590
  if (treeNode.collapsed) {
591
591
  node.hasChildren = !!this.dataSource.hasChildren(node.element);
592
592
  node.stale = true;
593
+ this.setChildren(node, [], recursive, viewStateContext);
593
594
  return;
594
595
  }
595
596
  }
@@ -158,7 +158,7 @@ function toAction(props) {
158
158
  label: props.label,
159
159
  class: props.class,
160
160
  enabled: props.enabled ?? true,
161
- checked: props.checked ?? false,
161
+ checked: props.checked,
162
162
  run: async (...args) => props.run(...args),
163
163
  tooltip: props.label
164
164
  };
@@ -9,7 +9,7 @@ function assertNever(value, message = 'Unreachable') {
9
9
  }
10
10
  function softAssert(condition) {
11
11
  if (!condition) {
12
- onUnexpectedError(( new BugIndicatingError('Assertion Failed')));
12
+ onUnexpectedError(( new BugIndicatingError('Soft Assertion Failed')));
13
13
  }
14
14
  }
15
15
  function assertFn(condition) {
@@ -100,6 +100,15 @@ function asPromise(callback) {
100
100
  }
101
101
  }));
102
102
  }
103
+ function promiseWithResolvers() {
104
+ let resolve;
105
+ let reject;
106
+ const promise = ( new Promise((res, rej) => {
107
+ resolve = res;
108
+ reject = rej;
109
+ }));
110
+ return { promise, resolve: resolve, reject: reject };
111
+ }
103
112
  class Throttler {
104
113
  constructor() {
105
114
  this.isDisposed = false;
@@ -759,12 +768,7 @@ class TaskSequentializer {
759
768
  }
760
769
  queue(run) {
761
770
  if (!this._queued) {
762
- let promiseResolve;
763
- let promiseReject;
764
- const promise = ( new Promise((resolve, reject) => {
765
- promiseResolve = resolve;
766
- promiseReject = reject;
767
- }));
771
+ const { promise, resolve: promiseResolve, reject: promiseReject } = promiseWithResolvers();
768
772
  this._queued = {
769
773
  run,
770
774
  promise,
@@ -1125,4 +1129,4 @@ class AsyncIterableSource {
1125
1129
  this._emitFn(item);
1126
1130
  }
1127
1131
  }
1128
- export { AbstractIdleValue, AsyncIterableObject, AsyncIterableSource, AutoOpenBarrier, Barrier, CancelableAsyncIterableObject, DeferredPromise, Delayer, GlobalIdleValue, IntervalCounter, IntervalTimer, LazyStatefulPromise, Limiter, Promises, Queue, ResourceQueue, RunOnceScheduler, RunOnceWorker, Sequencer, SequencerByKey, StatefulPromise, TaskSequentializer, ThrottledDelayer, Throttler, TimeoutTimer, _runWhenIdle, asPromise, createCancelableAsyncIterable, createCancelablePromise, disposableTimeout, first, isThenable, raceCancellablePromises, raceCancellation, raceCancellationError, raceTimeout, retry, runWhenGlobalIdle, sequence, timeout };
1132
+ export { AbstractIdleValue, AsyncIterableObject, AsyncIterableSource, AutoOpenBarrier, Barrier, CancelableAsyncIterableObject, DeferredPromise, Delayer, GlobalIdleValue, IntervalCounter, IntervalTimer, LazyStatefulPromise, Limiter, Promises, Queue, ResourceQueue, RunOnceScheduler, RunOnceWorker, Sequencer, SequencerByKey, StatefulPromise, TaskSequentializer, ThrottledDelayer, Throttler, TimeoutTimer, _runWhenIdle, asPromise, createCancelableAsyncIterable, createCancelablePromise, disposableTimeout, first, isThenable, promiseWithResolvers, raceCancellablePromises, raceCancellation, raceCancellationError, raceTimeout, retry, runWhenGlobalIdle, sequence, timeout };
@@ -556,6 +556,10 @@ declare const Codicon: {
556
556
  readonly gitStash: ThemeIcon;
557
557
  readonly gitStashApply: ThemeIcon;
558
558
  readonly gitStashPop: ThemeIcon;
559
+ readonly runAllCoverage: ThemeIcon;
560
+ readonly runCoverage: ThemeIcon;
561
+ readonly coverage: ThemeIcon;
562
+ readonly githubProject: ThemeIcon;
559
563
  readonly dialogError: ThemeIcon;
560
564
  readonly dialogWarning: ThemeIcon;
561
565
  readonly dialogInfo: ThemeIcon;
@@ -566,6 +566,10 @@ const Codicon = {
566
566
  gitStash: register('git-stash', 0xec26),
567
567
  gitStashApply: register('git-stash-apply', 0xec27),
568
568
  gitStashPop: register('git-stash-pop', 0xec28),
569
+ runAllCoverage: register('run-all-coverage', 0xec2d),
570
+ runCoverage: register('run-all-coverage', 0xec2c),
571
+ coverage: register('coverage', 0xec2e),
572
+ githubProject: register('github-project', 0xec2f),
569
573
  dialogError: register('dialog-error', 'error'),
570
574
  dialogWarning: register('dialog-warning', 'warning'),
571
575
  dialogInfo: register('dialog-info', 'info'),
@@ -381,6 +381,60 @@ function fromNow(date, appendAgoLabel, useFullTimeWords, disallowNow) {
381
381
  }
382
382
  }
383
383
  }
384
+ function getDurationString(ms, useFullTimeWords) {
385
+ const seconds = Math.abs(ms / 1000);
386
+ if (seconds < 1) {
387
+ return useFullTimeWords
388
+ ? ( localizeWithPath('vs/base/common/date', 'duration.ms.full', '{0} milliseconds', ms))
389
+ : ( localizeWithPath('vs/base/common/date', 'duration.ms', '{0}ms', ms));
390
+ }
391
+ if (seconds < minute) {
392
+ return useFullTimeWords
393
+ ? ( localizeWithPath(
394
+ 'vs/base/common/date',
395
+ 'duration.s.full',
396
+ '{0} seconds',
397
+ Math.round(ms) / 1000
398
+ ))
399
+ : ( localizeWithPath('vs/base/common/date', 'duration.s', '{0}s', Math.round(ms) / 1000));
400
+ }
401
+ if (seconds < hour) {
402
+ return useFullTimeWords
403
+ ? ( localizeWithPath(
404
+ 'vs/base/common/date',
405
+ 'duration.m.full',
406
+ '{0} minutes',
407
+ Math.round(ms / (1000 * minute))
408
+ ))
409
+ : ( localizeWithPath(
410
+ 'vs/base/common/date',
411
+ 'duration.m',
412
+ '{0} mins',
413
+ Math.round(ms / (1000 * minute))
414
+ ));
415
+ }
416
+ if (seconds < day) {
417
+ return useFullTimeWords
418
+ ? ( localizeWithPath(
419
+ 'vs/base/common/date',
420
+ 'duration.h.full',
421
+ '{0} hours',
422
+ Math.round(ms / (1000 * hour))
423
+ ))
424
+ : ( localizeWithPath(
425
+ 'vs/base/common/date',
426
+ 'duration.h',
427
+ '{0} hrs',
428
+ Math.round(ms / (1000 * hour))
429
+ ));
430
+ }
431
+ return ( localizeWithPath(
432
+ 'vs/base/common/date',
433
+ 'duration.d',
434
+ '{0} days',
435
+ Math.round(ms / (1000 * day))
436
+ ));
437
+ }
384
438
  function toLocalISOString(date) {
385
439
  return date.getFullYear() +
386
440
  '-' + String(date.getMonth() + 1).padStart(2, '0') +
@@ -391,4 +445,4 @@ function toLocalISOString(date) {
391
445
  '.' + (date.getMilliseconds() / 1000).toFixed(3).slice(2, 5) +
392
446
  'Z';
393
447
  }
394
- export { fromNow, toLocalISOString };
448
+ export { fromNow, getDurationString, toLocalISOString };
@@ -834,13 +834,15 @@ class EventMultiplexer {
834
834
  e.listener = e.event(r => this.emitter.fire(r));
835
835
  }
836
836
  unhook(e) {
837
- if (e.listener) {
838
- e.listener.dispose();
839
- }
837
+ e.listener?.dispose();
840
838
  e.listener = null;
841
839
  }
842
840
  dispose() {
843
841
  this.emitter.dispose();
842
+ for (const e of this.events) {
843
+ e.listener?.dispose();
844
+ }
845
+ this.events = [];
844
846
  }
845
847
  }
846
848
  class DynamicListEventMultiplexer {
@@ -204,7 +204,7 @@ function matchesCamelCase(word, camelCaseWord) {
204
204
  return null;
205
205
  }
206
206
  if (camelCaseWord.length > 60) {
207
- return null;
207
+ camelCaseWord = camelCaseWord.substring(0, 60);
208
208
  }
209
209
  const analysis = analyzeCamelCaseWord(camelCaseWord);
210
210
  if (!isCamelCaseWord(analysis)) {
@@ -20,9 +20,10 @@ function registerGlobalHotReloadHandler() {
20
20
  }
21
21
  const g = globalThis;
22
22
  if (!g.$hotReload_applyNewExports) {
23
- g.$hotReload_applyNewExports = oldExports => {
23
+ g.$hotReload_applyNewExports = args => {
24
+ const args2 = { config: { mode: undefined }, ...args };
24
25
  for (const h of hotReloadHandlers) {
25
- const result = h(oldExports);
26
+ const result = h(args2);
26
27
  if (result) {
27
28
  return result;
28
29
  }
@@ -34,8 +35,8 @@ function registerGlobalHotReloadHandler() {
34
35
  }
35
36
  let hotReloadHandlers = undefined;
36
37
  if (isHotReloadEnabled()) {
37
- registerHotReloadHandler(({ oldExports, newSrc }) => {
38
- if (newSrc.indexOf('/* ' + 'hot-reload:patch-prototype-methods */') === -1) {
38
+ registerHotReloadHandler(({ oldExports, newSrc, config }) => {
39
+ if (config.mode !== 'patch-prototype') {
39
40
  return undefined;
40
41
  }
41
42
  return newExports => {
@@ -30,6 +30,7 @@ var Schemas;
30
30
  Schemas.vscodeSettings = 'vscode-settings';
31
31
  Schemas.vscodeWorkspaceTrust = 'vscode-workspace-trust';
32
32
  Schemas.vscodeTerminal = 'vscode-terminal';
33
+ Schemas.vscodeChatCodeBlock = 'vscode-chat-code-block';
33
34
  Schemas.vscodeChatSesssion = 'vscode-chat-editor';
34
35
  Schemas.webviewPanel = 'webview-panel';
35
36
  Schemas.vscodeWebview = 'vscode-webview';
@@ -38,6 +39,8 @@ var Schemas;
38
39
  Schemas.tmp = 'tmp';
39
40
  Schemas.vsls = 'vsls';
40
41
  Schemas.vscodeSourceControl = 'vscode-scm';
42
+ Schemas.codeSetting = 'code-setting';
43
+ Schemas.codeFeature = 'code-feature';
41
44
  })(Schemas || (Schemas = {})));
42
45
  function matchesScheme(target, scheme) {
43
46
  if (URI.isUri(target)) {