@codingame/monaco-vscode-api 2.0.3 → 2.1.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 (511) hide show
  1. package/api.js +15 -12
  2. package/extensions.d.ts +4 -7
  3. package/external/@xterm/xterm/typings/xterm.d.ts +22 -0
  4. package/missing-services.js +62 -6
  5. package/package.json +8 -8
  6. package/service-override/tools/editor.js +14 -0
  7. package/services.d.ts +3 -2
  8. package/services.js +6 -4
  9. package/vscode/src/vs/base/browser/browser.js +45 -30
  10. package/vscode/src/vs/base/browser/canIUse.js +1 -1
  11. package/vscode/src/vs/base/browser/defaultWorkerFactory.js +12 -5
  12. package/vscode/src/vs/base/browser/dom.js +104 -14
  13. package/vscode/src/vs/base/browser/indexedDB.js +3 -3
  14. package/vscode/src/vs/base/browser/markdownRenderer.js +29 -1
  15. package/vscode/src/vs/base/browser/mouseEvent.js +17 -3
  16. package/vscode/src/vs/base/browser/ui/actionbar/actionbar.js +3 -3
  17. package/vscode/src/vs/base/browser/ui/breadcrumbs/breadcrumbsWidget.css.js +4 -0
  18. package/vscode/src/vs/base/browser/ui/breadcrumbs/breadcrumbsWidget.d.ts +1 -1
  19. package/vscode/src/vs/base/browser/ui/breadcrumbs/breadcrumbsWidget.js +287 -0
  20. package/vscode/src/vs/base/browser/ui/button/button.js +9 -0
  21. package/vscode/src/vs/base/browser/ui/codicons/codicon/codicon.css.js +1 -1
  22. package/vscode/src/vs/base/browser/ui/dialog/dialog.js +1 -1
  23. package/vscode/src/vs/base/browser/ui/iconLabel/iconLabelHover.js +16 -5
  24. package/vscode/src/vs/base/browser/ui/list/listView.js +31 -11
  25. package/vscode/src/vs/base/browser/ui/list/listWidget.js +35 -21
  26. package/vscode/src/vs/base/browser/ui/menu/menu.js +10 -1
  27. package/vscode/src/vs/base/browser/ui/menu/menubar.js +8 -4
  28. package/vscode/src/vs/base/browser/ui/scrollbar/scrollableElement.js +6 -5
  29. package/vscode/src/vs/base/browser/ui/tree/abstractTree.js +469 -95
  30. package/vscode/src/vs/base/browser/ui/tree/asyncDataTree.js +22 -7
  31. package/vscode/src/vs/base/browser/ui/tree/indexTreeModel.js +0 -5
  32. package/vscode/src/vs/base/browser/ui/tree/media/tree.css.js +1 -1
  33. package/vscode/src/vs/base/browser/ui/tree/objectTree.js +70 -4
  34. package/vscode/src/vs/base/common/assert.js +6 -1
  35. package/vscode/src/vs/base/common/async.js +31 -6
  36. package/vscode/src/vs/base/common/codicons.js +5 -0
  37. package/vscode/src/vs/base/common/event.d.ts +0 -5
  38. package/vscode/src/vs/base/common/event.js +0 -15
  39. package/vscode/src/vs/base/common/filters.d.ts +1 -18
  40. package/vscode/src/vs/base/common/htmlContent.js +12 -6
  41. package/vscode/src/vs/base/common/iterator.js +8 -0
  42. package/vscode/src/vs/base/common/labels.js +2 -1
  43. package/vscode/src/vs/base/common/map.js +20 -1
  44. package/vscode/src/vs/base/common/observableInternal/base.d.ts +4 -0
  45. package/vscode/src/vs/base/common/observableInternal/base.js +16 -8
  46. package/vscode/src/vs/base/common/observableInternal/derived.js +4 -6
  47. package/vscode/src/vs/base/common/observableInternal/utils.js +60 -5
  48. package/vscode/src/vs/base/common/platform.js +20 -20
  49. package/vscode/src/vs/base/common/prefixTree.js +4 -3
  50. package/vscode/src/vs/base/common/product.d.ts +5 -2
  51. package/vscode/src/vs/base/common/strings.js +23 -7
  52. package/vscode/src/vs/base/common/themables.js +4 -1
  53. package/vscode/src/vs/base/common/uri.js +11 -1
  54. package/vscode/src/vs/base/common/worker/simpleWorker.js +1 -1
  55. package/vscode/src/vs/editor/browser/config/migrateOptions.js +5 -0
  56. package/vscode/src/vs/editor/browser/controller/mouseHandler.js +1 -0
  57. package/vscode/src/vs/editor/browser/controller/mouseTarget.js +14 -8
  58. package/vscode/src/vs/editor/browser/controller/pointerHandler.js +18 -11
  59. package/vscode/src/vs/editor/browser/controller/textAreaHandler.js +1 -1
  60. package/vscode/src/vs/editor/browser/controller/textAreaInput.js +3 -3
  61. package/vscode/src/vs/{workbench/services/hover/browser → editor/browser/services}/hoverService.d.ts +7 -6
  62. package/vscode/src/vs/editor/browser/services/hoverService.js +195 -0
  63. package/vscode/src/vs/editor/browser/view.js +29 -39
  64. package/vscode/src/vs/editor/browser/viewParts/currentLineHighlight/currentLineHighlight.js +41 -19
  65. package/vscode/src/vs/editor/browser/viewParts/editorScrollbar/editorScrollbar.js +1 -1
  66. package/vscode/src/vs/editor/browser/viewParts/glyphMargin/glyphMargin.js +30 -23
  67. package/vscode/src/vs/editor/browser/viewParts/lineNumbers/lineNumbers.js +23 -8
  68. package/vscode/src/vs/editor/browser/viewParts/lines/viewLines.js +1 -1
  69. package/vscode/src/vs/editor/browser/viewParts/linesDecorations/linesDecorations.js +8 -1
  70. package/vscode/src/vs/editor/browser/viewParts/marginDecorations/marginDecorations.js +7 -1
  71. package/vscode/src/vs/editor/browser/viewParts/minimap/minimap.js +1 -1
  72. package/vscode/src/vs/editor/browser/viewParts/overlayWidgets/overlayWidgets.js +30 -3
  73. package/vscode/src/vs/editor/browser/widget/codeEditorWidget.js +39 -15
  74. package/vscode/src/vs/editor/browser/widget/diffEditor/{accessibleDiffViewer.css.js → components/accessibleDiffViewer.css.js} +1 -1
  75. package/vscode/src/vs/editor/browser/widget/diffEditor/{accessibleDiffViewer.js → components/accessibleDiffViewer.js} +43 -43
  76. package/vscode/src/vs/editor/browser/widget/diffEditor/components/diffEditorDecorations.js +89 -0
  77. package/vscode/src/vs/editor/browser/widget/diffEditor/{diffEditorEditors.js → components/diffEditorEditors.js} +14 -14
  78. package/vscode/src/vs/editor/browser/widget/diffEditor/{diffEditorSash.js → components/diffEditorSash.js} +5 -5
  79. package/vscode/src/vs/editor/browser/widget/diffEditor/{lineAlignment.js → components/diffEditorViewZones/diffEditorViewZones.js} +38 -28
  80. package/vscode/src/vs/editor/browser/widget/diffEditor/{inlineDiffDeletedCodeMargin.js → components/diffEditorViewZones/inlineDiffDeletedCodeMargin.js} +14 -14
  81. package/vscode/src/vs/editor/browser/widget/diffEditor/{renderLines.js → components/diffEditorViewZones/renderLines.js} +7 -7
  82. package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditor.contribution.js +29 -38
  83. package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditorViewModel.js +150 -38
  84. package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditorWidget.js +17 -16
  85. package/vscode/src/vs/editor/browser/widget/diffEditor/diffProviderFactoryService.js +104 -6
  86. package/vscode/src/vs/editor/browser/widget/diffEditor/{hideUnchangedRegionsFeature.js → features/hideUnchangedRegionsFeature.js} +51 -78
  87. package/vscode/src/vs/editor/browser/widget/diffEditor/{movedBlocksLines.js → features/movedBlocksLinesFeature.js} +23 -23
  88. package/vscode/src/vs/editor/browser/widget/diffEditor/{overviewRulerPart.js → features/overviewRulerFeature.js} +28 -28
  89. package/vscode/src/vs/editor/browser/widget/diffEditor/features/revertButtonsFeature.js +145 -0
  90. package/vscode/src/vs/editor/browser/widget/diffEditor/{decorations.js → registrations.contribution.js} +18 -2
  91. package/vscode/src/vs/editor/browser/widget/diffEditor/utils.js +10 -2
  92. package/vscode/src/vs/editor/browser/widget/hoverWidget/hover.css.js +4 -0
  93. package/vscode/src/vs/editor/browser/widget/hoverWidget/hoverWidget.js +527 -0
  94. package/vscode/src/vs/editor/{contrib → browser/widget}/markdownRenderer/browser/markdownRenderer.js +11 -11
  95. package/vscode/src/vs/editor/{contrib → browser/widget}/markdownRenderer/browser/renderedMarkdown.css.js +1 -1
  96. package/vscode/src/vs/editor/common/config/editorOptions.d.ts +11 -10
  97. package/vscode/src/vs/editor/common/config/editorOptions.js +46 -42
  98. package/vscode/src/vs/editor/common/core/editorColorRegistry.js +3 -3
  99. package/vscode/src/vs/editor/common/core/offsetRange.d.ts +2 -0
  100. package/vscode/src/vs/editor/common/core/offsetRange.js +8 -0
  101. package/vscode/src/vs/editor/common/diff/defaultLinesDiffComputer/algorithms/diffAlgorithm.js +9 -0
  102. package/vscode/src/vs/editor/common/diff/defaultLinesDiffComputer/heuristicSequenceOptimizations.js +50 -47
  103. package/vscode/src/vs/editor/common/diff/defaultLinesDiffComputer/linesSliceCharSequence.js +4 -1
  104. package/vscode/src/vs/editor/common/diff/rangeMapping.d.ts +2 -1
  105. package/vscode/src/vs/editor/common/diff/rangeMapping.js +13 -2
  106. package/vscode/src/vs/editor/common/languages.d.ts +10 -2
  107. package/vscode/src/vs/editor/common/model/textModel.js +19 -13
  108. package/vscode/src/vs/editor/common/model/tokenizationTextModelPart.js +1 -1
  109. package/vscode/src/vs/editor/common/model.d.ts +19 -1
  110. package/vscode/src/vs/editor/common/model.js +2 -1
  111. package/vscode/src/vs/editor/common/services/editorSimpleWorker.js +2 -1
  112. package/vscode/src/vs/editor/common/services/getIconClasses.js +4 -1
  113. package/vscode/src/vs/editor/common/services/semanticTokensProviderStyling.js +3 -3
  114. package/vscode/src/vs/editor/common/standalone/standaloneEnums.js +9 -8
  115. package/vscode/src/vs/editor/common/standaloneStrings.js +18 -18
  116. package/vscode/src/vs/editor/common/viewEvents.js +2 -0
  117. package/vscode/src/vs/editor/common/viewModel/glyphLanesModel.js +55 -0
  118. package/vscode/src/vs/editor/common/viewModel/viewModelImpl.js +4 -1
  119. package/vscode/src/vs/editor/contrib/clipboard/browser/clipboard.js +5 -1
  120. package/vscode/src/vs/editor/contrib/codeAction/browser/codeAction.js +1 -0
  121. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionController.js +46 -20
  122. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionMenu.js +1 -1
  123. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionModel.js +38 -11
  124. package/vscode/src/vs/editor/contrib/codeAction/browser/lightBulbWidget.js +56 -101
  125. package/vscode/src/vs/editor/contrib/codelens/browser/codelensWidget.js +3 -2
  126. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorContributions.js +2 -2
  127. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorHoverParticipant.js +10 -29
  128. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorPickerWidget.js +4 -4
  129. package/vscode/src/vs/editor/contrib/diffEditorBreadcrumbs/browser/contribution.js +51 -0
  130. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/copyPasteContribution.js +19 -1
  131. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/copyPasteController.js +38 -10
  132. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/defaultProviders.js +29 -1
  133. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/edit.js +10 -3
  134. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/postEditWidget.js +3 -17
  135. package/vscode/src/vs/editor/contrib/find/browser/findController.js +3 -35
  136. package/vscode/src/vs/editor/contrib/folding/browser/foldingDecorations.js +26 -6
  137. package/vscode/src/vs/editor/contrib/fontZoom/browser/fontZoom.js +6 -6
  138. package/vscode/src/vs/editor/contrib/format/browser/format.js +9 -9
  139. package/vscode/src/vs/editor/contrib/format/browser/formatActions.js +5 -5
  140. package/vscode/src/vs/editor/contrib/gotoError/browser/media/gotoErrorWidget.css.js +1 -1
  141. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/goToCommands.js +2 -2
  142. package/vscode/src/vs/editor/contrib/hover/browser/contentHover.js +85 -76
  143. package/vscode/src/vs/editor/contrib/hover/browser/hover.js +120 -90
  144. package/vscode/src/vs/editor/contrib/hover/browser/marginHover.js +18 -6
  145. package/vscode/src/vs/editor/contrib/hover/browser/markdownHoverParticipant.js +1 -1
  146. package/vscode/src/vs/editor/contrib/hover/browser/markerHoverParticipant.js +2 -2
  147. package/vscode/src/vs/editor/contrib/inlayHints/browser/inlayHints.js +4 -2
  148. package/vscode/src/vs/editor/contrib/inlayHints/browser/inlayHintsController.js +56 -38
  149. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/hoverParticipant.js +1 -1
  150. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsController.js +12 -0
  151. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsHintsWidget.js +4 -0
  152. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsModel.js +2 -2
  153. package/vscode/src/vs/editor/contrib/linkedEditing/browser/linkedEditing.js +50 -53
  154. package/vscode/src/vs/editor/contrib/message/browser/messageController.js +5 -2
  155. package/vscode/src/vs/editor/contrib/parameterHints/browser/parameterHintsWidget.js +1 -1
  156. package/vscode/src/vs/editor/contrib/semanticTokens/browser/documentSemanticTokens.js +5 -1
  157. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScroll.css.js +1 -1
  158. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollActions.js +4 -4
  159. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollController.js +8 -5
  160. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollWidget.js +58 -46
  161. package/vscode/src/vs/editor/contrib/suggest/browser/suggestController.js +34 -7
  162. package/vscode/src/vs/editor/contrib/suggest/browser/suggestInlineCompletions.js +30 -38
  163. package/vscode/src/vs/editor/contrib/suggest/browser/suggestModel.js +2 -2
  164. package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidget.js +11 -3
  165. package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidgetDetails.js +18 -7
  166. package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidgetRenderer.js +8 -10
  167. package/vscode/src/vs/editor/contrib/unicodeHighlighter/browser/bannerController.js +1 -1
  168. package/vscode/src/vs/editor/contrib/unicodeHighlighter/browser/unicodeHighlighter.js +7 -6
  169. package/vscode/src/vs/editor/contrib/wordHighlighter/browser/wordHighlighter.js +3 -0
  170. package/vscode/src/vs/editor/editor.api.d.ts +82 -11
  171. package/vscode/src/vs/editor/standalone/browser/quickInput/standaloneQuickInputService.js +8 -3
  172. package/vscode/src/vs/editor/standalone/browser/standaloneLayoutService.js +4 -3
  173. package/vscode/src/vs/editor/standalone/browser/standaloneServices.js +22 -11
  174. package/vscode/src/vs/editor/standalone/browser/standaloneThemeService.js +1 -1
  175. package/vscode/src/vs/nls.d.ts +6 -0
  176. package/vscode/src/vs/platform/accessibility/browser/accessibilityService.js +4 -1
  177. package/vscode/src/vs/platform/accessibility/common/accessibility.d.ts +2 -16
  178. package/vscode/src/vs/platform/accessibility/common/accessibility.js +1 -2
  179. package/vscode/src/vs/platform/action/common/actionCommonCategories.d.ts +7 -20
  180. package/vscode/src/vs/platform/action/common/actionCommonCategories.js +8 -8
  181. package/vscode/src/vs/platform/actionWidget/browser/actionList.js +0 -1
  182. package/vscode/src/vs/platform/actionWidget/browser/actionWidget.css.js +1 -1
  183. package/vscode/src/vs/platform/actions/browser/buttonbar.js +2 -0
  184. package/vscode/src/vs/platform/actions/browser/dropdownWithPrimaryActionViewItem.js +5 -0
  185. package/vscode/src/vs/platform/actions/browser/menuEntryActionViewItem.css.js +1 -1
  186. package/vscode/src/vs/platform/actions/browser/menuEntryActionViewItem.js +2 -2
  187. package/vscode/src/vs/platform/actions/common/actions.d.ts +9 -1
  188. package/vscode/src/vs/platform/actions/common/actions.js +12 -1
  189. package/vscode/src/vs/platform/audioCues/browser/audioCueService.d.ts +11 -1
  190. package/vscode/src/vs/platform/audioCues/browser/audioCueService.js +174 -28
  191. package/vscode/src/vs/platform/clipboard/browser/clipboardService.js +38 -5
  192. package/vscode/src/vs/platform/configuration/common/configuration.d.ts +0 -1
  193. package/vscode/src/vs/platform/environment/common/environmentService.js +1 -1
  194. package/vscode/src/vs/platform/extensionManagement/common/extensionManagement.d.ts +5 -1
  195. package/vscode/src/vs/platform/extensionManagement/common/extensionManagement.js +24 -5
  196. package/vscode/src/vs/platform/extensions/common/extensions.d.ts +6 -1
  197. package/vscode/src/vs/{workbench/services → platform}/hover/browser/hover.d.ts +6 -8
  198. package/vscode/src/vs/platform/hover/browser/hover.js +3 -0
  199. package/vscode/src/vs/platform/instantiation/common/instantiationService.js +14 -4
  200. package/vscode/src/vs/platform/keybinding/common/abstractKeybindingService.js +11 -4
  201. package/vscode/src/vs/platform/keybinding/common/keybinding.d.ts +7 -0
  202. package/vscode/src/vs/platform/layout/browser/layoutService.d.ts +6 -0
  203. package/vscode/src/vs/platform/list/browser/listService.js +7 -5
  204. package/vscode/src/vs/platform/log/common/bufferLog.js +1 -0
  205. package/vscode/src/vs/platform/log/common/log.d.ts +0 -1
  206. package/vscode/src/vs/platform/log/common/log.js +1 -2
  207. package/vscode/src/vs/platform/notification/common/notification.d.ts +36 -19
  208. package/vscode/src/vs/platform/notification/common/notification.js +9 -3
  209. package/vscode/src/vs/platform/quickinput/browser/pickerQuickAccess.js +4 -1
  210. package/vscode/src/vs/platform/quickinput/browser/quickInput.js +50 -48
  211. package/vscode/src/vs/platform/quickinput/browser/quickInputController.js +3 -5
  212. package/vscode/src/vs/platform/quickinput/browser/quickInputList.js +49 -66
  213. package/vscode/src/vs/platform/quickinput/browser/quickInputService.js +11 -3
  214. package/vscode/src/vs/platform/quickinput/browser/quickInputUtils.js +16 -2
  215. package/vscode/src/vs/platform/quickinput/common/quickInput.d.ts +230 -26
  216. package/vscode/src/vs/platform/remote/common/remoteAuthorityResolver.d.ts +1 -0
  217. package/vscode/src/vs/platform/telemetry/common/telemetryUtils.js +1 -0
  218. package/vscode/src/vs/platform/theme/browser/defaultStyles.js +5 -3
  219. package/vscode/src/vs/platform/theme/common/colorRegistry.js +28 -9
  220. package/vscode/src/vs/platform/tunnel/common/tunnel.d.ts +2 -0
  221. package/vscode/src/vs/platform/window/common/window.js +14 -8
  222. package/vscode/src/vs/workbench/api/common/extHost.api.impl.js +97 -78
  223. package/vscode/src/vs/workbench/api/common/extHost.protocol.js +1 -1
  224. package/vscode/src/vs/workbench/api/common/extHostAuthentication.js +1 -22
  225. package/vscode/src/vs/workbench/api/common/extHostChat.js +0 -6
  226. package/vscode/src/vs/workbench/api/common/extHostChatAgents2.js +31 -36
  227. package/vscode/src/vs/workbench/api/common/extHostChatVariables.js +1 -1
  228. package/vscode/src/vs/workbench/api/common/extHostComments.js +6 -1
  229. package/vscode/src/vs/workbench/api/common/extHostConsoleForwarder.js +1 -0
  230. package/vscode/src/vs/workbench/api/common/extHostDebugService.js +130 -6
  231. package/vscode/src/vs/workbench/api/common/extHostDocumentContentProviders.js +28 -15
  232. package/vscode/src/vs/workbench/api/common/extHostDocuments.js +4 -5
  233. package/vscode/src/vs/workbench/api/common/extHostExtensionService.js +5 -1
  234. package/vscode/src/vs/workbench/api/common/extHostFileSystem.js +1 -2
  235. package/vscode/src/vs/workbench/api/common/extHostFileSystemConsumer.js +2 -2
  236. package/vscode/src/vs/workbench/api/common/extHostInlineChat.js +35 -33
  237. package/vscode/src/vs/workbench/api/common/extHostLanguageFeatures.js +40 -13
  238. package/vscode/src/vs/workbench/api/common/extHostMessageService.js +10 -1
  239. package/vscode/src/vs/workbench/api/common/extHostNotebook.js +11 -7
  240. package/vscode/src/vs/workbench/api/common/extHostNotebookEditors.js +2 -3
  241. package/vscode/src/vs/workbench/api/common/extHostNotebookKernels.js +29 -4
  242. package/vscode/src/vs/workbench/api/common/extHostProfileContentHandler.js +1 -1
  243. package/vscode/src/vs/workbench/api/common/extHostProgress.js +1 -7
  244. package/vscode/src/vs/workbench/api/common/extHostSCM.js +49 -93
  245. package/vscode/src/vs/workbench/api/common/extHostSpeech.js +21 -0
  246. package/vscode/src/vs/workbench/api/common/extHostTask.js +18 -22
  247. package/vscode/src/vs/workbench/api/common/extHostTelemetry.js +1 -0
  248. package/vscode/src/vs/workbench/api/common/extHostTerminalService.js +3 -3
  249. package/vscode/src/vs/workbench/api/common/extHostTesting.js +55 -36
  250. package/vscode/src/vs/workbench/api/common/extHostTextEditor.js +5 -2
  251. package/vscode/src/vs/workbench/api/common/extHostTextEditors.js +6 -7
  252. package/vscode/src/vs/workbench/api/common/extHostTreeViews.js +6 -3
  253. package/vscode/src/vs/workbench/api/common/extHostTunnelService.js +4 -2
  254. package/vscode/src/vs/workbench/api/common/extHostTypeConverters.js +74 -12
  255. package/vscode/src/vs/workbench/api/common/extHostTypes.js +27 -8
  256. package/vscode/src/vs/workbench/api/worker/extHostConsoleForwarder.js +1 -1
  257. package/vscode/src/vs/workbench/browser/actions/layoutActions.js +172 -103
  258. package/vscode/src/vs/workbench/browser/actions/windowActions.js +13 -17
  259. package/vscode/src/vs/workbench/browser/actions/workspaceActions.js +34 -34
  260. package/vscode/src/vs/workbench/browser/actions/workspaceCommands.js +4 -4
  261. package/vscode/src/vs/workbench/browser/dnd.js +2 -2
  262. package/vscode/src/vs/workbench/browser/labels.js +34 -4
  263. package/vscode/src/vs/workbench/browser/part.js +2 -2
  264. package/vscode/src/vs/workbench/browser/parts/auxiliarybar/auxiliaryBarActions.js +4 -4
  265. package/vscode/src/vs/workbench/browser/parts/compositeBarActions.js +1 -1
  266. package/vscode/src/vs/workbench/browser/parts/editor/breadcrumbsControl.js +801 -0
  267. package/vscode/src/vs/workbench/browser/parts/editor/breadcrumbsModel.js +140 -0
  268. package/vscode/src/vs/workbench/browser/parts/editor/breadcrumbsPicker.js +410 -0
  269. package/vscode/src/vs/workbench/browser/parts/editor/editor.js +1 -2
  270. package/vscode/src/vs/workbench/browser/parts/editor/editorActions.js +304 -303
  271. package/vscode/src/vs/workbench/browser/parts/editor/editorAutoSave.js +101 -47
  272. package/vscode/src/vs/workbench/browser/parts/editor/editorCommands.js +114 -47
  273. package/vscode/src/vs/workbench/browser/parts/editor/editorGroupView.js +1313 -0
  274. package/vscode/src/vs/workbench/browser/parts/editor/editorGroupWatermark.js +190 -0
  275. package/vscode/src/vs/workbench/browser/parts/editor/editorPanes.js +344 -0
  276. package/vscode/src/vs/workbench/browser/parts/editor/editorQuickAccess.js +1 -1
  277. package/vscode/src/vs/workbench/browser/parts/editor/editorStatus.js +10 -10
  278. package/vscode/src/vs/workbench/browser/parts/editor/editorTabsControl.js +27 -42
  279. package/vscode/src/vs/workbench/browser/parts/editor/editorTitleControl.js +152 -0
  280. package/vscode/src/vs/workbench/browser/parts/editor/editorsObserver.js +8 -8
  281. package/vscode/src/vs/workbench/browser/parts/editor/media/breadcrumbscontrol.css.js +4 -0
  282. package/vscode/src/vs/workbench/browser/parts/editor/media/editorgroupview.css.js +4 -0
  283. package/vscode/src/vs/workbench/browser/parts/editor/media/editortitlecontrol.css.js +4 -0
  284. package/vscode/src/vs/workbench/browser/parts/editor/media/multieditortabscontrol.css.js +4 -0
  285. package/vscode/src/vs/workbench/browser/parts/editor/media/singleeditortabscontrol.css.js +4 -0
  286. package/vscode/src/vs/workbench/browser/parts/editor/multiEditorTabsControl.js +1626 -0
  287. package/vscode/src/vs/workbench/browser/parts/editor/multiRowEditorTabsControl.js +150 -0
  288. package/vscode/src/vs/workbench/browser/parts/editor/noEditorTabsControl.js +52 -0
  289. package/vscode/src/vs/workbench/browser/parts/editor/singleEditorTabsControl.js +260 -0
  290. package/vscode/src/vs/workbench/browser/parts/editor/textEditor.js +1 -1
  291. package/vscode/src/vs/workbench/browser/parts/editor/textResourceEditor.js +2 -2
  292. package/vscode/src/vs/workbench/browser/parts/globalCompositeBar.js +39 -36
  293. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsCommands.js +68 -28
  294. package/vscode/src/vs/workbench/browser/parts/panel/media/panelpart.css.js +1 -1
  295. package/vscode/src/vs/workbench/browser/parts/panel/panelActions.js +15 -14
  296. package/vscode/src/vs/workbench/browser/parts/titlebar/menubarControl.js +18 -17
  297. package/vscode/src/vs/workbench/browser/parts/titlebar/windowTitle.js +1 -1
  298. package/vscode/src/vs/workbench/browser/parts/views/media/views.css.js +1 -1
  299. package/vscode/src/vs/workbench/browser/parts/views/treeView.js +7 -10
  300. package/vscode/src/vs/workbench/browser/parts/views/viewPane.js +2 -1
  301. package/vscode/src/vs/workbench/browser/parts/views/viewPaneContainer.d.ts +2 -1
  302. package/vscode/src/vs/workbench/browser/parts/views/viewPaneContainer.js +18 -17
  303. package/vscode/src/vs/workbench/browser/quickaccess.js +33 -1
  304. package/vscode/src/vs/workbench/browser/web.api.d.ts +6 -0
  305. package/vscode/src/vs/workbench/browser/window.js +92 -9
  306. package/vscode/src/vs/workbench/browser/workbench.contribution.js +114 -65
  307. package/vscode/src/vs/workbench/common/component.d.ts +5 -1
  308. package/vscode/src/vs/workbench/common/component.js +6 -0
  309. package/vscode/src/vs/workbench/common/configuration.js +11 -1
  310. package/vscode/src/vs/workbench/common/contextkeys.js +8 -4
  311. package/vscode/src/vs/workbench/common/editor/editorInput.d.ts +6 -0
  312. package/vscode/src/vs/workbench/common/editor/editorInput.js +3 -0
  313. package/vscode/src/vs/workbench/common/editor/filteredEditorGroupModel.js +107 -0
  314. package/vscode/src/vs/workbench/common/editor/resourceEditorInput.d.ts +6 -3
  315. package/vscode/src/vs/workbench/common/editor/resourceEditorInput.js +21 -3
  316. package/vscode/src/vs/workbench/common/editor/textResourceEditorInput.d.ts +2 -1
  317. package/vscode/src/vs/workbench/common/editor/textResourceEditorInput.js +9 -6
  318. package/vscode/src/vs/workbench/common/editor.d.ts +16 -4
  319. package/vscode/src/vs/workbench/common/editor.js +7 -1
  320. package/vscode/src/vs/workbench/common/memento.js +33 -12
  321. package/vscode/src/vs/workbench/common/notifications.js +30 -7
  322. package/vscode/src/vs/workbench/common/theme.js +61 -1
  323. package/vscode/src/vs/workbench/common/views.d.ts +1 -28
  324. package/vscode/src/vs/workbench/common/views.js +1 -2
  325. package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibilityConfiguration.js +232 -19
  326. package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibilityContributions.js +9 -9
  327. package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibleView.js +1 -0
  328. package/vscode/src/vs/workbench/contrib/accessibility/browser/editorAccessibilityHelp.js +19 -31
  329. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityHelp.js +8 -3
  330. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatActions.js +57 -38
  331. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQuickInputActions.js +4 -4
  332. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditorInput.js +9 -2
  333. package/vscode/src/vs/workbench/contrib/chat/browser/chatFollowups.js +7 -0
  334. package/vscode/src/vs/workbench/contrib/chat/browser/chatInputPart.js +31 -20
  335. package/vscode/src/vs/workbench/contrib/chat/browser/chatListRenderer.js +93 -49
  336. package/vscode/src/vs/workbench/contrib/chat/browser/chatMarkdownDecorationsRenderer.js +30 -6
  337. package/vscode/src/vs/workbench/contrib/chat/browser/chatSlashCommandContentWidget.js +24 -12
  338. package/vscode/src/vs/workbench/contrib/chat/browser/chatWidget.js +9 -5
  339. package/vscode/src/vs/workbench/contrib/chat/browser/contrib/chatDynamicVariables.js +12 -1
  340. package/vscode/src/vs/workbench/contrib/chat/browser/media/chat.css.js +1 -1
  341. package/vscode/src/vs/workbench/contrib/chat/common/chatContextKeys.js +2 -1
  342. package/vscode/src/vs/workbench/contrib/chat/common/chatModel.js +21 -43
  343. package/vscode/src/vs/workbench/contrib/chat/common/chatService.js +6 -6
  344. package/vscode/src/vs/workbench/contrib/codeActions/browser/codeActionsContribution.js +4 -4
  345. package/vscode/src/vs/workbench/contrib/codeEditor/browser/suggestEnabledInput/suggestEnabledInput.css.js +1 -1
  346. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleMultiCursorModifier.js +4 -4
  347. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleWordWrap.js +0 -3
  348. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadBody.js +1 -1
  349. package/vscode/src/vs/workbench/contrib/comments/browser/{comments.contribution.js → commentsAccessibility.js} +36 -128
  350. package/vscode/src/vs/workbench/contrib/comments/browser/reactionsAction.js +41 -18
  351. package/vscode/src/vs/workbench/contrib/debug/browser/baseDebugView.js +202 -0
  352. package/vscode/src/vs/workbench/contrib/debug/browser/breakpointEditorContribution.js +27 -4
  353. package/vscode/src/vs/workbench/contrib/debug/browser/breakpointWidget.js +165 -52
  354. package/vscode/src/vs/workbench/contrib/debug/browser/breakpointsView.js +48 -31
  355. package/vscode/src/vs/workbench/contrib/debug/browser/debugIcons.js +6 -1
  356. package/vscode/src/vs/workbench/contrib/debug/browser/media/breakpointWidget.css.js +1 -1
  357. package/vscode/src/vs/workbench/contrib/debug/common/debug.d.ts +40 -10
  358. package/vscode/src/vs/workbench/contrib/debug/common/debug.js +28 -1
  359. package/vscode/src/vs/workbench/contrib/debug/common/debugContext.js +14 -0
  360. package/vscode/src/vs/workbench/contrib/debug/common/debugModel.js +52 -23
  361. package/vscode/src/vs/workbench/contrib/debug/common/debugSource.js +1 -1
  362. package/vscode/src/vs/workbench/contrib/debug/common/debugVisualizers.js +164 -0
  363. package/vscode/src/vs/workbench/contrib/debug/common/disassemblyViewInput.js +10 -0
  364. package/vscode/src/vs/workbench/contrib/debug/common/replModel.js +285 -0
  365. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsActions.js +123 -78
  366. package/vscode/src/vs/workbench/contrib/extensions/common/extensionsInput.js +10 -0
  367. package/vscode/src/vs/workbench/contrib/files/browser/editors/fileEditorInput.js +3 -19
  368. package/vscode/src/vs/workbench/contrib/files/browser/explorerViewlet.js +1 -2
  369. package/vscode/src/vs/workbench/contrib/files/browser/fileActions.js +8 -9
  370. package/vscode/src/vs/workbench/contrib/files/browser/files.configuration.contribution.js +70 -2
  371. package/vscode/src/vs/workbench/contrib/files/browser/files.d.ts +5 -2
  372. package/vscode/src/vs/workbench/contrib/files/browser/views/emptyView.js +2 -2
  373. package/vscode/src/vs/workbench/contrib/files/browser/views/explorerView.js +34 -17
  374. package/vscode/src/vs/workbench/contrib/files/browser/views/explorerViewer.js +5 -4
  375. package/vscode/src/vs/workbench/contrib/files/browser/views/openEditorsView.js +48 -14
  376. package/vscode/src/vs/workbench/contrib/format/browser/formatActionsMultiple.js +16 -8
  377. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChat.css.js +1 -1
  378. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatController.js +317 -321
  379. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatLivePreviewWidget.js +17 -24
  380. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSavingService.js +3 -0
  381. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSession.js +306 -130
  382. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionService.js +3 -0
  383. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatStrategies.js +385 -613
  384. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatWidget.js +69 -64
  385. package/vscode/src/vs/workbench/contrib/inlineChat/browser/utils.js +71 -3
  386. package/vscode/src/vs/workbench/contrib/inlineChat/common/inlineChat.js +39 -44
  387. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/mergeEditorInput.js +5 -3
  388. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/mergeEditorInputModel.js +1 -1
  389. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/findModel.js +1 -1
  390. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/coreActions.js +4 -4
  391. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/foldingController.js +3 -3
  392. package/vscode/src/vs/workbench/contrib/notebook/browser/media/notebookCellChat.css.js +1 -1
  393. package/vscode/src/vs/workbench/contrib/notebook/browser/media/notebookEditorStickyScroll.css.js +1 -1
  394. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookEditor.js +38 -7
  395. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookEditorWidget.js +36 -8
  396. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookOptions.js +32 -12
  397. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellPart.js +24 -14
  398. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellEditorOptions.js +4 -4
  399. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellStatusPart.js +1 -1
  400. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellToolbarStickyScroll.js +1 -2
  401. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/chat/cellChatActions.js +264 -12
  402. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/chat/cellChatController.js +60 -27
  403. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/codeCell.js +12 -5
  404. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/codeCellExecutionIcon.js +2 -2
  405. package/vscode/src/vs/workbench/contrib/notebook/browser/view/notebookCellList.js +2 -2
  406. package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/backLayerWebView.js +12 -9
  407. package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/webviewPreloads.js +6 -3
  408. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/notebookViewModelImpl.js +1 -0
  409. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookEditorStickyScroll.js +188 -155
  410. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookKernelView.js +4 -4
  411. package/vscode/src/vs/workbench/contrib/notebook/common/model/notebookCellTextModel.js +10 -3
  412. package/vscode/src/vs/workbench/contrib/notebook/common/notebookCommon.js +16 -33
  413. package/vscode/src/vs/workbench/contrib/notebook/common/notebookEditorInput.js +9 -7
  414. package/vscode/src/vs/workbench/contrib/notebook/common/notebookEditorModel.js +6 -2
  415. package/vscode/src/vs/workbench/contrib/notebook/common/notebookKernelService.js +2 -1
  416. package/vscode/src/vs/workbench/contrib/remote/browser/remoteExplorer.js +29 -14
  417. package/vscode/src/vs/workbench/contrib/remote/browser/tunnelView.js +15 -3
  418. package/vscode/src/vs/workbench/contrib/remote/browser/urlFinder.js +2 -2
  419. package/vscode/src/vs/workbench/contrib/scm/browser/dirtydiffDecorator.js +22 -6
  420. package/vscode/src/vs/workbench/contrib/search/browser/searchActionsFind.js +1 -1
  421. package/vscode/src/vs/workbench/contrib/search/browser/searchModel.js +16 -17
  422. package/vscode/src/vs/workbench/contrib/snippets/browser/snippetCompletionProvider.js +78 -50
  423. package/vscode/src/vs/workbench/contrib/speech/common/speechService.js +15 -1
  424. package/vscode/src/vs/workbench/contrib/terminal/browser/terminal.d.ts +25 -45
  425. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalEditorInput.js +12 -4
  426. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalIcon.js +2 -1
  427. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/decorationAddon.js +33 -36
  428. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/decorationStyles.js +1 -1
  429. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/markNavigationAddon.js +3 -0
  430. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/xtermTerminal.d.ts +5 -8
  431. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/xtermTerminal.js +15 -27
  432. package/vscode/src/vs/workbench/contrib/terminal/common/terminalColorRegistry.js +3 -3
  433. package/vscode/src/vs/workbench/contrib/testing/common/testCoverage.js +38 -22
  434. package/vscode/src/vs/workbench/contrib/testing/common/testCoverageService.js +5 -2
  435. package/vscode/src/vs/workbench/contrib/testing/common/testProfileService.js +60 -40
  436. package/vscode/src/vs/workbench/contrib/testing/common/testResult.js +2 -2
  437. package/vscode/src/vs/workbench/contrib/testing/common/testResultStorage.js +15 -11
  438. package/vscode/src/vs/workbench/contrib/testing/common/testService.js +26 -1
  439. package/vscode/src/vs/workbench/contrib/testing/common/testTypes.js +24 -23
  440. package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStartedService.js +1 -1
  441. package/vscode/src/vs/workbench/services/authentication/browser/authenticationService.js +124 -26
  442. package/vscode/src/vs/workbench/services/authentication/common/authentication.d.ts +68 -0
  443. package/vscode/src/vs/workbench/services/auxiliaryWindow/browser/auxiliaryWindowService.js +76 -36
  444. package/vscode/src/vs/workbench/services/configurationResolver/common/configurationResolver.js +1 -0
  445. package/vscode/src/vs/workbench/services/configurationResolver/common/variableResolver.js +1 -0
  446. package/vscode/src/vs/workbench/services/editor/browser/editorService.js +15 -3
  447. package/vscode/src/vs/workbench/services/editor/common/editorGroupFinder.js +10 -1
  448. package/vscode/src/vs/workbench/services/editor/common/editorGroupsService.d.ts +51 -43
  449. package/vscode/src/vs/workbench/services/editor/common/editorService.d.ts +13 -8
  450. package/vscode/src/vs/workbench/services/editor/common/editorService.js +2 -1
  451. package/vscode/src/vs/workbench/services/extensionManagement/browser/extensionBisect.js +10 -10
  452. package/vscode/src/vs/workbench/services/extensions/browser/extensionUrlHandler.js +8 -8
  453. package/vscode/src/vs/workbench/services/extensions/common/extensionsApiProposals.js +7 -7
  454. package/vscode/src/vs/workbench/services/extensions/common/rpcProtocol.js +1 -0
  455. package/vscode/src/vs/workbench/services/filesConfiguration/common/filesConfigurationService.d.ts +29 -9
  456. package/vscode/src/vs/workbench/services/filesConfiguration/common/filesConfigurationService.js +160 -63
  457. package/vscode/src/vs/workbench/services/host/browser/host.d.ts +8 -0
  458. package/vscode/src/vs/workbench/services/keybinding/common/keybindingEditing.js +60 -72
  459. package/vscode/src/vs/workbench/services/layout/browser/layoutService.d.ts +0 -4
  460. package/vscode/src/vs/workbench/services/notebook/common/notebookDocumentService.js +56 -0
  461. package/vscode/src/vs/workbench/services/output/common/output.js +2 -2
  462. package/vscode/src/vs/workbench/services/preferences/browser/keybindingsEditorInput.js +10 -0
  463. package/vscode/src/vs/workbench/services/preferences/common/preferencesEditorInput.js +10 -0
  464. package/vscode/src/vs/workbench/services/remote/common/remoteExplorerService.js +2 -1
  465. package/vscode/src/vs/workbench/services/textfile/common/textFileEditorModel.js +5 -4
  466. package/vscode/src/vs/workbench/services/untitled/common/untitledTextEditorInput.js +21 -8
  467. package/vscode/src/vs/workbench/services/untitled/common/untitledTextEditorService.d.ts +4 -0
  468. package/vscode/src/vs/workbench/services/untitled/common/untitledTextEditorService.js +3 -0
  469. package/vscode/src/vs/workbench/services/userDataProfile/common/userDataProfile.js +4 -4
  470. package/vscode/src/vs/workbench/{browser/parts/views → services/views/browser}/viewsService.js +20 -15
  471. package/vscode/src/vs/workbench/services/views/common/viewsService.d.ts +34 -0
  472. package/vscode/src/vs/workbench/services/{hover/browser/hover.js → views/common/viewsService.js} +2 -2
  473. package/vscode/src/vs/workbench/services/workingCopy/common/storedFileWorkingCopy.d.ts +6 -1
  474. package/vscode/src/vs/workbench/services/workingCopy/common/storedFileWorkingCopy.js +5 -2
  475. package/vscode/src/vs/workbench/services/workspaces/common/workspaceTrust.js +1 -0
  476. package/vscode-dts/vscode.proposed.chatAgents2.d.ts +112 -47
  477. package/vscode-dts/vscode.proposed.chatAgents2Additions.d.ts +68 -9
  478. package/vscode-dts/{vscode.proposed.scmInputBoxActionButton.d.ts → vscode.proposed.codeActionRanges.d.ts} +8 -10
  479. package/vscode-dts/{vscode.proposed.readonlyMessage.d.ts → vscode.proposed.commentReactor.d.ts} +3 -4
  480. package/vscode-dts/vscode.proposed.contribMultiDiffEditorMenus.d.ts +6 -0
  481. package/vscode-dts/vscode.proposed.contribSourceControlHistoryItemGroupMenu.d.ts +8 -0
  482. package/vscode-dts/vscode.proposed.contribSourceControlHistoryItemMenu.d.ts +8 -0
  483. package/vscode-dts/vscode.proposed.debugVisualization.d.ts +100 -0
  484. package/vscode-dts/vscode.proposed.defaultChatAgent.d.ts +1 -1
  485. package/vscode-dts/vscode.proposed.interactive.d.ts +13 -16
  486. package/vscode-dts/vscode.proposed.notebookVariableProvider.d.ts +4 -1
  487. package/vscode-dts/vscode.proposed.resolvers.d.ts +4 -0
  488. package/vscode-dts/vscode.proposed.scmHistoryProvider.d.ts +4 -10
  489. package/vscode-dts/vscode.proposed.scmMultiDiffEditor.d.ts +34 -0
  490. package/vscode-dts/vscode.proposed.speech.d.ts +17 -3
  491. package/vscode-dts/vscode.proposed.testCoverage.d.ts +7 -1
  492. package/vscode-dts/vscode.proposed.tunnelFactory.d.ts +4 -0
  493. package/vscode/src/vs/editor/browser/widget/diffEditor/colors.js +0 -17
  494. package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditorDecorations.js +0 -231
  495. package/vscode/src/vs/editor/browser/widget/diffEditor/outlineModel.js +0 -299
  496. package/vscode/src/vs/editor/browser/widget/diffEditor/workerBasedDocumentDiffProvider.js +0 -101
  497. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/suggestAddon.js +0 -390
  498. package/vscode/src/vs/workbench/services/editor/common/editorGroupColumn.d.ts +0 -10
  499. package/vscode/src/vs/workbench/services/suggest/browser/media/suggest.css.js +0 -4
  500. package/vscode/src/vs/workbench/services/suggest/browser/simpleCompletionItem.d.ts +0 -28
  501. package/vscode/src/vs/workbench/services/suggest/browser/simpleCompletionItem.js +0 -10
  502. package/vscode/src/vs/workbench/services/suggest/browser/simpleCompletionModel.d.ts +0 -30
  503. package/vscode/src/vs/workbench/services/suggest/browser/simpleCompletionModel.js +0 -98
  504. package/vscode/src/vs/workbench/services/suggest/browser/simpleSuggestWidget.d.ts +0 -10
  505. package/vscode/src/vs/workbench/services/suggest/browser/simpleSuggestWidget.js +0 -428
  506. package/vscode/src/vs/workbench/services/suggest/browser/simpleSuggestWidgetRenderer.js +0 -83
  507. package/vscode-dts/vscode.proposed.chatVariables.d.ts +0 -39
  508. package/vscode-dts/vscode.proposed.interactiveUserActions.d.ts +0 -77
  509. package/vscode-dts/vscode.proposed.saveEditor.d.ts +0 -35
  510. package/vscode-dts/vscode.proposed.scmInputBoxValueProvider.d.ts +0 -25
  511. package/vscode-dts/vscode.proposed.testingActiveProfile.d.ts +0 -21
@@ -2,7 +2,7 @@ import { __decorate, __param } from '../../../../../../../external/tslib/tslib.e
2
2
  import { localizeWithPath } from '../../../../nls.js';
3
3
  import { mark } from '../../../../base/common/performance.js';
4
4
  import { Emitter, Event } from '../../../../base/common/event.js';
5
- import { getWindowId, registerWindow, getActiveWindow, createMetaElement, copyAttributes, cloneGlobalStylesheets, sharedMutationObserver, trackAttributes, addDisposableListener, EventType, getClientArea, position, size, EventHelper, ModifierKeyEmitter, isGlobalStylesheet } from '../../../../base/browser/dom.js';
5
+ import { getWindowId, registerWindow, getActiveWindow, createMetaElement, copyAttributes, createLinkElement, cloneGlobalStylesheets, sharedMutationObserver, trackAttributes, addDisposableListener, EventType, EventHelper, ModifierKeyEmitter, getClientArea, position, size, isGlobalStylesheet } from '../../../../base/browser/dom.js';
6
6
  import { mainWindow, ensureCodeWindow } from '../../../../base/browser/window.js';
7
7
  import { Disposable, toDisposable, DisposableStore } from '../../../../base/common/lifecycle.js';
8
8
  import { createDecorator } from '../../../../platform/instantiation/common/instantiation.js';
@@ -15,36 +15,36 @@ import Severity from '../../../../base/common/severity.js';
15
15
  import { BaseWindow } from '../../../browser/window.js';
16
16
  import { IConfigurationService } from '../../../../platform/configuration/common/configuration.js';
17
17
  import { ITelemetryService } from '../../../../platform/telemetry/common/telemetry.js';
18
+ import { Barrier } from '../../../../base/common/async.js';
19
+ import { IHostService } from '../../host/browser/host.js';
18
20
  import { IDialogService } from '../../../../platform/dialogs/common/dialogs.js';
19
21
  var BrowserAuxiliaryWindowService_1;
20
22
  const IAuxiliaryWindowService = ( createDecorator('auxiliaryWindowService'));
21
23
  let AuxiliaryWindow = class AuxiliaryWindow extends BaseWindow {
22
- constructor(window, container, configurationService) {
23
- super(window);
24
+ constructor(window, container, stylesHaveLoaded, configurationService, hostService) {
25
+ super(window, undefined, hostService);
24
26
  this.window = window;
25
27
  this.container = container;
26
28
  this.configurationService = configurationService;
27
29
  this._onDidLayout = this._register(( new Emitter()));
28
30
  this.onDidLayout = this._onDidLayout.event;
29
- this._onWillClose = this._register(( new Emitter()));
30
- this.onWillClose = this._onWillClose.event;
31
+ this._onBeforeUnload = this._register(( new Emitter()));
32
+ this.onBeforeUnload = this._onBeforeUnload.event;
33
+ this._onUnload = this._register(( new Emitter()));
34
+ this.onUnload = this._onUnload.event;
31
35
  this._onWillDispose = this._register(( new Emitter()));
32
36
  this.onWillDispose = this._onWillDispose.event;
37
+ this.whenStylesHaveLoaded = stylesHaveLoaded.wait().then(() => { });
33
38
  this.registerListeners();
34
39
  }
35
40
  registerListeners() {
36
- this._register(addDisposableListener(this.window, EventType.BEFORE_UNLOAD, (e) => this.onBeforeUnload(e)));
37
- this._register(addDisposableListener(this.window, EventType.UNLOAD, () => this._onWillClose.fire()));
41
+ this._register(addDisposableListener(this.window, EventType.BEFORE_UNLOAD, (e) => this.handleBeforeUnload(e)));
42
+ this._register(addDisposableListener(this.window, EventType.UNLOAD, () => this.handleUnload()));
38
43
  this._register(addDisposableListener(this.window, 'unhandledrejection', e => {
39
44
  onUnexpectedError(e.reason);
40
45
  e.preventDefault();
41
46
  }));
42
- this._register(addDisposableListener(this.window, EventType.RESIZE, () => {
43
- const dimension = getClientArea(this.window.document.body, this.container);
44
- position(this.container, 0, 0, 0, 0, 'relative');
45
- size(this.container, dimension.width, dimension.height);
46
- this._onDidLayout.fire(dimension);
47
- }));
47
+ this._register(addDisposableListener(this.window, EventType.RESIZE, () => this.layout()));
48
48
  this._register(addDisposableListener(this.container, EventType.SCROLL, () => this.container.scrollTop = 0));
49
49
  if (isWeb) {
50
50
  this._register(addDisposableListener(this.container, EventType.DROP, e => EventHelper.stop(e, true)));
@@ -56,7 +56,8 @@ let AuxiliaryWindow = class AuxiliaryWindow extends BaseWindow {
56
56
  this._register(addDisposableListener(this.window.document.body, EventType.DROP, (e) => EventHelper.stop(e)));
57
57
  }
58
58
  }
59
- onBeforeUnload(e) {
59
+ handleBeforeUnload(e) {
60
+ this._onBeforeUnload.fire();
60
61
  const confirmBeforeCloseSetting = this.configurationService.getValue('window.confirmBeforeClose');
61
62
  const confirmBeforeClose = confirmBeforeCloseSetting === 'always' || (confirmBeforeCloseSetting === 'keyboardOnly' && ModifierKeyEmitter.getInstance().isModifierPressed);
62
63
  if (confirmBeforeClose) {
@@ -71,8 +72,14 @@ let AuxiliaryWindow = class AuxiliaryWindow extends BaseWindow {
71
72
  "Changes that you made may not be saved. Please check press 'Cancel' and try again."
72
73
  ));
73
74
  }
75
+ handleUnload() {
76
+ this._onUnload.fire();
77
+ }
74
78
  layout() {
75
- this._onDidLayout.fire(getClientArea(this.window.document.body, this.container));
79
+ const dimension = getClientArea(this.window.document.body, this.container);
80
+ position(this.container, 0, 0, 0, 0, 'relative');
81
+ size(this.container, dimension.width, dimension.height);
82
+ this._onDidLayout.fire(dimension);
76
83
  }
77
84
  dispose() {
78
85
  if (this._store.isDisposed) {
@@ -83,18 +90,20 @@ let AuxiliaryWindow = class AuxiliaryWindow extends BaseWindow {
83
90
  }
84
91
  };
85
92
  AuxiliaryWindow = ( __decorate([
86
- ( __param(2, IConfigurationService))
93
+ ( __param(3, IConfigurationService)),
94
+ ( __param(4, IHostService))
87
95
  ], AuxiliaryWindow));
88
96
  let BrowserAuxiliaryWindowService = class BrowserAuxiliaryWindowService extends Disposable {
89
97
  static { BrowserAuxiliaryWindowService_1 = this; }
90
98
  static { this.DEFAULT_SIZE = { width: 800, height: 600 }; }
91
99
  static { this.WINDOW_IDS = getWindowId(mainWindow) + 1; }
92
- constructor(layoutService, dialogService, configurationService, telemetryService) {
100
+ constructor(layoutService, dialogService, configurationService, telemetryService, hostService) {
93
101
  super();
94
102
  this.layoutService = layoutService;
95
103
  this.dialogService = dialogService;
96
104
  this.configurationService = configurationService;
97
105
  this.telemetryService = telemetryService;
106
+ this.hostService = hostService;
98
107
  this._onDidOpenAuxiliaryWindow = this._register(( new Emitter()));
99
108
  this.onDidOpenAuxiliaryWindow = this._onDidOpenAuxiliaryWindow.event;
100
109
  this.windows = ( new Map());
@@ -108,8 +117,8 @@ let BrowserAuxiliaryWindowService = class BrowserAuxiliaryWindowService extends
108
117
  const resolvedWindowId = await this.resolveWindowId(targetWindow);
109
118
  ensureCodeWindow(targetWindow, resolvedWindowId);
110
119
  const containerDisposables = ( new DisposableStore());
111
- const container = this.createContainer(targetWindow, containerDisposables);
112
- const auxiliaryWindow = this.createAuxiliaryWindow(targetWindow, container);
120
+ const { container, stylesLoaded } = this.createContainer(targetWindow, containerDisposables, options);
121
+ const auxiliaryWindow = this.createAuxiliaryWindow(targetWindow, container, stylesLoaded);
113
122
  const registryDisposables = ( new DisposableStore());
114
123
  this.windows.set(targetWindow.vscodeWindowId, auxiliaryWindow);
115
124
  registryDisposables.add(toDisposable(() => this.windows.delete(targetWindow.vscodeWindowId)));
@@ -126,8 +135,14 @@ let BrowserAuxiliaryWindowService = class BrowserAuxiliaryWindowService extends
126
135
  this.telemetryService.publicLog2('auxiliaryWindowOpen', { bounds: !!options?.bounds });
127
136
  return auxiliaryWindow;
128
137
  }
129
- createAuxiliaryWindow(targetWindow, container) {
130
- return ( new AuxiliaryWindow(targetWindow, container, this.configurationService));
138
+ createAuxiliaryWindow(targetWindow, container, stylesLoaded) {
139
+ return ( new AuxiliaryWindow(
140
+ targetWindow,
141
+ container,
142
+ stylesLoaded,
143
+ this.configurationService,
144
+ this.hostService
145
+ ));
131
146
  }
132
147
  async openWindow(options) {
133
148
  const activeWindow = getActiveWindow();
@@ -140,8 +155,8 @@ let BrowserAuxiliaryWindowService = class BrowserAuxiliaryWindowService extends
140
155
  const width = Math.max(options?.bounds?.width ?? BrowserAuxiliaryWindowService_1.DEFAULT_SIZE.width, WindowMinimumSize.WIDTH);
141
156
  const height = Math.max(options?.bounds?.height ?? BrowserAuxiliaryWindowService_1.DEFAULT_SIZE.height, WindowMinimumSize.HEIGHT);
142
157
  let newWindowBounds = {
143
- x: options?.bounds?.x ?? (activeWindowBounds.x + activeWindowBounds.width / 2 - width / 2),
144
- y: options?.bounds?.y ?? (activeWindowBounds.y + activeWindowBounds.height / 2 - height / 2),
158
+ x: options?.bounds?.x ?? Math.max(activeWindowBounds.x + activeWindowBounds.width / 2 - width / 2, 0),
159
+ y: options?.bounds?.y ?? Math.max(activeWindowBounds.y + activeWindowBounds.height / 2 - height / 2, 0),
145
160
  width,
146
161
  height
147
162
  };
@@ -184,11 +199,12 @@ let BrowserAuxiliaryWindowService = class BrowserAuxiliaryWindowService extends
184
199
  async resolveWindowId(auxiliaryWindow) {
185
200
  return BrowserAuxiliaryWindowService_1.WINDOW_IDS++;
186
201
  }
187
- createContainer(auxiliaryWindow, disposables) {
202
+ createContainer(auxiliaryWindow, disposables, options) {
188
203
  this.patchMethods(auxiliaryWindow);
189
204
  this.applyMeta(auxiliaryWindow);
190
- this.applyCSS(auxiliaryWindow, disposables);
191
- return this.applyHTML(auxiliaryWindow, disposables);
205
+ const { stylesLoaded } = this.applyCSS(auxiliaryWindow, disposables);
206
+ const container = this.applyHTML(auxiliaryWindow, disposables);
207
+ return { stylesLoaded, container };
192
208
  }
193
209
  patchMethods(auxiliaryWindow) {
194
210
  auxiliaryWindow.document.createElement = function () {
@@ -196,31 +212,53 @@ let BrowserAuxiliaryWindowService = class BrowserAuxiliaryWindowService extends
196
212
  };
197
213
  }
198
214
  applyMeta(auxiliaryWindow) {
199
- const metaCharset = createMetaElement(auxiliaryWindow.document.head);
200
- metaCharset.setAttribute('charset', 'utf-8');
201
- const originalCSPMetaTag = mainWindow.document.querySelector('meta[http-equiv="Content-Security-Policy"]');
202
- if (originalCSPMetaTag) {
203
- const csp = createMetaElement(auxiliaryWindow.document.head);
204
- copyAttributes(originalCSPMetaTag, csp);
205
- const content = csp.getAttribute('content');
206
- if (content) {
207
- csp.setAttribute('content', content.replace(/(script-src[^\;]*)/, `script-src 'none'`));
215
+ for (const metaTag of ['meta[charset="utf-8"]', 'meta[http-equiv="Content-Security-Policy"]', 'meta[name="viewport"]', 'meta[name="theme-color"]']) {
216
+ const metaElement = mainWindow.document.querySelector(metaTag);
217
+ if (metaElement) {
218
+ const clonedMetaElement = createMetaElement(auxiliaryWindow.document.head);
219
+ copyAttributes(metaElement, clonedMetaElement);
220
+ if (metaTag === 'meta[http-equiv="Content-Security-Policy"]') {
221
+ const content = clonedMetaElement.getAttribute('content');
222
+ if (content) {
223
+ clonedMetaElement.setAttribute('content', content.replace(/(script-src[^\;]*)/, `script-src 'none'`));
224
+ }
225
+ }
208
226
  }
209
227
  }
228
+ const originalIconLinkTag = mainWindow.document.querySelector('link[rel="icon"]');
229
+ if (originalIconLinkTag) {
230
+ const icon = createLinkElement(auxiliaryWindow.document.head);
231
+ copyAttributes(originalIconLinkTag, icon);
232
+ }
210
233
  }
211
234
  applyCSS(auxiliaryWindow, disposables) {
212
235
  mark('code/auxiliaryWindow/willApplyCSS');
213
236
  const mapOriginalToClone = ( new Map());
237
+ const stylesLoaded = ( new Barrier());
238
+ stylesLoaded.wait().then(() => mark('code/auxiliaryWindow/didLoadCSSStyles'));
239
+ let pendingLinkSettles = 0;
240
+ function onLinkSettled(_event) {
241
+ if (!--pendingLinkSettles) {
242
+ stylesLoaded.open();
243
+ }
244
+ }
214
245
  function cloneNode(originalNode) {
215
246
  if (isGlobalStylesheet(originalNode)) {
216
247
  return;
217
248
  }
218
249
  const clonedNode = auxiliaryWindow.document.head.appendChild(originalNode.cloneNode(true));
250
+ if (originalNode.tagName === 'LINK') {
251
+ pendingLinkSettles++;
252
+ disposables.add(addDisposableListener(clonedNode, 'load', onLinkSettled));
253
+ disposables.add(addDisposableListener(clonedNode, 'error', onLinkSettled));
254
+ }
219
255
  mapOriginalToClone.set(originalNode, clonedNode);
220
256
  }
257
+ pendingLinkSettles++;
221
258
  for (const originalNode of mainWindow.document.head.querySelectorAll('link[rel="stylesheet"], style')) {
222
259
  cloneNode(originalNode);
223
260
  }
261
+ onLinkSettled();
224
262
  disposables.add(cloneGlobalStylesheets(auxiliaryWindow));
225
263
  disposables.add(sharedMutationObserver.observe(mainWindow.document.head, disposables, { childList: true, subtree: true })(mutations => {
226
264
  for (const mutation of mutations) {
@@ -252,6 +290,7 @@ let BrowserAuxiliaryWindowService = class BrowserAuxiliaryWindowService extends
252
290
  }
253
291
  }));
254
292
  mark('code/auxiliaryWindow/didApplyCSS');
293
+ return { stylesLoaded };
255
294
  }
256
295
  applyHTML(auxiliaryWindow, disposables) {
257
296
  mark('code/auxiliaryWindow/willApplyHTML');
@@ -268,6 +307,7 @@ BrowserAuxiliaryWindowService = BrowserAuxiliaryWindowService_1 = ( __decorate([
268
307
  ( __param(0, IWorkbenchLayoutService)),
269
308
  ( __param(1, IDialogService)),
270
309
  ( __param(2, IConfigurationService)),
271
- ( __param(3, ITelemetryService))
310
+ ( __param(3, ITelemetryService)),
311
+ ( __param(4, IHostService))
272
312
  ], BrowserAuxiliaryWindowService));
273
313
  export { AuxiliaryWindow, BrowserAuxiliaryWindowService, IAuxiliaryWindowService };
@@ -27,6 +27,7 @@ var VariableKind;
27
27
  VariableKind["ExecPath"] = "execPath";
28
28
  VariableKind["ExecInstallFolder"] = "execInstallFolder";
29
29
  VariableKind["PathSeparator"] = "pathSeparator";
30
+ VariableKind["PathSeparatorAlias"] = "/";
30
31
  })(VariableKind || (VariableKind = {})));
31
32
  class VariableError extends Error {
32
33
  constructor(variable, message) {
@@ -274,6 +274,7 @@ class AbstractVariableResolverService {
274
274
  return match;
275
275
  }
276
276
  case 'pathSeparator':
277
+ case '/':
277
278
  return sep;
278
279
  default:
279
280
  try {
@@ -77,7 +77,7 @@ let EditorService = EditorService_1 = class EditorService extends Disposable {
77
77
  }
78
78
  registerListeners() {
79
79
  if (this.editorGroupsContainer === this.editorGroupService.mainPart || this.editorGroupsContainer === this.editorGroupService) {
80
- this.editorGroupService.mainPart.whenReady.then(() => this.onEditorGroupsReady());
80
+ this.editorGroupService.whenReady.then(() => this.onEditorGroupsReady());
81
81
  }
82
82
  else {
83
83
  this.onEditorGroupsReady();
@@ -385,7 +385,13 @@ let EditorService = EditorService_1 = class EditorService extends Disposable {
385
385
  }
386
386
  if (!group) {
387
387
  let activation = undefined;
388
- ([group, activation] = this.instantiationService.invokeFunction(findGroup, { editor: typedEditor, options }, preferredGroup));
388
+ const findGroupResult = this.instantiationService.invokeFunction(findGroup, { editor: typedEditor, options }, preferredGroup);
389
+ if (findGroupResult instanceof Promise) {
390
+ ([group, activation] = await findGroupResult);
391
+ }
392
+ else {
393
+ ([group, activation] = findGroupResult);
394
+ }
389
395
  if (activation) {
390
396
  options = { ...options, activation };
391
397
  }
@@ -417,7 +423,13 @@ let EditorService = EditorService_1 = class EditorService extends Disposable {
417
423
  typedEditor = isEditorInputWithOptions(editor) ? editor : { editor: await this.textEditorService.resolveTextEditor(editor), options: editor.options };
418
424
  }
419
425
  if (!group) {
420
- [group] = this.instantiationService.invokeFunction(findGroup, typedEditor, preferredGroup);
426
+ const findGroupResult = this.instantiationService.invokeFunction(findGroup, typedEditor, preferredGroup);
427
+ if (findGroupResult instanceof Promise) {
428
+ ([group] = await findGroupResult);
429
+ }
430
+ else {
431
+ ([group] = findGroupResult);
432
+ }
421
433
  }
422
434
  let targetGroupEditors = mapGroupToTypedEditors.get(group);
423
435
  if (!targetGroupEditors) {
@@ -2,11 +2,17 @@ import { IConfigurationService } from '../../../../platform/configuration/common
2
2
  import { EditorActivation } from '../../../../platform/editor/common/editor.js';
3
3
  import { isEditorInput, isEditorInputWithOptions } from '../../../common/editor.js';
4
4
  import { IEditorGroupsService, preferredSideBySideGroupDirection } from './editorGroupsService.js';
5
- import { SIDE_GROUP } from './editorService.js';
5
+ import { SIDE_GROUP, AUX_WINDOW_GROUP } from './editorService.js';
6
6
  function findGroup(accessor, editor, preferredGroup) {
7
7
  const editorGroupService = accessor.get(IEditorGroupsService);
8
8
  const configurationService = accessor.get(IConfigurationService);
9
9
  const group = doFindGroup(editor, preferredGroup, editorGroupService, configurationService);
10
+ if (group instanceof Promise) {
11
+ return group.then(group => handleGroupActivation(group, editor, preferredGroup, editorGroupService));
12
+ }
13
+ return handleGroupActivation(group, editor, preferredGroup, editorGroupService);
14
+ }
15
+ function handleGroupActivation(group, editor, preferredGroup, editorGroupService) {
10
16
  let activation = undefined;
11
17
  if (editorGroupService.activeGroup !== group &&
12
18
  editor.options && !editor.options.inactive &&
@@ -36,6 +42,9 @@ function doFindGroup(input, preferredGroup, editorGroupService, configurationSer
36
42
  }
37
43
  group = candidateGroup;
38
44
  }
45
+ else if (preferredGroup === AUX_WINDOW_GROUP) {
46
+ group = editorGroupService.createAuxiliaryEditorPart().then(group => group.activeGroup);
47
+ }
39
48
  else if (!options || typeof options.index !== 'number') {
40
49
  const groupsByLastActive = editorGroupService.getGroups(1 );
41
50
  if (options?.revealIfVisible) {
@@ -1,6 +1,6 @@
1
1
  import { ServiceIdentifier, IInstantiationService } from '../../../../platform/instantiation/common/instantiation.js';
2
2
  import { Event } from '../../../../base/common/event.js';
3
- import { CloseDirection, IEditorPane, GroupIdentifier, IActiveEditorChangeEvent, IEditorCloseEvent, IEditorWillMoveEvent, IEditorWillOpenEvent, IVisibleEditorPane, EditorsOrder, IFindEditorOptions, EditorInputWithOptions, IUntypedEditorInput, IMatchEditorOptions, IEditorPartOptions, IEditorPartOptionsChangeEvent, IToolbarActions } from '../../../common/editor.js';
3
+ import { CloseDirection, IEditorPane, GroupIdentifier, IEditorPartOptions, IEditorPartOptionsChangeEvent, IActiveEditorChangeEvent, IEditorCloseEvent, IEditorWillMoveEvent, IEditorWillOpenEvent, IVisibleEditorPane, EditorsOrder, IFindEditorOptions, EditorInputWithOptions, IUntypedEditorInput, IMatchEditorOptions, IToolbarActions } from '../../../common/editor.js';
4
4
  import { EditorInput } from '../../../common/editor/editorInput.js';
5
5
  import { IEditorOptions } from '../../../../platform/editor/common/editor.js';
6
6
  import { URI } from '../../../../base/common/uri.js';
@@ -170,6 +170,38 @@ interface IEditorGroupsContainer {
170
170
  * An event for when the maximized state of a group changes.
171
171
  */
172
172
  readonly onDidChangeGroupMaximized: Event<boolean>;
173
+ /**
174
+ * A property that indicates when groups have been created
175
+ * and are ready to be used in the editor part.
176
+ */
177
+ readonly isReady: boolean;
178
+ /**
179
+ * A promise that resolves when groups have been created
180
+ * and are ready to be used in the editor part.
181
+ *
182
+ * Await this promise to safely work on the editor groups model
183
+ * (for example, install editor group listeners).
184
+ *
185
+ * Use the `whenRestored` property to await visible editors
186
+ * having fully resolved.
187
+ */
188
+ readonly whenReady: Promise<void>;
189
+ /**
190
+ * A promise that resolves when groups have been restored in
191
+ * the editor part.
192
+ *
193
+ * For groups with active editor, the promise will resolve
194
+ * when the visible editor has finished to resolve.
195
+ *
196
+ * Use the `whenReady` property to not await editors to
197
+ * resolve.
198
+ */
199
+ readonly whenRestored: Promise<void>;
200
+ /**
201
+ * Find out if the editor part has UI state to restore
202
+ * from a previous session.
203
+ */
204
+ readonly hasRestorableState: boolean;
173
205
  /**
174
206
  * An active group is the default location for new editors to open.
175
207
  */
@@ -306,14 +338,6 @@ interface IEditorGroupsContainer {
306
338
  * @param direction the direction of where to split to
307
339
  */
308
340
  copyGroup(group: IEditorGroup | GroupIdentifier, location: IEditorGroup | GroupIdentifier, direction: GroupDirection): IEditorGroup;
309
- /**
310
- * Access the options of the editor part.
311
- */
312
- readonly partOptions: IEditorPartOptions;
313
- /**
314
- * An event that notifies when editor part options change.
315
- */
316
- readonly onDidChangeEditorPartOptions: Event<IEditorPartOptionsChangeEvent>;
317
341
  /**
318
342
  * Allows to register a drag and drop target for editors
319
343
  * on the provided `container`.
@@ -334,41 +358,17 @@ interface IEditorPart extends IEditorGroupsContainer {
334
358
  */
335
359
  readonly onDidScroll: Event<void>;
336
360
  /**
337
- * The size of the editor part.
361
+ * The identifier of the window the editor part is contained in.
338
362
  */
339
- readonly contentDimension: IDimension;
340
- /**
341
- * A property that indicates when groups have been created
342
- * and are ready to be used in the editor part.
343
- */
344
- readonly isReady: boolean;
345
- /**
346
- * A promise that resolves when groups have been created
347
- * and are ready to be used in the editor part.
348
- *
349
- * Await this promise to safely work on the editor groups model
350
- * (for example, install editor group listeners).
351
- *
352
- * Use the `whenRestored` property to await visible editors
353
- * having fully resolved.
354
- */
355
- readonly whenReady: Promise<void>;
363
+ readonly windowId: number;
356
364
  /**
357
- * A promise that resolves when groups have been restored in
358
- * the editor part.
359
- *
360
- * For groups with active editor, the promise will resolve
361
- * when the visible editor has finished to resolve.
362
- *
363
- * Use the `whenReady` property to not await editors to
364
- * resolve.
365
+ * The size of the editor part.
365
366
  */
366
- readonly whenRestored: Promise<void>;
367
+ readonly contentDimension: IDimension;
367
368
  /**
368
- * Find out if the editor part has UI state to restore
369
- * from a previous session.
369
+ * Find out if an editor group is currently maximized.
370
370
  */
371
- readonly hasRestorableState: boolean;
371
+ hasMaximizedGroup(): boolean;
372
372
  /**
373
373
  * Enable or disable centered editor layout.
374
374
  */
@@ -383,10 +383,6 @@ interface IEditorPart extends IEditorGroupsContainer {
383
383
  enforcePartOptions(options: DeepPartial<IEditorPartOptions>): IDisposable;
384
384
  }
385
385
  interface IAuxiliaryEditorPart extends IEditorPart {
386
- /**
387
- * The identifier of the window the auxiliary editor part is contained in.
388
- */
389
- readonly windowId: number;
390
386
  /**
391
387
  * Close this auxiliary editor part after moving all
392
388
  * editors of all groups back to the main editor part.
@@ -429,6 +425,14 @@ interface IEditorGroupsService extends IEditorGroupsContainer {
429
425
  * Get the editor part that is rooted in the provided container.
430
426
  */
431
427
  getPart(container: unknown): IEditorPart;
428
+ /**
429
+ * Access the options of the editor part.
430
+ */
431
+ readonly partOptions: IEditorPartOptions;
432
+ /**
433
+ * An event that notifies when editor part options change.
434
+ */
435
+ readonly onDidChangeEditorPartOptions: Event<IEditorPartOptionsChangeEvent>;
432
436
  /**
433
437
  * Opens a new window with a full editor part instantiated
434
438
  * in there at the optional position and size on screen.
@@ -477,6 +481,10 @@ interface IEditorGroup {
477
481
  * group is moved to different locations.
478
482
  */
479
483
  readonly id: GroupIdentifier;
484
+ /**
485
+ * The identifier of the window this editor group is part of.
486
+ */
487
+ readonly windowId: number;
480
488
  /**
481
489
  * A number that indicates the position of this group in the visual
482
490
  * order of groups from left to right and top to bottom. The lowest
@@ -19,7 +19,12 @@ type ACTIVE_GROUP_TYPE = typeof ACTIVE_GROUP;
19
19
  */
20
20
  declare const SIDE_GROUP = -2;
21
21
  type SIDE_GROUP_TYPE = typeof SIDE_GROUP;
22
- type PreferredGroup = IEditorGroup | GroupIdentifier | SIDE_GROUP_TYPE | ACTIVE_GROUP_TYPE;
22
+ /**
23
+ * Open an editor in a new auxiliary window.
24
+ */
25
+ declare const AUX_WINDOW_GROUP = -3;
26
+ type AUX_WINDOW_GROUP_TYPE = typeof AUX_WINDOW_GROUP;
27
+ type PreferredGroup = IEditorGroup | GroupIdentifier | SIDE_GROUP_TYPE | ACTIVE_GROUP_TYPE | AUX_WINDOW_GROUP_TYPE;
23
28
  interface ISaveEditorsOptions extends ISaveOptions {
24
29
  /**
25
30
  * If true, will ask for a location of the editor to save to.
@@ -185,10 +190,10 @@ interface IEditorService {
185
190
  * @returns the editor that opened or `undefined` if the operation failed or the editor was not
186
191
  * opened to be active.
187
192
  */
188
- openEditor(editor: IResourceEditorInput, group?: IEditorGroup | GroupIdentifier | SIDE_GROUP_TYPE | ACTIVE_GROUP_TYPE): Promise<IEditorPane | undefined>;
189
- openEditor(editor: ITextResourceEditorInput | IUntitledTextResourceEditorInput, group?: IEditorGroup | GroupIdentifier | SIDE_GROUP_TYPE | ACTIVE_GROUP_TYPE): Promise<IEditorPane | undefined>;
190
- openEditor(editor: IResourceDiffEditorInput, group?: IEditorGroup | GroupIdentifier | SIDE_GROUP_TYPE | ACTIVE_GROUP_TYPE): Promise<ITextDiffEditorPane | undefined>;
191
- openEditor(editor: IUntypedEditorInput, group?: IEditorGroup | GroupIdentifier | SIDE_GROUP_TYPE | ACTIVE_GROUP_TYPE): Promise<IEditorPane | undefined>;
193
+ openEditor(editor: IResourceEditorInput, group?: IEditorGroup | GroupIdentifier | SIDE_GROUP_TYPE | ACTIVE_GROUP_TYPE | AUX_WINDOW_GROUP_TYPE): Promise<IEditorPane | undefined>;
194
+ openEditor(editor: ITextResourceEditorInput | IUntitledTextResourceEditorInput, group?: IEditorGroup | GroupIdentifier | SIDE_GROUP_TYPE | ACTIVE_GROUP_TYPE | AUX_WINDOW_GROUP_TYPE): Promise<IEditorPane | undefined>;
195
+ openEditor(editor: IResourceDiffEditorInput, group?: IEditorGroup | GroupIdentifier | SIDE_GROUP_TYPE | ACTIVE_GROUP_TYPE | AUX_WINDOW_GROUP_TYPE): Promise<ITextDiffEditorPane | undefined>;
196
+ openEditor(editor: IUntypedEditorInput, group?: IEditorGroup | GroupIdentifier | SIDE_GROUP_TYPE | ACTIVE_GROUP_TYPE | AUX_WINDOW_GROUP_TYPE): Promise<IEditorPane | undefined>;
192
197
  /**
193
198
  * @deprecated using this method is a sign that your editor has not adopted the editor
194
199
  * resolver yet. Please use `IEditorResolverService.registerEditor` to make your editor
@@ -201,7 +206,7 @@ interface IEditorService {
201
206
  * If you already have an `EditorInput` in hand and must use it for opening, use `group.openEditor`
202
207
  * instead, via `IEditorGroupsService`.
203
208
  */
204
- openEditor(editor: EditorInput, options?: IEditorOptions, group?: IEditorGroup | GroupIdentifier | SIDE_GROUP_TYPE | ACTIVE_GROUP_TYPE): Promise<IEditorPane | undefined>;
209
+ openEditor(editor: EditorInput, options?: IEditorOptions, group?: IEditorGroup | GroupIdentifier | SIDE_GROUP_TYPE | ACTIVE_GROUP_TYPE | AUX_WINDOW_GROUP_TYPE): Promise<IEditorPane | undefined>;
205
210
  /**
206
211
  * Open editors in an editor group.
207
212
  *
@@ -213,7 +218,7 @@ interface IEditorService {
213
218
  * @returns the editors that opened. The array can be empty or have less elements for editors
214
219
  * that failed to open or were instructed to open as inactive.
215
220
  */
216
- openEditors(editors: IUntypedEditorInput[], group?: IEditorGroup | GroupIdentifier | SIDE_GROUP_TYPE | ACTIVE_GROUP_TYPE, options?: IOpenEditorsOptions): Promise<readonly IEditorPane[]>;
221
+ openEditors(editors: IUntypedEditorInput[], group?: IEditorGroup | GroupIdentifier | SIDE_GROUP_TYPE | ACTIVE_GROUP_TYPE | AUX_WINDOW_GROUP_TYPE, options?: IOpenEditorsOptions): Promise<readonly IEditorPane[]>;
217
222
  /**
218
223
  * Replaces editors in an editor group with the provided replacement.
219
224
  *
@@ -284,4 +289,4 @@ interface IEditorService {
284
289
  createScoped(editorGroupsContainer: IEditorGroupsContainer | 'main', disposables: DisposableStore): IEditorService;
285
290
  }
286
291
 
287
- export { ACTIVE_GROUP, type ACTIVE_GROUP_TYPE, type IBaseSaveRevertAllEditorOptions, IEditorService, type IEditorsChangeEvent, type IOpenEditorsOptions, type IRevertAllEditorsOptions, type ISaveAllEditorsOptions, type ISaveEditorsOptions, type ISaveEditorsResult, type IUntypedEditorReplacement, type PreferredGroup, SIDE_GROUP, type SIDE_GROUP_TYPE };
292
+ export { ACTIVE_GROUP, type ACTIVE_GROUP_TYPE, AUX_WINDOW_GROUP, type AUX_WINDOW_GROUP_TYPE, type IBaseSaveRevertAllEditorOptions, IEditorService, type IEditorsChangeEvent, type IOpenEditorsOptions, type IRevertAllEditorsOptions, type ISaveAllEditorsOptions, type ISaveEditorsOptions, type ISaveEditorsResult, type IUntypedEditorReplacement, type PreferredGroup, SIDE_GROUP, type SIDE_GROUP_TYPE };
@@ -3,8 +3,9 @@ import { isEditorGroup } from './editorGroupsService.js';
3
3
  const IEditorService = ( createDecorator('editorService'));
4
4
  const ACTIVE_GROUP = -1;
5
5
  const SIDE_GROUP = -2;
6
+ const AUX_WINDOW_GROUP = -3;
6
7
  function isPreferredGroup(obj) {
7
8
  const candidate = obj;
8
9
  return typeof obj === 'number' || isEditorGroup(candidate);
9
10
  }
10
- export { ACTIVE_GROUP, IEditorService, SIDE_GROUP, isPreferredGroup };
11
+ export { ACTIVE_GROUP, AUX_WINDOW_GROUP, IEditorService, SIDE_GROUP, isPreferredGroup };
@@ -1,5 +1,5 @@
1
1
  import { __decorate, __param } from '../../../../../../../external/tslib/tslib.es6.js';
2
- import { localizeWithPath } from '../../../../nls.js';
2
+ import { localizeWithPath, localize2WithPath } from '../../../../nls.js';
3
3
  import { IExtensionManagementService, IGlobalExtensionEnablementService } from '../../../../platform/extensionManagement/common/extensionManagement.js';
4
4
  import { IStorageService } from '../../../../platform/storage/common/storage.js';
5
5
  import { isResolverExtension } from '../../../../platform/extensions/common/extensions.js';
@@ -180,11 +180,11 @@ registerAction2(class extends Action2 {
180
180
  constructor() {
181
181
  super({
182
182
  id: 'extension.bisect.start',
183
- title: { value: ( localizeWithPath(
183
+ title: ( localize2WithPath(
184
184
  'vs/workbench/services/extensionManagement/browser/extensionBisect',
185
185
  'title.start',
186
- "Start Extension Bisect"
187
- )), original: 'Start Extension Bisect' },
186
+ 'Start Extension Bisect'
187
+ )),
188
188
  category: Categories.Help,
189
189
  f1: true,
190
190
  precondition: ( ExtensionBisectUi.ctxIsBisectActive.negate()),
@@ -231,11 +231,11 @@ registerAction2(class extends Action2 {
231
231
  constructor() {
232
232
  super({
233
233
  id: 'extension.bisect.next',
234
- title: { value: ( localizeWithPath(
234
+ title: ( localize2WithPath(
235
235
  'vs/workbench/services/extensionManagement/browser/extensionBisect',
236
236
  'title.isBad',
237
- "Continue Extension Bisect"
238
- )), original: 'Continue Extension Bisect' },
237
+ 'Continue Extension Bisect'
238
+ )),
239
239
  category: Categories.Help,
240
240
  f1: true,
241
241
  precondition: ExtensionBisectUi.ctxIsBisectActive
@@ -376,11 +376,11 @@ registerAction2(class extends Action2 {
376
376
  constructor() {
377
377
  super({
378
378
  id: 'extension.bisect.stop',
379
- title: { value: ( localizeWithPath(
379
+ title: ( localize2WithPath(
380
380
  'vs/workbench/services/extensionManagement/browser/extensionBisect',
381
381
  'title.stop',
382
- "Stop Extension Bisect"
383
- )), original: 'Stop Extension Bisect' },
382
+ 'Stop Extension Bisect'
383
+ )),
384
384
  category: Categories.Help,
385
385
  f1: true,
386
386
  precondition: ExtensionBisectUi.ctxIsBisectActive
@@ -1,5 +1,5 @@
1
1
  import { __decorate, __param } from '../../../../../../../external/tslib/tslib.es6.js';
2
- import { localizeWithPath } from '../../../../nls.js';
2
+ import { localizeWithPath, localize2WithPath } from '../../../../nls.js';
3
3
  import { combinedDisposable } from '../../../../base/common/lifecycle.js';
4
4
  import { URI } from '../../../../base/common/uri.js';
5
5
  import { IConfigurationService } from '../../../../platform/configuration/common/configuration.js';
@@ -126,7 +126,7 @@ let ExtensionUrlHandler = class ExtensionUrlHandler {
126
126
  label: ( localizeWithPath(
127
127
  'vs/workbench/services/extensions/browser/extensionUrlHandler',
128
128
  'rememberConfirmUrl',
129
- "Don't ask again for this extension."
129
+ "Do not ask me again for this extension"
130
130
  )),
131
131
  },
132
132
  detail: uriString,
@@ -375,16 +375,16 @@ class ManageAuthorizedExtensionURIsAction extends Action2 {
375
375
  constructor() {
376
376
  super({
377
377
  id: 'workbench.extensions.action.manageAuthorizedExtensionURIs',
378
- title: { value: ( localizeWithPath(
378
+ title: ( localize2WithPath(
379
379
  'vs/workbench/services/extensions/browser/extensionUrlHandler',
380
380
  'manage',
381
- "Manage Authorized Extension URIs..."
382
- )), original: 'Manage Authorized Extension URIs...' },
383
- category: { value: ( localizeWithPath(
381
+ 'Manage Authorized Extension URIs...'
382
+ )),
383
+ category: ( localize2WithPath(
384
384
  'vs/workbench/services/extensions/browser/extensionUrlHandler',
385
385
  'extensions',
386
- "Extensions"
387
- )), original: 'Extensions' },
386
+ 'Extensions'
387
+ )),
388
388
  menu: {
389
389
  id: MenuId.CommandPalette,
390
390
  when: ( IsWebContext.toNegated())