@codingame/monaco-vscode-api 7.0.11 → 7.1.1

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 (683) hide show
  1. package/api.js +60 -10
  2. package/extensions.d.ts +9 -0
  3. package/l10n.d.ts +13 -1
  4. package/l10n.js +3 -2
  5. package/missing-services.js +35 -21
  6. package/package.json +9 -9
  7. package/service-override/workingCopy.d.ts +4 -1
  8. package/services.js +2 -2
  9. package/vscode/src/vs/base/browser/browser.js +4 -1
  10. package/vscode/src/vs/base/browser/defaultWorkerFactory.js +7 -1
  11. package/vscode/src/vs/base/browser/dom.js +8 -1
  12. package/vscode/src/vs/base/browser/markdownRenderer.js +1 -1
  13. package/vscode/src/vs/base/browser/ui/actionbar/actionViewItems.d.ts +1 -0
  14. package/vscode/src/vs/base/browser/ui/actionbar/actionViewItems.js +13 -6
  15. package/vscode/src/vs/base/browser/ui/actionbar/actionbar.js +1 -1
  16. package/vscode/src/vs/base/browser/ui/button/button.js +2 -3
  17. package/vscode/src/vs/base/browser/ui/dialog/dialog.js +7 -8
  18. package/vscode/src/vs/base/browser/ui/dropdown/dropdownActionViewItem.js +2 -3
  19. package/vscode/src/vs/base/browser/ui/findinput/findInput.js +2 -3
  20. package/vscode/src/vs/base/browser/ui/findinput/findInputToggles.js +4 -5
  21. package/vscode/src/vs/base/browser/ui/findinput/replaceInput.js +3 -4
  22. package/vscode/src/vs/base/browser/ui/hover/hoverWidget.css.js +1 -1
  23. package/vscode/src/vs/base/browser/ui/hover/hoverWidget.js +3 -5
  24. package/vscode/src/vs/base/browser/ui/icons/iconSelectBox.js +3 -4
  25. package/vscode/src/vs/base/browser/ui/inputbox/inputBox.js +7 -8
  26. package/vscode/src/vs/base/browser/ui/keybindingLabel/keybindingLabel.js +2 -3
  27. package/vscode/src/vs/base/browser/ui/list/listView.js +2 -2
  28. package/vscode/src/vs/base/browser/ui/menu/menubar.js +2 -3
  29. package/vscode/src/vs/base/browser/ui/selectBox/selectBoxCustom.js +4 -5
  30. package/vscode/src/vs/base/browser/ui/splitview/paneview.js +2 -3
  31. package/vscode/src/vs/base/browser/ui/table/tableWidget.js +1 -1
  32. package/vscode/src/vs/base/browser/ui/toggle/toggle.css.js +1 -1
  33. package/vscode/src/vs/base/browser/ui/toolbar/toolbar.js +2 -3
  34. package/vscode/src/vs/base/browser/ui/tree/abstractTree.js +11 -12
  35. package/vscode/src/vs/base/browser/ui/tree/treeDefaults.js +2 -3
  36. package/vscode/src/vs/base/common/actions.js +2 -3
  37. package/vscode/src/vs/base/common/arrays.js +7 -1
  38. package/vscode/src/vs/base/common/date.js +61 -63
  39. package/vscode/src/vs/base/common/errorMessage.js +8 -22
  40. package/vscode/src/vs/base/common/event.d.ts +16 -0
  41. package/vscode/src/vs/base/common/event.js +4 -0
  42. package/vscode/src/vs/base/common/hotReload.js +13 -1
  43. package/vscode/src/vs/base/common/hotReloadHelpers.js +25 -0
  44. package/vscode/src/vs/base/common/jsonErrorMessages.js +10 -11
  45. package/vscode/src/vs/base/common/jsonSchema.js +122 -0
  46. package/vscode/src/vs/base/common/keybindingLabels.js +21 -22
  47. package/vscode/src/vs/base/common/labels.js +2 -2
  48. package/vscode/src/vs/base/common/network.js +1 -1
  49. package/vscode/src/vs/base/common/observableInternal/base.d.ts +1 -0
  50. package/vscode/src/vs/base/common/observableInternal/base.js +6 -0
  51. package/vscode/src/vs/base/common/observableInternal/utils.js +4 -1
  52. package/vscode/src/vs/base/common/path.d.ts +1 -1
  53. package/vscode/src/vs/base/common/path.js +20 -17
  54. package/vscode/src/vs/base/common/performance.js +78 -15
  55. package/vscode/src/vs/base/common/platform.js +14 -17
  56. package/vscode/src/vs/base/common/prefixTree.d.ts +2 -0
  57. package/vscode/src/vs/base/common/prefixTree.js +3 -0
  58. package/vscode/src/vs/base/common/product.d.ts +3 -7
  59. package/vscode/src/vs/base/common/uri.js +3 -0
  60. package/vscode/src/vs/base/parts/ipc/common/ipc.net.js +6 -3
  61. package/vscode/src/vs/editor/browser/controller/mouseHandler.js +66 -18
  62. package/vscode/src/vs/editor/browser/controller/mouseTarget.js +18 -5
  63. package/vscode/src/vs/editor/browser/controller/pointerHandler.js +3 -3
  64. package/vscode/src/vs/editor/browser/controller/textAreaHandler.js +9 -13
  65. package/vscode/src/vs/editor/browser/coreCommands.js +4 -5
  66. package/vscode/src/vs/editor/browser/editorExtensions.js +7 -8
  67. package/vscode/src/vs/editor/browser/observableCodeEditor.js +2 -0
  68. package/vscode/src/vs/editor/browser/services/hoverService/hoverWidget.js +2 -3
  69. package/vscode/src/vs/editor/browser/services/hoverService/updatableHoverWidget.js +2 -3
  70. package/vscode/src/vs/editor/browser/view.js +3 -1
  71. package/vscode/src/vs/editor/browser/viewParts/overviewRuler/decorationsOverviewRuler.js +1 -2
  72. package/vscode/src/vs/editor/browser/widget/codeEditor/codeEditorWidget.js +4 -6
  73. package/vscode/src/vs/editor/browser/widget/codeEditor/editor.css.js +1 -1
  74. package/vscode/src/vs/editor/browser/widget/diffEditor/commands.js +13 -14
  75. package/vscode/src/vs/editor/browser/widget/diffEditor/components/accessibleDiffViewer.js +17 -38
  76. package/vscode/src/vs/editor/browser/widget/diffEditor/components/diffEditorDecorations.js +20 -2
  77. package/vscode/src/vs/editor/browser/widget/diffEditor/components/diffEditorEditors.js +6 -6
  78. package/vscode/src/vs/editor/browser/widget/diffEditor/components/diffEditorViewZones/diffEditorViewZones.js +11 -2
  79. package/vscode/src/vs/editor/browser/widget/diffEditor/components/diffEditorViewZones/inlineDiffDeletedCodeMargin.js +10 -13
  80. package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditor.contribution.js +6 -7
  81. package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditorOptions.js +37 -3
  82. package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditorViewModel.js +4 -2
  83. package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditorWidget.js +33 -23
  84. package/vscode/src/vs/editor/browser/widget/diffEditor/features/hideUnchangedRegionsFeature.js +91 -41
  85. package/vscode/src/vs/editor/browser/widget/diffEditor/features/movedBlocksLinesFeature.js +9 -14
  86. package/vscode/src/vs/editor/browser/widget/diffEditor/features/overviewRulerFeature.js +1 -1
  87. package/vscode/src/vs/editor/browser/widget/diffEditor/features/revertButtonsFeature.js +3 -4
  88. package/vscode/src/vs/editor/browser/widget/diffEditor/registrations.contribution.js +7 -13
  89. package/vscode/src/vs/editor/browser/widget/diffEditor/style.css.js +1 -1
  90. package/vscode/src/vs/editor/browser/widget/diffEditor/utils.js +80 -21
  91. package/vscode/src/vs/editor/browser/widget/multiDiffEditor/colors.js +4 -5
  92. package/vscode/src/vs/editor/browser/widget/multiDiffEditor/diffEditorItemTemplate.js +24 -18
  93. package/vscode/src/vs/editor/browser/widget/multiDiffEditor/multiDiffEditorViewModel.js +26 -13
  94. package/vscode/src/vs/editor/browser/widget/multiDiffEditor/multiDiffEditorWidget.js +4 -1
  95. package/vscode/src/vs/editor/browser/widget/multiDiffEditor/multiDiffEditorWidgetImpl.js +8 -4
  96. package/vscode/src/vs/editor/common/config/diffEditor.js +2 -0
  97. package/vscode/src/vs/editor/common/config/editorConfigurationSchema.js +86 -115
  98. package/vscode/src/vs/editor/common/config/editorOptions.d.ts +11 -1
  99. package/vscode/src/vs/editor/common/config/editorOptions.js +547 -932
  100. package/vscode/src/vs/editor/common/core/editorColorRegistry.js +102 -144
  101. package/vscode/src/vs/editor/common/core/lineRange.js +1 -1
  102. package/vscode/src/vs/editor/common/diff/defaultLinesDiffComputer/algorithms/diffAlgorithm.js +11 -0
  103. package/vscode/src/vs/editor/common/diff/defaultLinesDiffComputer/computeMovedLines.js +2 -2
  104. package/vscode/src/vs/editor/common/diff/defaultLinesDiffComputer/defaultLinesDiffComputer.js +8 -3
  105. package/vscode/src/vs/editor/common/diff/defaultLinesDiffComputer/linesSliceCharSequence.js +34 -34
  106. package/vscode/src/vs/editor/common/diff/rangeMapping.d.ts +7 -0
  107. package/vscode/src/vs/editor/common/diff/rangeMapping.js +40 -0
  108. package/vscode/src/vs/editor/common/editorContextKeys.js +52 -69
  109. package/vscode/src/vs/editor/common/languageFeatureRegistry.d.ts +1 -1
  110. package/vscode/src/vs/editor/common/languageFeatureRegistry.js +27 -14
  111. package/vscode/src/vs/editor/common/languages/modesRegistry.js +2 -3
  112. package/vscode/src/vs/editor/common/languages.d.ts +4 -0
  113. package/vscode/src/vs/editor/common/languages.js +28 -29
  114. package/vscode/src/vs/editor/common/model/editStack.js +2 -3
  115. package/vscode/src/vs/editor/common/model/guidesTextModelPart.js +1 -1
  116. package/vscode/src/vs/editor/common/standaloneStrings.js +57 -54
  117. package/vscode/src/vs/editor/common/viewLayout/viewLineRenderer.js +3 -9
  118. package/vscode/src/vs/editor/common/viewModel/modelLineProjection.js +1 -1
  119. package/vscode/src/vs/editor/contrib/anchorSelect/browser/anchorSelect.js +7 -14
  120. package/vscode/src/vs/editor/contrib/bracketMatching/browser/bracketMatching.js +7 -12
  121. package/vscode/src/vs/editor/contrib/caretOperations/browser/caretOperations.js +3 -4
  122. package/vscode/src/vs/editor/contrib/caretOperations/browser/transpose.js +2 -3
  123. package/vscode/src/vs/editor/contrib/clipboard/browser/clipboard.js +18 -19
  124. package/vscode/src/vs/editor/contrib/codeAction/browser/codeAction.js +2 -3
  125. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionCommands.js +29 -53
  126. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionContributions.js +22 -10
  127. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionController.js +8 -9
  128. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionMenu.js +9 -10
  129. package/vscode/src/vs/editor/contrib/codeAction/browser/lightBulbWidget.css.js +1 -1
  130. package/vscode/src/vs/editor/contrib/codeAction/browser/lightBulbWidget.js +183 -9
  131. package/vscode/src/vs/editor/contrib/codelens/browser/codeLensCache.js +4 -5
  132. package/vscode/src/vs/editor/contrib/codelens/browser/codelensController.js +3 -4
  133. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorHoverParticipant.js +2 -3
  134. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorPickerWidget.js +3 -4
  135. package/vscode/src/vs/editor/contrib/colorPicker/browser/standaloneColorPickerActions.js +10 -13
  136. package/vscode/src/vs/editor/contrib/comment/browser/comment.js +7 -8
  137. package/vscode/src/vs/editor/contrib/contextmenu/browser/contextmenu.js +12 -15
  138. package/vscode/src/vs/editor/contrib/cursorUndo/browser/cursorUndo.js +3 -4
  139. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/copyPasteContribution.js +5 -7
  140. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/copyPasteController.js +9 -11
  141. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/defaultProviders.js +9 -10
  142. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/dropIntoEditorContribution.js +3 -5
  143. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/dropIntoEditorController.js +4 -5
  144. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/postEditWidget.js +3 -16
  145. package/vscode/src/vs/editor/contrib/editorState/browser/keybindingCancellation.js +3 -5
  146. package/vscode/src/vs/editor/contrib/find/browser/findController.js +20 -24
  147. package/vscode/src/vs/editor/contrib/find/browser/findModel.js +6 -1
  148. package/vscode/src/vs/editor/contrib/find/browser/findWidget.js +31 -35
  149. package/vscode/src/vs/editor/contrib/folding/browser/folding.js +20 -21
  150. package/vscode/src/vs/editor/contrib/folding/browser/foldingDecorations.js +11 -25
  151. package/vscode/src/vs/editor/contrib/fontZoom/browser/fontZoom.js +4 -5
  152. package/vscode/src/vs/editor/contrib/format/browser/formatActions.js +3 -4
  153. package/vscode/src/vs/editor/contrib/gotoError/browser/gotoError.js +9 -10
  154. package/vscode/src/vs/editor/contrib/gotoError/browser/gotoErrorWidget.js +18 -25
  155. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/goToCommands.js +46 -47
  156. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/goToSymbol.js +42 -17
  157. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/link/goToDefinitionAtPosition.js +3 -4
  158. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/peek/referencesController.js +5 -13
  159. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/peek/referencesTree.js +4 -5
  160. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/peek/referencesWidget.js +4 -5
  161. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/referencesModel.js +15 -22
  162. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/symbolNavigation.js +7 -11
  163. package/vscode/src/vs/editor/contrib/hover/browser/contentHoverRendered.js +5 -7
  164. package/vscode/src/vs/editor/contrib/hover/browser/getHover.js +8 -4
  165. package/vscode/src/vs/editor/contrib/hover/browser/hoverAccessibleViews.js +24 -38
  166. package/vscode/src/vs/editor/contrib/hover/browser/hoverActionIds.js +3 -4
  167. package/vscode/src/vs/editor/contrib/hover/browser/hoverActions.js +25 -27
  168. package/vscode/src/vs/editor/contrib/hover/browser/markdownHoverParticipant.js +12 -15
  169. package/vscode/src/vs/editor/contrib/hover/browser/markerHoverParticipant.js +6 -7
  170. package/vscode/src/vs/editor/contrib/inPlaceReplace/browser/inPlaceReplace.js +3 -4
  171. package/vscode/src/vs/editor/contrib/indentation/browser/indentation.js +21 -22
  172. package/vscode/src/vs/editor/contrib/inlayHints/browser/inlayHintsHover.js +9 -10
  173. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/commands.js +12 -13
  174. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/ghostTextWidget.js +2 -2
  175. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/hoverParticipant.js +3 -4
  176. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/inlineCompletionContextKeys.js +7 -10
  177. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsAccessibleView.js +51 -42
  178. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsController.js +3 -5
  179. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsHintsWidget.js +6 -7
  180. package/vscode/src/vs/editor/contrib/inlineEdit/browser/ghostTextWidget.js +12 -16
  181. package/vscode/src/vs/editor/contrib/inlineEdit/browser/inlineEdit.contribution.js +0 -3
  182. package/vscode/src/vs/editor/contrib/inlineEdit/browser/inlineEdit.css.js +1 -1
  183. package/vscode/src/vs/editor/contrib/inlineEdit/browser/inlineEditController.js +58 -39
  184. package/vscode/src/vs/editor/contrib/inlineEdit/browser/inlineEditHintsWidget.js +1 -1
  185. package/vscode/src/vs/editor/contrib/inlineEdit/browser/inlineEditSideBySideWidget.css.js +4 -0
  186. package/vscode/src/vs/editor/contrib/inlineEdit/browser/inlineEditSideBySideWidget.js +301 -0
  187. package/vscode/src/vs/editor/contrib/inlineEdits/browser/commands.js +7 -8
  188. package/vscode/src/vs/editor/contrib/inlineEdits/browser/consts.js +3 -4
  189. package/vscode/src/vs/editor/contrib/inlineEdits/browser/inlineEditsController.js +1 -1
  190. package/vscode/src/vs/editor/contrib/inlineEdits/browser/inlineEditsWidget.js +1 -1
  191. package/vscode/src/vs/editor/contrib/lineSelection/browser/lineSelection.js +2 -3
  192. package/vscode/src/vs/editor/contrib/linesOperations/browser/linesOperations.js +31 -32
  193. package/vscode/src/vs/editor/contrib/linkedEditing/browser/linkedEditing.js +3 -4
  194. package/vscode/src/vs/editor/contrib/links/browser/links.js +12 -14
  195. package/vscode/src/vs/editor/contrib/message/browser/messageController.js +2 -3
  196. package/vscode/src/vs/editor/contrib/multicursor/browser/multicursor.js +23 -24
  197. package/vscode/src/vs/editor/contrib/parameterHints/browser/parameterHints.css.js +1 -1
  198. package/vscode/src/vs/editor/contrib/parameterHints/browser/parameterHints.js +2 -3
  199. package/vscode/src/vs/editor/contrib/parameterHints/browser/parameterHintsWidget.js +11 -12
  200. package/vscode/src/vs/editor/contrib/peekView/browser/peekView.js +20 -35
  201. package/vscode/src/vs/editor/contrib/placeholderText/browser/placeholderText.contribution.js +5 -56
  202. package/vscode/src/vs/editor/contrib/placeholderText/browser/placeholderText.css.js +1 -1
  203. package/vscode/src/vs/editor/contrib/placeholderText/browser/placeholderTextContribution.js +71 -0
  204. package/vscode/src/vs/editor/contrib/quickAccess/browser/gotoLineQuickAccess.js +8 -11
  205. package/vscode/src/vs/editor/contrib/quickAccess/browser/gotoSymbolQuickAccess.js +35 -41
  206. package/vscode/src/vs/editor/contrib/readOnlyMessage/browser/contribution.js +3 -4
  207. package/vscode/src/vs/editor/contrib/rename/browser/rename.js +13 -25
  208. package/vscode/src/vs/editor/contrib/rename/browser/renameWidget.js +9 -11
  209. package/vscode/src/vs/editor/contrib/smartSelect/browser/smartSelect.js +5 -6
  210. package/vscode/src/vs/editor/contrib/snippet/browser/snippetController2.js +5 -6
  211. package/vscode/src/vs/editor/contrib/snippet/browser/snippetVariables.js +5 -6
  212. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollActions.js +13 -15
  213. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollController.js +1 -1
  214. package/vscode/src/vs/editor/contrib/suggest/browser/suggest.js +10 -20
  215. package/vscode/src/vs/editor/contrib/suggest/browser/suggestController.js +12 -14
  216. package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidget.js +19 -32
  217. package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidgetDetails.js +3 -4
  218. package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidgetRenderer.js +3 -4
  219. package/vscode/src/vs/editor/contrib/symbolIcons/browser/symbolIcons.js +67 -101
  220. package/vscode/src/vs/editor/contrib/toggleTabFocusMode/browser/toggleTabFocusMode.js +6 -12
  221. package/vscode/src/vs/editor/contrib/tokenization/browser/tokenization.js +2 -3
  222. package/vscode/src/vs/editor/contrib/unicodeHighlighter/browser/unicodeHighlighter.js +30 -49
  223. package/vscode/src/vs/editor/contrib/unusualLineTerminators/browser/unusualLineTerminators.js +7 -9
  224. package/vscode/src/vs/editor/contrib/wordHighlighter/browser/highlightDecorations.js +18 -27
  225. package/vscode/src/vs/editor/contrib/wordHighlighter/browser/wordHighlighter.js +5 -6
  226. package/vscode/src/vs/editor/contrib/wordOperations/browser/wordOperations.js +2 -3
  227. package/vscode/src/vs/nls.js +27 -21
  228. package/vscode/src/vs/platform/accessibility/browser/accessibleView.js +15 -9
  229. package/vscode/src/vs/platform/accessibility/browser/accessibleViewRegistry.js +1 -16
  230. package/vscode/src/vs/platform/accessibilitySignal/browser/accessibilitySignalService.d.ts +0 -1
  231. package/vscode/src/vs/platform/accessibilitySignal/browser/accessibilitySignalService.js +53 -56
  232. package/vscode/src/vs/platform/action/common/actionCommonCategories.js +7 -8
  233. package/vscode/src/vs/platform/actionWidget/browser/actionList.js +5 -6
  234. package/vscode/src/vs/platform/actionWidget/browser/actionWidget.js +8 -9
  235. package/vscode/src/vs/platform/actions/browser/buttonbar.js +4 -5
  236. package/vscode/src/vs/platform/actions/browser/menuEntryActionViewItem.js +43 -13
  237. package/vscode/src/vs/platform/actions/browser/toolbar.js +5 -6
  238. package/vscode/src/vs/platform/actions/common/actions.d.ts +4 -0
  239. package/vscode/src/vs/platform/actions/common/actions.js +4 -0
  240. package/vscode/src/vs/platform/actions/common/actions.service.d.ts +14 -1
  241. package/vscode/src/vs/platform/actions/common/menuResetAction.js +2 -3
  242. package/vscode/src/vs/platform/actions/common/menuService.js +52 -21
  243. package/vscode/src/vs/platform/configuration/common/configurationModels.js +11 -3
  244. package/vscode/src/vs/platform/configuration/common/configurationRegistry.d.ts +14 -8
  245. package/vscode/src/vs/platform/configuration/common/configurationRegistry.js +180 -146
  246. package/vscode/src/vs/platform/configuration/common/configurations.js +2 -2
  247. package/vscode/src/vs/platform/contextkey/browser/contextKeyService.js +2 -3
  248. package/vscode/src/vs/platform/contextkey/common/contextkey.js +13 -21
  249. package/vscode/src/vs/platform/contextkey/common/contextkeys.js +10 -15
  250. package/vscode/src/vs/platform/contextkey/common/scanner.js +7 -16
  251. package/vscode/src/vs/platform/contextview/browser/contextMenuService.js +2 -3
  252. package/vscode/src/vs/platform/dialogs/common/dialogs.js +11 -13
  253. package/vscode/src/vs/platform/dnd/browser/dnd.js +3 -5
  254. package/vscode/src/vs/platform/extensionManagement/common/extensionManagement.d.ts +7 -1
  255. package/vscode/src/vs/platform/extensionManagement/common/extensionManagement.js +3 -5
  256. package/vscode/src/vs/platform/extensionManagement/common/extensionManagement.service.d.ts +3 -2
  257. package/vscode/src/vs/platform/extensionManagement/common/extensionNls.js +2 -3
  258. package/vscode/src/vs/platform/extensionManagement/common/extensionStorage.js +1 -1
  259. package/vscode/src/vs/platform/extensionManagement/common/extensionsScannerService.js +25 -33
  260. package/vscode/src/vs/platform/extensions/common/extensionValidator.js +33 -67
  261. package/vscode/src/vs/platform/extensions/common/extensions.d.ts +3 -18
  262. package/vscode/src/vs/platform/extensions/common/extensionsApiProposals.js +31 -0
  263. package/vscode/src/vs/platform/files/browser/htmlFileSystemProvider.js +3 -8
  264. package/vscode/src/vs/platform/files/common/files.js +7 -8
  265. package/vscode/src/vs/platform/history/browser/contextScopedHistoryWidget.js +2 -3
  266. package/vscode/src/vs/platform/instantiation/common/instantiationService.js +5 -0
  267. package/vscode/src/vs/platform/jsonschemas/common/jsonContributionRegistry.d.ts +10 -0
  268. package/vscode/src/vs/platform/jsonschemas/common/jsonContributionRegistry.js +8 -0
  269. package/vscode/src/vs/platform/keybinding/common/abstractKeybindingService.js +9 -14
  270. package/vscode/src/vs/platform/languagePacks/common/languagePacks.js +2 -3
  271. package/vscode/src/vs/platform/languagePacks/common/localizedStrings.js +4 -5
  272. package/vscode/src/vs/platform/list/browser/listService.js +43 -71
  273. package/vscode/src/vs/platform/log/common/log.js +7 -8
  274. package/vscode/src/vs/platform/markers/common/markers.js +4 -5
  275. package/vscode/src/vs/platform/observable/common/wrapInReloadableClass.js +51 -0
  276. package/vscode/src/vs/platform/quickinput/browser/media/quickInput.css.js +1 -1
  277. package/vscode/src/vs/platform/quickinput/browser/quickInput.js +39 -32
  278. package/vscode/src/vs/platform/quickinput/browser/quickInputActions.js +7 -11
  279. package/vscode/src/vs/platform/quickinput/browser/quickInputController.js +14 -11
  280. package/vscode/src/vs/platform/quickinput/browser/quickInputTree.js +99 -142
  281. package/vscode/src/vs/platform/quickinput/browser/quickInputUtils.js +3 -5
  282. package/vscode/src/vs/platform/quickinput/browser/quickPickPin.js +3 -4
  283. package/vscode/src/vs/platform/quickinput/common/quickInput.d.ts +16 -1
  284. package/vscode/src/vs/platform/quickinput/common/quickInput.js +6 -1
  285. package/vscode/src/vs/platform/request/common/request.js +23 -36
  286. package/vscode/src/vs/platform/theme/browser/defaultStyles.js +11 -2
  287. package/vscode/src/vs/platform/theme/common/colorUtils.js +3 -4
  288. package/vscode/src/vs/platform/theme/common/colors/baseColors.js +27 -37
  289. package/vscode/src/vs/platform/theme/common/colors/chartsColors.js +10 -11
  290. package/vscode/src/vs/platform/theme/common/colors/editorColors.js +120 -207
  291. package/vscode/src/vs/platform/theme/common/colors/inputColors.js +53 -61
  292. package/vscode/src/vs/platform/theme/common/colors/listColors.js +51 -98
  293. package/vscode/src/vs/platform/theme/common/colors/menuColors.js +8 -9
  294. package/vscode/src/vs/platform/theme/common/colors/minimapColors.js +13 -15
  295. package/vscode/src/vs/platform/theme/common/colors/miscColors.js +12 -16
  296. package/vscode/src/vs/platform/theme/common/colors/quickpickColors.js +13 -17
  297. package/vscode/src/vs/platform/theme/common/colors/searchColors.js +4 -9
  298. package/vscode/src/vs/platform/theme/common/iconRegistry.js +7 -9
  299. package/vscode/src/vs/platform/theme/common/tokenClassificationRegistry.js +49 -56
  300. package/vscode/src/vs/platform/undoRedo/common/undoRedoService.js +35 -55
  301. package/vscode/src/vs/platform/userDataProfile/common/userDataProfile.js +2 -3
  302. package/vscode/src/vs/platform/userDataSync/common/abstractSynchronizer.js +5 -8
  303. package/vscode/src/vs/platform/userDataSync/common/userDataSync.js +38 -19
  304. package/vscode/src/vs/platform/userDataSync/common/userDataSyncMachines.js +3 -5
  305. package/vscode/src/vs/platform/workspace/common/workspace.js +2 -3
  306. package/vscode/src/vs/workbench/api/common/extHost.api.impl.js +88 -8
  307. package/vscode/src/vs/workbench/api/common/extHostApiCommands.js +60 -0
  308. package/vscode/src/vs/workbench/api/common/extHostChatAgents2.js +48 -18
  309. package/vscode/src/vs/workbench/api/common/extHostComments.js +26 -4
  310. package/vscode/src/vs/workbench/api/common/extHostDiagnostics.js +4 -6
  311. package/vscode/src/vs/workbench/api/common/extHostDocumentData.js +3 -0
  312. package/vscode/src/vs/workbench/api/common/extHostEmbedding.js +1 -0
  313. package/vscode/src/vs/workbench/api/common/extHostExtensionActivator.js +6 -5
  314. package/vscode/src/vs/workbench/api/common/extHostExtensionService.js +19 -17
  315. package/vscode/src/vs/workbench/api/common/extHostLanguageFeatures.js +45 -48
  316. package/vscode/src/vs/workbench/api/common/extHostLanguageModelTools.js +2 -1
  317. package/vscode/src/vs/workbench/api/common/extHostLanguageModels.js +2 -3
  318. package/vscode/src/vs/workbench/api/common/extHostLogService.js +2 -3
  319. package/vscode/src/vs/workbench/api/common/extHostNotebook.js +3 -9
  320. package/vscode/src/vs/workbench/api/common/extHostNotebookDocument.js +3 -0
  321. package/vscode/src/vs/workbench/api/common/extHostNotebookEditor.js +3 -0
  322. package/vscode/src/vs/workbench/api/common/extHostQuickOpen.js +12 -8
  323. package/vscode/src/vs/workbench/api/common/extHostSCM.js +5 -5
  324. package/vscode/src/vs/workbench/api/common/extHostStatusBar.js +4 -6
  325. package/vscode/src/vs/workbench/api/common/extHostTelemetry.js +3 -5
  326. package/vscode/src/vs/workbench/api/common/extHostTerminalService.js +2 -8
  327. package/vscode/src/vs/workbench/api/common/extHostTerminalShellIntegration.js +4 -4
  328. package/vscode/src/vs/workbench/api/common/extHostTesting.js +69 -6
  329. package/vscode/src/vs/workbench/api/common/extHostTextEditor.js +4 -1
  330. package/vscode/src/vs/workbench/api/common/extHostTreeViews.js +2 -3
  331. package/vscode/src/vs/workbench/api/common/extHostTunnelService.js +3 -4
  332. package/vscode/src/vs/workbench/api/common/extHostTypeConverters.js +41 -11
  333. package/vscode/src/vs/workbench/api/common/extHostTypes.js +78 -23
  334. package/vscode/src/vs/workbench/api/common/extHostWorkspace.js +10 -5
  335. package/vscode/src/vs/workbench/api/common/jsonValidationExtensionPoint.js +19 -30
  336. package/vscode/src/vs/workbench/browser/actions/developerActions.js +41 -59
  337. package/vscode/src/vs/workbench/browser/actions/layoutActions.js +161 -132
  338. package/vscode/src/vs/workbench/browser/actions/textInputActions.js +7 -8
  339. package/vscode/src/vs/workbench/browser/actions/windowActions.js +30 -43
  340. package/vscode/src/vs/workbench/browser/actions/workspaceActions.js +22 -23
  341. package/vscode/src/vs/workbench/browser/actions/workspaceCommands.js +5 -6
  342. package/vscode/src/vs/workbench/browser/actions.js +2 -3
  343. package/vscode/src/vs/workbench/browser/editor.js +3 -4
  344. package/vscode/src/vs/workbench/browser/labels.js +3 -4
  345. package/vscode/src/vs/workbench/browser/parts/auxiliarybar/auxiliaryBarActions.js +12 -17
  346. package/vscode/src/vs/workbench/browser/parts/compositeBarActions.js +16 -25
  347. package/vscode/src/vs/workbench/browser/parts/editor/binaryDiffEditor.js +2 -3
  348. package/vscode/src/vs/workbench/browser/parts/editor/binaryEditor.js +5 -7
  349. package/vscode/src/vs/workbench/browser/parts/editor/breadcrumbs.js +45 -53
  350. package/vscode/src/vs/workbench/browser/parts/editor/breadcrumbsControl.js +12 -13
  351. package/vscode/src/vs/workbench/browser/parts/editor/breadcrumbsPicker.js +2 -3
  352. package/vscode/src/vs/workbench/browser/parts/editor/diffEditorCommands.js +7 -8
  353. package/vscode/src/vs/workbench/browser/parts/editor/editorActions.js +153 -156
  354. package/vscode/src/vs/workbench/browser/parts/editor/editorCommands.js +206 -329
  355. package/vscode/src/vs/workbench/browser/parts/editor/editorCommandsContext.js +134 -0
  356. package/vscode/src/vs/workbench/browser/parts/editor/editorGroupView.js +17 -17
  357. package/vscode/src/vs/workbench/browser/parts/editor/editorGroupWatermark.js +14 -15
  358. package/vscode/src/vs/workbench/browser/parts/editor/editorPanes.js +3 -4
  359. package/vscode/src/vs/workbench/browser/parts/editor/editorPlaceholder.js +15 -23
  360. package/vscode/src/vs/workbench/browser/parts/editor/editorQuickAccess.js +8 -11
  361. package/vscode/src/vs/workbench/browser/parts/editor/editorStatus.js +63 -75
  362. package/vscode/src/vs/workbench/browser/parts/editor/editorTabsControl.js +3 -4
  363. package/vscode/src/vs/workbench/browser/parts/editor/multiEditorTabsControl.js +16 -17
  364. package/vscode/src/vs/workbench/browser/parts/editor/multiRowEditorTabsControl.js +1 -3
  365. package/vscode/src/vs/workbench/browser/parts/editor/sideBySideEditor.js +2 -3
  366. package/vscode/src/vs/workbench/browser/parts/editor/textCodeEditor.js +2 -3
  367. package/vscode/src/vs/workbench/browser/parts/editor/textDiffEditor.js +6 -9
  368. package/vscode/src/vs/workbench/browser/parts/editor/textEditor.js +2 -3
  369. package/vscode/src/vs/workbench/browser/parts/globalCompositeBar.js +17 -19
  370. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsActions.js +18 -19
  371. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsAlerts.js +7 -11
  372. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsCenter.js +7 -8
  373. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsCommands.js +10 -11
  374. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsList.js +9 -24
  375. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsStatus.js +16 -28
  376. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsToasts.js +4 -11
  377. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsViewer.js +6 -13
  378. package/vscode/src/vs/workbench/browser/parts/panel/media/panelpart.css.js +1 -1
  379. package/vscode/src/vs/workbench/browser/parts/panel/panelActions.js +48 -49
  380. package/vscode/src/vs/workbench/browser/parts/titlebar/menubarControl.js +20 -22
  381. package/vscode/src/vs/workbench/browser/parts/titlebar/windowTitle.js +3 -4
  382. package/vscode/src/vs/workbench/browser/parts/views/checkbox.js +2 -3
  383. package/vscode/src/vs/workbench/browser/parts/views/treeView.js +55 -49
  384. package/vscode/src/vs/workbench/browser/parts/views/viewFilter.js +2 -3
  385. package/vscode/src/vs/workbench/browser/parts/views/viewPane.d.ts +2 -2
  386. package/vscode/src/vs/workbench/browser/parts/views/viewPane.js +12 -11
  387. package/vscode/src/vs/workbench/browser/parts/views/viewPaneContainer.js +11 -11
  388. package/vscode/src/vs/workbench/browser/quickaccess.js +2 -3
  389. package/vscode/src/vs/workbench/browser/window.js +20 -28
  390. package/vscode/src/vs/workbench/browser/workbench.contribution.js +376 -584
  391. package/vscode/src/vs/workbench/common/configuration.js +15 -19
  392. package/vscode/src/vs/workbench/common/contextkeys.js +87 -100
  393. package/vscode/src/vs/workbench/common/editor/diffEditorInput.js +2 -3
  394. package/vscode/src/vs/workbench/common/editor/sideBySideEditorInput.js +2 -9
  395. package/vscode/src/vs/workbench/common/editor/textEditorModel.js +3 -5
  396. package/vscode/src/vs/workbench/common/editor.d.ts +5 -2
  397. package/vscode/src/vs/workbench/common/editor.js +5 -6
  398. package/vscode/src/vs/workbench/common/theme.js +281 -450
  399. package/vscode/src/vs/workbench/common/views.js +7 -11
  400. package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibilityConfiguration.js +207 -284
  401. package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibleViewActions.js +50 -16
  402. package/vscode/src/vs/workbench/contrib/accessibility/browser/editorAccessibilityHelp.js +5 -2
  403. package/vscode/src/vs/workbench/contrib/accessibility/common/accessibilityCommands.js +1 -0
  404. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatActions.js +29 -15
  405. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatClear.js +17 -0
  406. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatExecuteActions.js +5 -6
  407. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQuickInputActions.js +10 -15
  408. package/vscode/src/vs/workbench/contrib/chat/browser/chat.js +2 -3
  409. package/vscode/src/vs/workbench/contrib/chat/browser/chatAccessibilityProvider.js +26 -27
  410. package/vscode/src/vs/workbench/contrib/chat/browser/chatAgentHover.js +3 -4
  411. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatAttachmentsContentPart.js +119 -0
  412. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatCodeCitationContentPart.js +48 -0
  413. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatCommandContentPart.js +2 -3
  414. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatConfirmationContentPart.js +11 -6
  415. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatReferencesContentPart.js +62 -33
  416. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatTaskContentPart.js +2 -2
  417. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatTextEditContentPart.js +5 -5
  418. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatTreeContentPart.js +2 -3
  419. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditorInput.js +3 -4
  420. package/vscode/src/vs/workbench/contrib/chat/browser/chatFollowups.js +2 -3
  421. package/vscode/src/vs/workbench/contrib/chat/browser/chatInputPart.js +47 -26
  422. package/vscode/src/vs/workbench/contrib/chat/browser/chatListRenderer.js +64 -37
  423. package/vscode/src/vs/workbench/contrib/chat/browser/chatMarkdownRenderer.js +2 -0
  424. package/vscode/src/vs/workbench/contrib/chat/browser/chatWidget.js +36 -20
  425. package/vscode/src/vs/workbench/contrib/chat/browser/codeBlockPart.js +32 -29
  426. package/vscode/src/vs/workbench/contrib/chat/browser/contrib/chatDynamicVariables.js +8 -8
  427. package/vscode/src/vs/workbench/contrib/chat/browser/media/chat.css.js +1 -1
  428. package/vscode/src/vs/workbench/contrib/chat/common/chatAgents.js +0 -1
  429. package/vscode/src/vs/workbench/contrib/chat/common/chatColors.js +7 -8
  430. package/vscode/src/vs/workbench/contrib/chat/common/chatContextKeys.js +17 -28
  431. package/vscode/src/vs/workbench/contrib/chat/common/chatModel.js +59 -9
  432. package/vscode/src/vs/workbench/contrib/chat/common/chatRequestParser.js +10 -3
  433. package/vscode/src/vs/workbench/contrib/chat/common/chatService.js +9 -1
  434. package/vscode/src/vs/workbench/contrib/chat/common/chatViewModel.js +16 -6
  435. package/vscode/src/vs/workbench/contrib/chat/common/chatWordCounter.js +1 -1
  436. package/vscode/src/vs/workbench/contrib/chat/common/languageModels.js +8 -14
  437. package/vscode/src/vs/workbench/contrib/codeActions/browser/codeActions.contribution.js +3 -1
  438. package/vscode/src/vs/workbench/contrib/codeActions/browser/codeActionsContribution.js +80 -23
  439. package/vscode/src/vs/workbench/contrib/codeActions/common/codeActionsExtensionPoint.js +11 -12
  440. package/vscode/src/vs/workbench/contrib/codeActions/common/documentationExtensionPoint.js +7 -8
  441. package/vscode/src/vs/workbench/contrib/codeEditor/browser/dictation/editorDictation.js +5 -6
  442. package/vscode/src/vs/workbench/contrib/codeEditor/browser/diffEditorAccessibilityHelp.js +25 -30
  443. package/vscode/src/vs/workbench/contrib/codeEditor/browser/diffEditorHelper.js +5 -7
  444. package/vscode/src/vs/workbench/contrib/codeEditor/browser/find/simpleFindWidget.js +11 -12
  445. package/vscode/src/vs/workbench/contrib/codeEditor/browser/largeFileOptimizations.js +5 -11
  446. package/vscode/src/vs/workbench/contrib/codeEditor/browser/quickaccess/gotoSymbolQuickAccess.js +7 -8
  447. package/vscode/src/vs/workbench/contrib/codeEditor/browser/saveParticipants.js +45 -13
  448. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleMinimap.js +3 -4
  449. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleMultiCursorModifier.js +5 -6
  450. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleRenderControlCharacter.js +3 -4
  451. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleRenderWhitespace.js +3 -4
  452. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleWordWrap.js +6 -7
  453. package/vscode/src/vs/workbench/contrib/comments/browser/commentColors.js +9 -11
  454. package/vscode/src/vs/workbench/contrib/comments/browser/commentGlyphWidget.js +10 -15
  455. package/vscode/src/vs/workbench/contrib/comments/browser/commentNode.js +5 -6
  456. package/vscode/src/vs/workbench/contrib/comments/browser/commentReply.js +14 -49
  457. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadBody.js +21 -18
  458. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadHeader.js +4 -5
  459. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadWidget.js +8 -13
  460. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadZoneWidget.js +43 -25
  461. package/vscode/src/vs/workbench/contrib/comments/browser/commentsAccessibility.js +27 -39
  462. package/vscode/src/vs/workbench/contrib/comments/browser/commentsController.js +10 -14
  463. package/vscode/src/vs/workbench/contrib/comments/browser/commentsModel.js +2 -3
  464. package/vscode/src/vs/workbench/contrib/comments/browser/commentsTreeViewer.js +15 -18
  465. package/vscode/src/vs/workbench/contrib/comments/browser/commentsView.js +25 -29
  466. package/vscode/src/vs/workbench/contrib/comments/browser/commentsViewActions.js +10 -11
  467. package/vscode/src/vs/workbench/contrib/comments/browser/reactionsAction.js +11 -15
  468. package/vscode/src/vs/workbench/contrib/comments/browser/simpleCommentEditor.js +1 -0
  469. package/vscode/src/vs/workbench/contrib/comments/common/commentContextKeys.js +11 -17
  470. package/vscode/src/vs/workbench/contrib/customEditor/browser/customEditorInput.js +6 -9
  471. package/vscode/src/vs/workbench/contrib/debug/browser/baseDebugView.js +2 -3
  472. package/vscode/src/vs/workbench/contrib/debug/browser/breakpointEditorContribution.js +33 -36
  473. package/vscode/src/vs/workbench/contrib/debug/browser/breakpointWidget.js +18 -22
  474. package/vscode/src/vs/workbench/contrib/debug/browser/breakpointsView.js +77 -97
  475. package/vscode/src/vs/workbench/contrib/debug/browser/callStackEditorContribution.js +15 -17
  476. package/vscode/src/vs/workbench/contrib/debug/browser/debugColors.js +13 -14
  477. package/vscode/src/vs/workbench/contrib/debug/browser/debugCommands.js +35 -40
  478. package/vscode/src/vs/workbench/contrib/debug/browser/debugIcons.js +58 -75
  479. package/vscode/src/vs/workbench/contrib/debug/browser/debugSessionPicker.js +4 -5
  480. package/vscode/src/vs/workbench/contrib/debug/common/abstractDebugAdapter.js +2 -3
  481. package/vscode/src/vs/workbench/contrib/debug/common/debug.d.ts +8 -1
  482. package/vscode/src/vs/workbench/contrib/debug/common/debug.js +90 -205
  483. package/vscode/src/vs/workbench/contrib/debug/common/debugModel.js +28 -11
  484. package/vscode/src/vs/workbench/contrib/debug/common/debugSource.js +2 -3
  485. package/vscode/src/vs/workbench/contrib/debug/common/debugUtils.js +1 -1
  486. package/vscode/src/vs/workbench/contrib/debug/common/disassemblyViewInput.js +3 -4
  487. package/vscode/src/vs/workbench/contrib/debug/common/loadedScriptsPicker.js +2 -3
  488. package/vscode/src/vs/workbench/contrib/debug/common/replModel.js +5 -6
  489. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsActions.js +342 -359
  490. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsIcons.js +35 -74
  491. package/vscode/src/vs/workbench/contrib/extensions/common/extensionsFileTemplate.js +8 -19
  492. package/vscode/src/vs/workbench/contrib/extensions/common/extensionsInput.js +3 -4
  493. package/vscode/src/vs/workbench/contrib/extensions/common/extensionsUtils.js +5 -7
  494. package/vscode/src/vs/workbench/contrib/externalUriOpener/common/configuration.js +7 -14
  495. package/vscode/src/vs/workbench/contrib/externalUriOpener/common/externalUriOpenerService.js +6 -8
  496. package/vscode/src/vs/workbench/contrib/files/browser/editors/binaryFileEditor.js +2 -3
  497. package/vscode/src/vs/workbench/contrib/files/browser/editors/textFileEditor.js +12 -20
  498. package/vscode/src/vs/workbench/contrib/files/browser/editors/textFileSaveErrorHandler.js +28 -38
  499. package/vscode/src/vs/workbench/contrib/files/browser/explorerViewlet.js +18 -22
  500. package/vscode/src/vs/workbench/contrib/files/browser/fileActions.js +108 -168
  501. package/vscode/src/vs/workbench/contrib/files/browser/fileCommands._save.js +55 -30
  502. package/vscode/src/vs/workbench/contrib/files/browser/fileConstants.js +9 -9
  503. package/vscode/src/vs/workbench/contrib/files/browser/fileImportExport.js +45 -59
  504. package/vscode/src/vs/workbench/contrib/files/browser/files.contribution._configuration.js +102 -151
  505. package/vscode/src/vs/workbench/contrib/files/browser/files.contribution._editorPane.js +3 -4
  506. package/vscode/src/vs/workbench/contrib/files/browser/files.js +21 -12
  507. package/vscode/src/vs/workbench/contrib/files/browser/views/emptyView.js +2 -3
  508. package/vscode/src/vs/workbench/contrib/files/browser/views/explorerDecorationsProvider.js +6 -8
  509. package/vscode/src/vs/workbench/contrib/files/browser/views/explorerView.js +9 -10
  510. package/vscode/src/vs/workbench/contrib/files/browser/views/explorerViewer.js +20 -29
  511. package/vscode/src/vs/workbench/contrib/files/browser/views/openEditorsView.js +54 -35
  512. package/vscode/src/vs/workbench/contrib/files/browser/workspaceWatcher.js +7 -10
  513. package/vscode/src/vs/workbench/contrib/files/common/dirtyFilesIndicator.js +2 -3
  514. package/vscode/src/vs/workbench/contrib/files/common/files.js +19 -40
  515. package/vscode/src/vs/workbench/contrib/folding/browser/folding.contribution.js +5 -7
  516. package/vscode/src/vs/workbench/contrib/format/browser/formatActionsMultiple.js +28 -36
  517. package/vscode/src/vs/workbench/contrib/format/browser/formatActionsNone.js +5 -6
  518. package/vscode/src/vs/workbench/contrib/format/browser/formatModified.js +2 -3
  519. package/vscode/src/vs/workbench/contrib/inlayHints/browser/inlayHintsAccessibilty.js +5 -10
  520. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatActions.js +23 -25
  521. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatContentWidget.js +20 -6
  522. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatController.js +26 -88
  523. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionServiceImpl.js +2 -34
  524. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatStrategies.js +7 -8
  525. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatWidget.js +13 -33
  526. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatZoneWidget.js +2 -3
  527. package/vscode/src/vs/workbench/contrib/inlineChat/browser/media/inlineChat.css.js +1 -1
  528. package/vscode/src/vs/workbench/contrib/inlineChat/common/inlineChat.js +51 -91
  529. package/vscode/src/vs/workbench/contrib/issue/common/issue.service.js +2 -1
  530. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/mergeEditorInput.js +2 -3
  531. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/mergeEditorInputModel.js +40 -56
  532. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/model/mergeEditorModel.js +3 -4
  533. package/vscode/src/vs/workbench/contrib/mergeEditor/common/mergeEditor.js +9 -10
  534. package/vscode/src/vs/workbench/contrib/multiDiffEditor/browser/icons.contribution.js +2 -3
  535. package/vscode/src/vs/workbench/contrib/multiDiffEditor/browser/multiDiffEditorInput.js +43 -46
  536. package/vscode/src/vs/workbench/contrib/multiDiffEditor/browser/multiDiffSourceResolverService.js +6 -5
  537. package/vscode/src/vs/workbench/contrib/multiDiffEditor/browser/scmMultiDiffSourceResolver.js +3 -4
  538. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/cellStatusBar/executionStatusBarItemController.js +8 -14
  539. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/notebookFindReplaceWidget.js +18 -19
  540. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/notebookFindWidget.js +4 -5
  541. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/cellOperations.js +3 -4
  542. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/cellOutputActions.js +30 -5
  543. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/notebookChatContext.js +7 -13
  544. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/notebookChatController.js +16 -6
  545. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/coreActions.js +9 -11
  546. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/foldingController.js +4 -5
  547. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookAccessibilityProvider.js +5 -7
  548. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookEditor.js +13 -18
  549. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookEditorWidget.js +29 -54
  550. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookIcons.js +29 -30
  551. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellPart.js +1 -1
  552. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellComments.js +11 -18
  553. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellEditorOptions.js +5 -6
  554. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellOutput.js +54 -24
  555. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/codeCell.js +3 -9
  556. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/codeCellExecutionIcon.js +5 -6
  557. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/codeCellRunToolbar.js +2 -3
  558. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/collapsedCellOutput.js +4 -10
  559. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/foldedCellHint.js +3 -4
  560. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/markupCell.js +3 -9
  561. package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/backLayerWebView.js +5 -6
  562. package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/cellRenderer.js +2 -3
  563. package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/webviewPreloads.js +22 -13
  564. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/baseCellViewModel.js +8 -0
  565. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/cellOutputViewModel.js +17 -0
  566. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/codeCellViewModel.js +13 -25
  567. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/markupCellViewModel.js +51 -43
  568. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookEditorStickyScroll.js +2 -2
  569. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookKernelQuickPickStrategy.js +18 -26
  570. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookKernelView.js +3 -4
  571. package/vscode/src/vs/workbench/contrib/notebook/common/notebookContextKeys.js +3 -1
  572. package/vscode/src/vs/workbench/contrib/notebook/common/notebookEditorInput.js +2 -3
  573. package/vscode/src/vs/workbench/contrib/preferences/browser/keybindingWidgets.js +4 -10
  574. package/vscode/src/vs/workbench/contrib/preferences/browser/preferencesIcons.js +14 -24
  575. package/vscode/src/vs/workbench/contrib/preferences/browser/preferencesWidgets.js +12 -12
  576. package/vscode/src/vs/workbench/contrib/preferences/browser/settingsLayout.js +50 -51
  577. package/vscode/src/vs/workbench/contrib/preferences/browser/settingsTreeModels.js +3 -2
  578. package/vscode/src/vs/workbench/contrib/preferences/common/settingsEditorColorRegistry.js +24 -31
  579. package/vscode/src/vs/workbench/contrib/remote/browser/remoteExplorer.js +27 -39
  580. package/vscode/src/vs/workbench/contrib/remote/browser/remoteIcons.js +18 -23
  581. package/vscode/src/vs/workbench/contrib/remote/browser/tunnelView.js +68 -80
  582. package/vscode/src/vs/workbench/contrib/scm/browser/dirtyDiffSwitcher.js +3 -4
  583. package/vscode/src/vs/workbench/contrib/scm/browser/dirtydiffDecorator.js +26 -57
  584. package/vscode/src/vs/workbench/contrib/search/browser/anythingQuickAccess.js +11 -12
  585. package/vscode/src/vs/workbench/contrib/search/browser/searchActionsBase.js +2 -3
  586. package/vscode/src/vs/workbench/contrib/search/browser/searchActionsFind.js +14 -16
  587. package/vscode/src/vs/workbench/contrib/search/browser/searchModel.js +1 -1
  588. package/vscode/src/vs/workbench/contrib/search/browser/symbolsQuickAccess.js +3 -4
  589. package/vscode/src/vs/workbench/contrib/snippets/browser/commands/abstractSnippetsActions.js +2 -3
  590. package/vscode/src/vs/workbench/contrib/snippets/browser/commands/fileTemplateSnippets.js +3 -4
  591. package/vscode/src/vs/workbench/contrib/snippets/browser/snippetCompletionProvider.js +5 -19
  592. package/vscode/src/vs/workbench/contrib/snippets/browser/snippetsFile.js +4 -5
  593. package/vscode/src/vs/workbench/contrib/snippets/browser/snippetsService.js +17 -29
  594. package/vscode/src/vs/workbench/contrib/speech/common/speechService.js +30 -31
  595. package/vscode/src/vs/workbench/contrib/tasks/common/taskDefinitionRegistry.js +9 -13
  596. package/vscode/src/vs/workbench/contrib/tasks/common/taskService.js +9 -13
  597. package/vscode/src/vs/workbench/contrib/tasks/common/tasks.js +5 -7
  598. package/vscode/src/vs/workbench/contrib/terminal/browser/terminal.d.ts +5 -0
  599. package/vscode/src/vs/workbench/contrib/terminal/browser/terminal.service.d.ts +1 -0
  600. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalEditorInput.js +5 -14
  601. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalMenus.js +33 -34
  602. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/xtermTerminal.d.ts +2 -0
  603. package/vscode/src/vs/workbench/contrib/terminal/common/terminal.d.ts +1 -1
  604. package/vscode/src/vs/workbench/contrib/terminal/common/terminal.js +9 -15
  605. package/vscode/src/vs/workbench/contrib/terminal/common/terminalColorRegistry.js +37 -51
  606. package/vscode/src/vs/workbench/contrib/terminal/common/terminalContextKey.js +21 -37
  607. package/vscode/src/vs/workbench/contrib/terminal/common/terminalStrings.js +29 -34
  608. package/vscode/src/vs/workbench/contrib/terminalContrib/suggest/common/terminal.suggest.js +4 -0
  609. package/vscode/src/vs/workbench/contrib/testing/common/constants.js +16 -13
  610. package/vscode/src/vs/workbench/contrib/testing/common/testId.js +1 -1
  611. package/vscode/src/vs/workbench/contrib/testing/common/testResult.js +6 -7
  612. package/vscode/src/vs/workbench/contrib/testing/common/testTypes.d.ts +23 -1
  613. package/vscode/src/vs/workbench/contrib/testing/common/testTypes.js +23 -1
  614. package/vscode/src/vs/workbench/contrib/url/browser/trustedDomains.js +7 -8
  615. package/vscode/src/vs/workbench/contrib/webview/browser/webview.contribution.js +4 -5
  616. package/vscode/src/vs/workbench/contrib/webview/browser/webviewWindowDragMonitor.js +21 -2
  617. package/vscode/src/vs/workbench/contrib/webviewPanel/browser/webviewEditor.js +2 -3
  618. package/vscode/src/vs/workbench/contrib/workspace/common/workspace.js +3 -8
  619. package/vscode/src/vs/workbench/services/authentication/browser/authenticationService.js +17 -11
  620. package/vscode/src/vs/workbench/services/auxiliaryWindow/browser/auxiliaryWindowService.js +23 -25
  621. package/vscode/src/vs/workbench/services/configurationResolver/common/configurationResolverSchema.js +21 -34
  622. package/vscode/src/vs/workbench/services/configurationResolver/common/configurationResolverUtils.js +3 -5
  623. package/vscode/src/vs/workbench/services/configurationResolver/common/variableResolver.js +35 -53
  624. package/vscode/src/vs/workbench/services/editor/common/editorResolverService.js +3 -5
  625. package/vscode/src/vs/workbench/services/extensionManagement/common/extensionManagement.js +2 -3
  626. package/vscode/src/vs/workbench/services/extensionRecommendations/common/workspaceExtensionsConfig.js +7 -8
  627. package/vscode/src/vs/workbench/services/extensions/common/extensionsRegistry.js +145 -236
  628. package/vscode/src/vs/workbench/services/filesConfiguration/common/filesConfigurationService.js +14 -19
  629. package/vscode/src/vs/workbench/services/language/common/languageService.js +40 -57
  630. package/vscode/src/vs/workbench/services/layout/browser/layoutService.d.ts +2 -1
  631. package/vscode/src/vs/workbench/services/layout/browser/layoutService.js +8 -2
  632. package/vscode/src/vs/workbench/services/lifecycle/common/lifecycle.d.ts +34 -4
  633. package/vscode/src/vs/workbench/services/lifecycle/common/lifecycle.js +6 -1
  634. package/vscode/src/vs/workbench/services/lifecycle/common/lifecycleService.js +3 -3
  635. package/vscode/src/vs/workbench/services/preferences/browser/keybindingsEditorInput.js +3 -4
  636. package/vscode/src/vs/workbench/services/preferences/browser/keybindingsEditorModel.js +8 -9
  637. package/vscode/src/vs/workbench/services/preferences/common/preferences.d.ts +1 -3
  638. package/vscode/src/vs/workbench/services/preferences/common/preferences.js +2 -1
  639. package/vscode/src/vs/workbench/services/preferences/common/preferences.service.d.ts +5 -2
  640. package/vscode/src/vs/workbench/services/preferences/common/preferencesEditorInput.js +3 -4
  641. package/vscode/src/vs/workbench/services/preferences/common/preferencesModels.d.ts +5 -3
  642. package/vscode/src/vs/workbench/services/remote/common/remoteAgentService.d.ts +1 -0
  643. package/vscode/src/vs/workbench/services/remote/common/remoteAgentService.service.d.ts +4 -0
  644. package/vscode/src/vs/workbench/services/remote/common/remoteExplorerService.js +14 -20
  645. package/vscode/src/vs/workbench/services/remote/common/tunnelModel.js +9 -9
  646. package/vscode/src/vs/workbench/services/search/common/queryBuilder.js +2 -8
  647. package/vscode/src/vs/workbench/services/search/common/search.js +1 -1
  648. package/vscode/src/vs/workbench/services/search/common/searchExtTypes.js +41 -1
  649. package/vscode/src/vs/workbench/services/textMate/common/TMGrammars.js +12 -27
  650. package/vscode/src/vs/workbench/services/textfile/common/textFileEditorModel.js +4 -5
  651. package/vscode/src/vs/workbench/services/themes/common/colorExtensionPoint.js +34 -50
  652. package/vscode/src/vs/workbench/services/themes/common/iconExtensionPoint.js +22 -31
  653. package/vscode/src/vs/workbench/services/untitled/common/untitledTextEditorModel.js +1 -1
  654. package/vscode/src/vs/workbench/services/userDataProfile/common/userDataProfile.js +4 -5
  655. package/vscode/src/vs/workbench/services/userDataProfile/common/userDataProfileIcons.js +2 -3
  656. package/vscode/src/vs/workbench/services/userDataSync/common/userDataSync.js +12 -13
  657. package/vscode/src/vs/workbench/services/views/browser/viewsService.js +8 -9
  658. package/vscode/src/vs/workbench/services/workingCopy/common/storedFileWorkingCopy.js +25 -33
  659. package/vscode-dts/vscode.proposed.aiTextSearchProviderNew.d.ts +119 -0
  660. package/vscode-dts/vscode.proposed.chatParticipantAdditions.d.ts +61 -3
  661. package/vscode-dts/vscode.proposed.chatParticipantPrivate.d.ts +26 -0
  662. package/vscode-dts/vscode.proposed.commentReveal.d.ts +21 -8
  663. package/vscode-dts/vscode.proposed.commentThreadApplicability.d.ts +0 -2
  664. package/vscode-dts/vscode.proposed.contribSourceControlHistoryItemChangesMenu.d.ts +7 -0
  665. package/vscode-dts/vscode.proposed.fileComments.d.ts +1 -1
  666. package/vscode-dts/vscode.proposed.fileSearchProviderNew.d.ts +100 -0
  667. package/vscode-dts/vscode.proposed.findFiles2New.d.ts +80 -0
  668. package/vscode-dts/vscode.proposed.findTextInFilesNew.d.ts +143 -0
  669. package/vscode-dts/vscode.proposed.lmTools.d.ts +5 -0
  670. package/vscode-dts/vscode.proposed.quickInputButtonLocation.d.ts +29 -0
  671. package/vscode-dts/vscode.proposed.scmHistoryProvider.d.ts +2 -0
  672. package/vscode-dts/vscode.proposed.testMessageStackTrace.d.ts +38 -0
  673. package/vscode-dts/vscode.proposed.testRelatedCode.d.ts +36 -0
  674. package/vscode-dts/vscode.proposed.textSearchCompleteNew.d.ts +46 -0
  675. package/vscode-dts/vscode.proposed.textSearchProviderNew.d.ts +234 -0
  676. package/vscode/src/vs/editor/browser/widget/multiDiffEditor/model.js +0 -14
  677. package/vscode/src/vs/editor/contrib/inlineEdit/browser/hoverParticipant.js +0 -115
  678. package/vscode/src/vs/platform/issue/common/issue.service.js +0 -3
  679. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/editActions.js +0 -570
  680. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/notebookIndentationActions.js +0 -207
  681. package/vscode/src/vs/workbench/contrib/testing/common/observableValue.js +0 -30
  682. package/vscode/src/vs/workbench/services/preferences/common/preferencesModels.js +0 -1016
  683. package/vscode/src/vs/workbench/services/preferences/common/preferencesValidation.js +0 -390
@@ -1,14 +1,11 @@
1
- import { getActiveElement } from '../../../../base/browser/dom.js';
2
- import { List } from '../../../../base/browser/ui/list/listWidget.js';
3
- import { distinct, coalesce } from '../../../../base/common/arrays.js';
4
1
  import { KeyMod as KeyMod$1, KeyCode, KeyChord } from '../../../../base/common/keyCodes.js';
5
2
  import { matchesScheme, Schemas } from '../../../../base/common/network.js';
6
- import { extname, isEqual } from '../../../../base/common/resources.js';
3
+ import { extname } from '../../../../base/common/resources.js';
7
4
  import { isObject, isString, isUndefined, isNumber } from '../../../../base/common/types.js';
8
5
  import { URI } from '../../../../base/common/uri.js';
9
6
  import { isDiffEditor } from '../../../../editor/browser/editorBrowser.js';
10
7
  import { EditorContextKeys } from '../../../../editor/common/editorContextKeys.js';
11
- import { localizeWithPath, localize2WithPath } from '../../../../nls.js';
8
+ import { localize, localize2 } from '../../../../nls.js';
12
9
  import { Categories } from '../../../../platform/action/common/actionCommonCategories.js';
13
10
  import { registerAction2, Action2 } from '../../../../platform/actions/common/actions.js';
14
11
  import { CommandsRegistry } from '../../../../platform/commands/common/commands.js';
@@ -26,11 +23,11 @@ import { ActiveGroupEditorsByMostRecentlyUsedQuickAccess } from './editorQuickAc
26
23
  import { SideBySideEditor } from './sideBySideEditor.js';
27
24
  import { TextDiffEditor } from './textDiffEditor.js';
28
25
  import { ActiveEditorGroupEmptyContext, MultipleEditorGroupsContext, ActiveEditorCanSplitInGroupContext, SideBySideEditorActiveContext, TextCompareEditorActiveContext, ActiveEditorGroupLockedContext, ActiveEditorStickyContext } from '../../../common/contextkeys.js';
29
- import { EditorInputCapabilities, EditorsOrder, CloseDirection, isEditorInputWithOptionsAndGroup, isEditorCommandsContext, isEditorIdentifier } from '../../../common/editor.js';
26
+ import { EditorInputCapabilities, EditorsOrder, CloseDirection, isEditorInputWithOptionsAndGroup } from '../../../common/editor.js';
30
27
  import { DiffEditorInput } from '../../../common/editor/diffEditorInput.js';
31
28
  import { SideBySideEditorInput } from '../../../common/editor/sideBySideEditorInput.js';
32
29
  import { columnToEditorGroup } from '../../../services/editor/common/editorGroupColumn.js';
33
- import { GroupsOrder, GroupLocation, preferredSideBySideGroupDirection, GroupDirection, isEditorGroup } from '../../../services/editor/common/editorGroupsService.js';
30
+ import { GroupsOrder, GroupLocation, preferredSideBySideGroupDirection, GroupDirection } from '../../../services/editor/common/editorGroupsService.js';
34
31
  import { IEditorGroupsService } from '../../../services/editor/common/editorGroupsService.service.js';
35
32
  import { IEditorResolverService } from '../../../services/editor/common/editorResolverService.service.js';
36
33
  import { SIDE_GROUP } from '../../../services/editor/common/editorService.js';
@@ -38,7 +35,7 @@ import { IEditorService } from '../../../services/editor/common/editorService.se
38
35
  import { IPathService } from '../../../services/path/common/pathService.service.js';
39
36
  import { IUntitledTextEditorService } from '../../../services/untitled/common/untitledTextEditorService.service.js';
40
37
  import { registerDiffEditorCommands, DIFF_FOCUS_SECONDARY_SIDE, DIFF_FOCUS_PRIMARY_SIDE, DIFF_FOCUS_OTHER_SIDE, DIFF_OPEN_SIDE } from './diffEditorCommands.js';
41
- const _moduleId = "vs/workbench/browser/parts/editor/editorCommands";
38
+ import { resolveCommandsContext } from './editorCommandsContext.js';
42
39
  const CLOSE_SAVED_EDITORS_COMMAND_ID = 'workbench.action.closeUnmodifiedEditors';
43
40
  const CLOSE_EDITORS_IN_GROUP_COMMAND_ID = 'workbench.action.closeEditorsInGroup';
44
41
  const CLOSE_EDITORS_AND_GROUP_COMMAND_ID = 'workbench.action.closeEditorsAndGroup';
@@ -132,13 +129,12 @@ function registerActiveEditorMoveCopyCommand() {
132
129
  primary: 0,
133
130
  handler: (accessor, args) => moveCopyActiveEditor(true, args, accessor),
134
131
  metadata: {
135
- description: ( localizeWithPath(_moduleId, 0, "Move the active editor by tabs or groups")),
132
+ description: ( localize(5522, "Move the active editor by tabs or groups")),
136
133
  args: [
137
134
  {
138
- name: ( localizeWithPath(_moduleId, 1, "Active editor move argument")),
139
- description: ( localizeWithPath(
140
- _moduleId,
141
- 2,
135
+ name: ( localize(5523, "Active editor move argument")),
136
+ description: ( localize(
137
+ 5524,
142
138
  "Argument Properties:\n\t* 'to': String value providing where to move.\n\t* 'by': String value providing the unit for move (by tab or by group).\n\t* 'value': Number value providing how many positions or an absolute position to move."
143
139
  )),
144
140
  constraint: isActiveEditorMoveCopyArg,
@@ -154,13 +150,12 @@ function registerActiveEditorMoveCopyCommand() {
154
150
  primary: 0,
155
151
  handler: (accessor, args) => moveCopyActiveEditor(false, args, accessor),
156
152
  metadata: {
157
- description: ( localizeWithPath(_moduleId, 3, "Copy the active editor by groups")),
153
+ description: ( localize(5525, "Copy the active editor by groups")),
158
154
  args: [
159
155
  {
160
- name: ( localizeWithPath(_moduleId, 4, "Active editor copy argument")),
161
- description: ( localizeWithPath(
162
- _moduleId,
163
- 5,
156
+ name: ( localize(5526, "Active editor copy argument")),
157
+ description: ( localize(
158
+ 5527,
164
159
  "Argument Properties:\n\t* 'to': String value providing where to copy.\n\t* 'value': Number value providing how many positions or an absolute position to copy."
165
160
  )),
166
161
  constraint: isActiveEditorMoveCopyArg,
@@ -213,55 +208,55 @@ function registerActiveEditorMoveCopyCommand() {
213
208
  group.moveEditor(control.input, group, { index });
214
209
  }
215
210
  function moveCopyActiveEditorToGroup(isMove, args, control, accessor) {
216
- const editorGroupService = accessor.get(IEditorGroupsService);
211
+ const editorGroupsService = accessor.get(IEditorGroupsService);
217
212
  const configurationService = accessor.get(IConfigurationService);
218
213
  const sourceGroup = control.group;
219
214
  let targetGroup;
220
215
  switch (args.to) {
221
216
  case 'left':
222
- targetGroup = editorGroupService.findGroup({ direction: GroupDirection.LEFT }, sourceGroup);
217
+ targetGroup = editorGroupsService.findGroup({ direction: GroupDirection.LEFT }, sourceGroup);
223
218
  if (!targetGroup) {
224
- targetGroup = editorGroupService.addGroup(sourceGroup, GroupDirection.LEFT);
219
+ targetGroup = editorGroupsService.addGroup(sourceGroup, GroupDirection.LEFT);
225
220
  }
226
221
  break;
227
222
  case 'right':
228
- targetGroup = editorGroupService.findGroup({ direction: GroupDirection.RIGHT }, sourceGroup);
223
+ targetGroup = editorGroupsService.findGroup({ direction: GroupDirection.RIGHT }, sourceGroup);
229
224
  if (!targetGroup) {
230
- targetGroup = editorGroupService.addGroup(sourceGroup, GroupDirection.RIGHT);
225
+ targetGroup = editorGroupsService.addGroup(sourceGroup, GroupDirection.RIGHT);
231
226
  }
232
227
  break;
233
228
  case 'up':
234
- targetGroup = editorGroupService.findGroup({ direction: GroupDirection.UP }, sourceGroup);
229
+ targetGroup = editorGroupsService.findGroup({ direction: GroupDirection.UP }, sourceGroup);
235
230
  if (!targetGroup) {
236
- targetGroup = editorGroupService.addGroup(sourceGroup, GroupDirection.UP);
231
+ targetGroup = editorGroupsService.addGroup(sourceGroup, GroupDirection.UP);
237
232
  }
238
233
  break;
239
234
  case 'down':
240
- targetGroup = editorGroupService.findGroup({ direction: GroupDirection.DOWN }, sourceGroup);
235
+ targetGroup = editorGroupsService.findGroup({ direction: GroupDirection.DOWN }, sourceGroup);
241
236
  if (!targetGroup) {
242
- targetGroup = editorGroupService.addGroup(sourceGroup, GroupDirection.DOWN);
237
+ targetGroup = editorGroupsService.addGroup(sourceGroup, GroupDirection.DOWN);
243
238
  }
244
239
  break;
245
240
  case 'first':
246
- targetGroup = editorGroupService.findGroup({ location: GroupLocation.FIRST }, sourceGroup);
241
+ targetGroup = editorGroupsService.findGroup({ location: GroupLocation.FIRST }, sourceGroup);
247
242
  break;
248
243
  case 'last':
249
- targetGroup = editorGroupService.findGroup({ location: GroupLocation.LAST }, sourceGroup);
244
+ targetGroup = editorGroupsService.findGroup({ location: GroupLocation.LAST }, sourceGroup);
250
245
  break;
251
246
  case 'previous':
252
- targetGroup = editorGroupService.findGroup({ location: GroupLocation.PREVIOUS }, sourceGroup);
247
+ targetGroup = editorGroupsService.findGroup({ location: GroupLocation.PREVIOUS }, sourceGroup);
253
248
  break;
254
249
  case 'next':
255
- targetGroup = editorGroupService.findGroup({ location: GroupLocation.NEXT }, sourceGroup);
250
+ targetGroup = editorGroupsService.findGroup({ location: GroupLocation.NEXT }, sourceGroup);
256
251
  if (!targetGroup) {
257
- targetGroup = editorGroupService.addGroup(sourceGroup, preferredSideBySideGroupDirection(configurationService));
252
+ targetGroup = editorGroupsService.addGroup(sourceGroup, preferredSideBySideGroupDirection(configurationService));
258
253
  }
259
254
  break;
260
255
  case 'center':
261
- targetGroup = editorGroupService.getGroups(GroupsOrder.GRID_APPEARANCE)[(editorGroupService.count / 2) - 1];
256
+ targetGroup = editorGroupsService.getGroups(GroupsOrder.GRID_APPEARANCE)[(editorGroupsService.count / 2) - 1];
262
257
  break;
263
258
  case 'position':
264
- targetGroup = editorGroupService.getGroups(GroupsOrder.GRID_APPEARANCE)[(args.value ?? 1) - 1];
259
+ targetGroup = editorGroupsService.getGroups(GroupsOrder.GRID_APPEARANCE)[(args.value ?? 1) - 1];
265
260
  break;
266
261
  }
267
262
  if (targetGroup) {
@@ -280,8 +275,8 @@ function registerEditorGroupsLayoutCommands() {
280
275
  if (!layout || typeof layout !== 'object') {
281
276
  return;
282
277
  }
283
- const editorGroupService = accessor.get(IEditorGroupsService);
284
- editorGroupService.applyLayout(layout);
278
+ const editorGroupsService = accessor.get(IEditorGroupsService);
279
+ editorGroupsService.applyLayout(layout);
285
280
  }
286
281
  CommandsRegistry.registerCommand(LAYOUT_EDITOR_GROUPS_COMMAND_ID, (accessor, args) => {
287
282
  applyEditorLayout(accessor, args);
@@ -314,8 +309,8 @@ function registerEditorGroupsLayoutCommands() {
314
309
  CommandsRegistry.registerCommand({
315
310
  id: 'vscode.getEditorLayout',
316
311
  handler: (accessor) => {
317
- const editorGroupService = accessor.get(IEditorGroupsService);
318
- return editorGroupService.getLayout();
312
+ const editorGroupsService = accessor.get(IEditorGroupsService);
313
+ return editorGroupsService.getLayout();
319
314
  },
320
315
  metadata: {
321
316
  description: 'Get Editor Layout',
@@ -346,7 +341,7 @@ function registerOpenEditorAPICommands() {
346
341
  });
347
342
  CommandsRegistry.registerCommand(API_OPEN_EDITOR_COMMAND_ID, async function (accessor, resourceArg, columnAndOptions, label, context) {
348
343
  const editorService = accessor.get(IEditorService);
349
- const editorGroupService = accessor.get(IEditorGroupsService);
344
+ const editorGroupsService = accessor.get(IEditorGroupsService);
350
345
  const openerService = accessor.get(IOpenerService);
351
346
  const pathService = accessor.get(IPathService);
352
347
  const configurationService = accessor.get(IConfigurationService);
@@ -363,7 +358,7 @@ function registerOpenEditorAPICommands() {
363
358
  else {
364
359
  input = { resource, options, label };
365
360
  }
366
- await editorService.openEditor(input, columnToEditorGroup(editorGroupService, configurationService, column));
361
+ await editorService.openEditor(input, columnToEditorGroup(editorGroupsService, configurationService, column));
367
362
  }
368
363
  else if (matchesScheme(resourceOrString, Schemas.command)) {
369
364
  return;
@@ -388,7 +383,7 @@ function registerOpenEditorAPICommands() {
388
383
  });
389
384
  CommandsRegistry.registerCommand(API_OPEN_DIFF_EDITOR_COMMAND_ID, async function (accessor, originalResource, modifiedResource, labelAndOrDescription, columnAndOptions, context) {
390
385
  const editorService = accessor.get(IEditorService);
391
- const editorGroupService = accessor.get(IEditorGroupsService);
386
+ const editorGroupsService = accessor.get(IEditorGroupsService);
392
387
  const configurationService = accessor.get(IConfigurationService);
393
388
  const [columnArg, optionsArg] = columnAndOptions ?? [];
394
389
  const [options, column] = mixinContext(context, optionsArg, columnArg);
@@ -407,7 +402,7 @@ function registerOpenEditorAPICommands() {
407
402
  label,
408
403
  description,
409
404
  options
410
- }, columnToEditorGroup(editorGroupService, configurationService, column));
405
+ }, columnToEditorGroup(editorGroupsService, configurationService, column));
411
406
  });
412
407
  CommandsRegistry.registerCommand(API_OPEN_WITH_EDITOR_COMMAND_ID, async (accessor, resource, id, columnAndOptions) => {
413
408
  const editorService = accessor.get(IEditorService);
@@ -501,21 +496,21 @@ function registerFocusEditorGroupAtIndexCommands() {
501
496
  when: undefined,
502
497
  primary: KeyMod$1.CtrlCmd | toKeyCode(groupIndex),
503
498
  handler: accessor => {
504
- const editorGroupService = accessor.get(IEditorGroupsService);
499
+ const editorGroupsService = accessor.get(IEditorGroupsService);
505
500
  const configurationService = accessor.get(IConfigurationService);
506
- if (groupIndex > editorGroupService.count) {
501
+ if (groupIndex > editorGroupsService.count) {
507
502
  return;
508
503
  }
509
- const groups = editorGroupService.getGroups(GroupsOrder.GRID_APPEARANCE);
504
+ const groups = editorGroupsService.getGroups(GroupsOrder.GRID_APPEARANCE);
510
505
  if (groups[groupIndex]) {
511
506
  return groups[groupIndex].focus();
512
507
  }
513
508
  const direction = preferredSideBySideGroupDirection(configurationService);
514
- const lastGroup = editorGroupService.findGroup({ location: GroupLocation.LAST });
509
+ const lastGroup = editorGroupsService.findGroup({ location: GroupLocation.LAST });
515
510
  if (!lastGroup) {
516
511
  return;
517
512
  }
518
- const newGroup = editorGroupService.addGroup(lastGroup, direction);
513
+ const newGroup = editorGroupsService.addGroup(lastGroup, direction);
519
514
  newGroup.focus();
520
515
  }
521
516
  });
@@ -545,41 +540,19 @@ function registerFocusEditorGroupAtIndexCommands() {
545
540
  throw ( (new Error('Invalid index')));
546
541
  }
547
542
  }
548
- function splitEditor(editorGroupService, direction, contexts) {
549
- let newGroup;
550
- let sourceGroup;
551
- for (const context of contexts ?? [undefined]) {
552
- let currentGroup;
553
- if (context) {
554
- currentGroup = editorGroupService.getGroup(context.groupId);
555
- }
556
- else {
557
- currentGroup = editorGroupService.activeGroup;
558
- }
559
- if (!currentGroup) {
560
- continue;
561
- }
562
- if (!sourceGroup) {
563
- sourceGroup = currentGroup;
564
- }
565
- else if (sourceGroup.id !== currentGroup.id) {
566
- continue;
567
- }
568
- if (!newGroup) {
569
- newGroup = editorGroupService.addGroup(currentGroup, direction);
570
- }
571
- let editorToCopy;
572
- if (context && typeof context.editorIndex === 'number') {
573
- editorToCopy = currentGroup.getEditorByIndex(context.editorIndex);
574
- }
575
- else {
576
- editorToCopy = currentGroup.activeEditor ?? undefined;
577
- }
543
+ function splitEditor(editorGroupsService, direction, resolvedContext) {
544
+ if (!resolvedContext.groupedEditors.length) {
545
+ return;
546
+ }
547
+ const { group, editors } = resolvedContext.groupedEditors[0];
548
+ const preserveFocus = resolvedContext.preserveFocus;
549
+ const newGroup = editorGroupsService.addGroup(group, direction);
550
+ for (const editorToCopy of editors) {
578
551
  if (editorToCopy && !editorToCopy.hasCapability(EditorInputCapabilities.Singleton)) {
579
- currentGroup.copyEditor(editorToCopy, newGroup, { preserveFocus: context?.preserveFocus });
552
+ group.copyEditor(editorToCopy, newGroup, { preserveFocus });
580
553
  }
581
554
  }
582
- newGroup?.focus();
555
+ newGroup.focus();
583
556
  }
584
557
  function registerSplitEditorCommands() {
585
558
  [
@@ -588,21 +561,21 @@ function registerSplitEditorCommands() {
588
561
  { id: SPLIT_EDITOR_LEFT, direction: GroupDirection.LEFT },
589
562
  { id: SPLIT_EDITOR_RIGHT, direction: GroupDirection.RIGHT }
590
563
  ].forEach(({ id, direction }) => {
591
- CommandsRegistry.registerCommand(id, function (accessor, resourceOrContext, context) {
592
- const { editors } = getEditorsContext(accessor, resourceOrContext, context);
593
- splitEditor(accessor.get(IEditorGroupsService), direction, editors);
564
+ CommandsRegistry.registerCommand(id, function (accessor, ...args) {
565
+ const resolvedContext = resolveCommandsContext(args, accessor.get(IEditorService), accessor.get(IEditorGroupsService), accessor.get(IListService));
566
+ splitEditor(accessor.get(IEditorGroupsService), direction, resolvedContext);
594
567
  });
595
568
  });
596
569
  }
597
570
  function registerCloseEditorCommands() {
598
- function closeEditorHandler(accessor, forceCloseStickyEditors, resourceOrContext, context) {
571
+ function closeEditorHandler(accessor, forceCloseStickyEditors, ...args) {
599
572
  const editorGroupsService = accessor.get(IEditorGroupsService);
600
573
  const editorService = accessor.get(IEditorService);
601
574
  let keepStickyEditors = undefined;
602
575
  if (forceCloseStickyEditors) {
603
576
  keepStickyEditors = false;
604
577
  }
605
- else if (resourceOrContext || context) {
578
+ else if (args.length) {
606
579
  keepStickyEditors = false;
607
580
  }
608
581
  else {
@@ -622,17 +595,11 @@ function registerCloseEditorCommands() {
622
595
  }
623
596
  }
624
597
  }
625
- const { editors, groups } = getEditorsContext(accessor, resourceOrContext, context);
626
- return Promise.all(( (groups.map(async (group) => {
627
- if (group) {
628
- const editorsToClose = coalesce(( (editors
629
- .filter(editor => editor.groupId === group.id)
630
- .map(
631
- editor => typeof editor.editorIndex === 'number' ? group.getEditorByIndex(editor.editorIndex) : group.activeEditor
632
- ))))
633
- .filter(editor => !keepStickyEditors || !group.isSticky(editor));
634
- await group.closeEditors(editorsToClose, { preserveFocus: context?.preserveFocus });
635
- }
598
+ const resolvedContext = resolveCommandsContext(args, accessor.get(IEditorService), accessor.get(IEditorGroupsService), accessor.get(IListService));
599
+ const preserveFocus = resolvedContext.preserveFocus;
600
+ return Promise.all(( (resolvedContext.groupedEditors.map(async ({ group, editors }) => {
601
+ const editorsToClose = editors.filter(editor => !keepStickyEditors || !group.isSticky(editor));
602
+ await group.closeEditors(editorsToClose, { preserveFocus });
636
603
  }))));
637
604
  }
638
605
  KeybindingsRegistry.registerCommandAndKeybindingRule({
@@ -641,24 +608,22 @@ function registerCloseEditorCommands() {
641
608
  when: undefined,
642
609
  primary: KeyMod$1.CtrlCmd | KeyCode.KeyW,
643
610
  win: { primary: KeyMod$1.CtrlCmd | KeyCode.F4, secondary: [KeyMod$1.CtrlCmd | KeyCode.KeyW] },
644
- handler: (accessor, resourceOrContext, context) => {
645
- return closeEditorHandler(accessor, false, resourceOrContext, context);
611
+ handler: (accessor, ...args) => {
612
+ return closeEditorHandler(accessor, false, ...args);
646
613
  }
647
614
  });
648
- CommandsRegistry.registerCommand(CLOSE_PINNED_EDITOR_COMMAND_ID, (accessor, resourceOrContext, context) => {
649
- return closeEditorHandler(accessor, true , resourceOrContext, context);
615
+ CommandsRegistry.registerCommand(CLOSE_PINNED_EDITOR_COMMAND_ID, (accessor, ...args) => {
616
+ return closeEditorHandler(accessor, true , ...args);
650
617
  });
651
618
  KeybindingsRegistry.registerCommandAndKeybindingRule({
652
619
  id: CLOSE_EDITORS_IN_GROUP_COMMAND_ID,
653
620
  weight: KeybindingWeight.WorkbenchContrib,
654
621
  when: undefined,
655
622
  primary: KeyChord(KeyMod$1.CtrlCmd | KeyCode.KeyK, KeyCode.KeyW),
656
- handler: (accessor, resourceOrContext, context) => {
657
- return Promise.all(( (getEditorsContext(accessor, resourceOrContext, context).groups.map(async (group) => {
658
- if (group) {
659
- await group.closeAllEditors({ excludeSticky: true });
660
- return;
661
- }
623
+ handler: (accessor, ...args) => {
624
+ const resolvedContext = resolveCommandsContext(args, accessor.get(IEditorService), accessor.get(IEditorGroupsService), accessor.get(IListService));
625
+ return Promise.all(( (resolvedContext.groupedEditors.map(async ({ group }) => {
626
+ await group.closeAllEditors({ excludeSticky: true });
662
627
  }))));
663
628
  }
664
629
  });
@@ -668,18 +633,11 @@ function registerCloseEditorCommands() {
668
633
  when: ( (ContextKeyExpr.and(ActiveEditorGroupEmptyContext, MultipleEditorGroupsContext))),
669
634
  primary: KeyMod$1.CtrlCmd | KeyCode.KeyW,
670
635
  win: { primary: KeyMod$1.CtrlCmd | KeyCode.F4, secondary: [KeyMod$1.CtrlCmd | KeyCode.KeyW] },
671
- handler: (accessor, resourceOrContext, context) => {
672
- const editorGroupService = accessor.get(IEditorGroupsService);
673
- const commandsContext = getCommandsContext(accessor, resourceOrContext, context);
674
- let group;
675
- if (commandsContext && typeof commandsContext.groupId === 'number') {
676
- group = editorGroupService.getGroup(commandsContext.groupId);
677
- }
678
- else {
679
- group = editorGroupService.activeGroup;
680
- }
681
- if (group) {
682
- editorGroupService.removeGroup(group);
636
+ handler: (accessor, ...args) => {
637
+ const editorGroupsService = accessor.get(IEditorGroupsService);
638
+ const commandsContext = resolveCommandsContext(args, accessor.get(IEditorService), editorGroupsService, accessor.get(IListService));
639
+ if (commandsContext.groupedEditors.length) {
640
+ editorGroupsService.removeGroup(commandsContext.groupedEditors[0].group);
683
641
  }
684
642
  }
685
643
  });
@@ -688,11 +646,10 @@ function registerCloseEditorCommands() {
688
646
  weight: KeybindingWeight.WorkbenchContrib,
689
647
  when: undefined,
690
648
  primary: KeyChord(KeyMod$1.CtrlCmd | KeyCode.KeyK, KeyCode.KeyU),
691
- handler: (accessor, resourceOrContext, context) => {
692
- return Promise.all(( (getEditorsContext(accessor, resourceOrContext, context).groups.map(async (group) => {
693
- if (group) {
694
- await group.closeEditors({ savedOnly: true, excludeSticky: true }, { preserveFocus: context?.preserveFocus });
695
- }
649
+ handler: (accessor, ...args) => {
650
+ const resolvedContext = resolveCommandsContext(args, accessor.get(IEditorService), accessor.get(IEditorGroupsService), accessor.get(IListService));
651
+ return Promise.all(( (resolvedContext.groupedEditors.map(async ({ group }) => {
652
+ await group.closeEditors({ savedOnly: true, excludeSticky: true }, { preserveFocus: resolvedContext.preserveFocus });
696
653
  }))));
697
654
  }
698
655
  });
@@ -702,23 +659,16 @@ function registerCloseEditorCommands() {
702
659
  when: undefined,
703
660
  primary: undefined,
704
661
  mac: { primary: KeyMod$1.CtrlCmd | KeyMod$1.Alt | KeyCode.KeyT },
705
- handler: (accessor, resourceOrContext, context) => {
706
- const { editors, groups } = getEditorsContext(accessor, resourceOrContext, context);
707
- return Promise.all(( (groups.map(async (group) => {
708
- if (group) {
709
- const editorsToKeep = ( (editors
710
- .filter(editor => editor.groupId === group.id)
711
- .map(
712
- editor => typeof editor.editorIndex === 'number' ? group.getEditorByIndex(editor.editorIndex) : group.activeEditor
713
- )));
714
- const editorsToClose = group.getEditors(EditorsOrder.SEQUENTIAL, { excludeSticky: true }).filter(editor => !editorsToKeep.includes(editor));
715
- for (const editorToKeep of editorsToKeep) {
716
- if (editorToKeep) {
717
- group.pinEditor(editorToKeep);
718
- }
662
+ handler: (accessor, ...args) => {
663
+ const resolvedContext = resolveCommandsContext(args, accessor.get(IEditorService), accessor.get(IEditorGroupsService), accessor.get(IListService));
664
+ return Promise.all(( (resolvedContext.groupedEditors.map(async ({ group, editors }) => {
665
+ const editorsToClose = group.getEditors(EditorsOrder.SEQUENTIAL, { excludeSticky: true }).filter(editor => !editors.includes(editor));
666
+ for (const editorToKeep of editors) {
667
+ if (editorToKeep) {
668
+ group.pinEditor(editorToKeep);
719
669
  }
720
- await group.closeEditors(editorsToClose, { preserveFocus: context?.preserveFocus });
721
670
  }
671
+ await group.closeEditors(editorsToClose, { preserveFocus: resolvedContext.preserveFocus });
722
672
  }))));
723
673
  }
724
674
  });
@@ -727,14 +677,14 @@ function registerCloseEditorCommands() {
727
677
  weight: KeybindingWeight.WorkbenchContrib,
728
678
  when: undefined,
729
679
  primary: undefined,
730
- handler: async (accessor, resourceOrContext, context) => {
731
- const editorGroupService = accessor.get(IEditorGroupsService);
732
- const { group, editor } = resolveCommandsContext(editorGroupService, getCommandsContext(accessor, resourceOrContext, context));
733
- if (group && editor) {
680
+ handler: async (accessor, ...args) => {
681
+ const resolvedContext = resolveCommandsContext(args, accessor.get(IEditorService), accessor.get(IEditorGroupsService), accessor.get(IListService));
682
+ if (resolvedContext.groupedEditors.length) {
683
+ const { group, editors } = resolvedContext.groupedEditors[0];
734
684
  if (group.activeEditor) {
735
685
  group.pinEditor(group.activeEditor);
736
686
  }
737
- await group.closeEditors({ direction: CloseDirection.RIGHT, except: editor, excludeSticky: true }, { preserveFocus: context?.preserveFocus });
687
+ await group.closeEditors({ direction: CloseDirection.RIGHT, except: editors[0], excludeSticky: true }, { preserveFocus: resolvedContext.preserveFocus });
738
688
  }
739
689
  }
740
690
  });
@@ -743,39 +693,41 @@ function registerCloseEditorCommands() {
743
693
  weight: KeybindingWeight.WorkbenchContrib,
744
694
  when: undefined,
745
695
  primary: undefined,
746
- handler: async (accessor, resourceOrContext, context) => {
696
+ handler: async (accessor, ...args) => {
747
697
  const editorService = accessor.get(IEditorService);
748
698
  const editorResolverService = accessor.get(IEditorResolverService);
749
699
  const telemetryService = accessor.get(ITelemetryService);
750
- const editorsAndGroup = resolveEditorsContext(getEditorsContext(accessor, resourceOrContext, context));
700
+ const resolvedContext = resolveCommandsContext(args, editorService, accessor.get(IEditorGroupsService), accessor.get(IListService));
751
701
  const editorReplacements = ( (new Map()));
752
- for (const { editor, group } of editorsAndGroup) {
753
- const untypedEditor = editor.toUntyped();
754
- if (!untypedEditor) {
755
- return;
756
- }
757
- untypedEditor.options = { ...editorService.activeEditorPane?.options, override: EditorResolution.PICK };
758
- const resolvedEditor = await editorResolverService.resolveEditor(untypedEditor, group);
759
- if (!isEditorInputWithOptionsAndGroup(resolvedEditor)) {
760
- return;
761
- }
762
- let editorReplacementsInGroup = editorReplacements.get(group);
763
- if (!editorReplacementsInGroup) {
764
- editorReplacementsInGroup = [];
765
- editorReplacements.set(group, editorReplacementsInGroup);
702
+ for (const { group, editors } of resolvedContext.groupedEditors) {
703
+ for (const editor of editors) {
704
+ const untypedEditor = editor.toUntyped();
705
+ if (!untypedEditor) {
706
+ return;
707
+ }
708
+ untypedEditor.options = { ...editorService.activeEditorPane?.options, override: EditorResolution.PICK };
709
+ const resolvedEditor = await editorResolverService.resolveEditor(untypedEditor, group);
710
+ if (!isEditorInputWithOptionsAndGroup(resolvedEditor)) {
711
+ return;
712
+ }
713
+ let editorReplacementsInGroup = editorReplacements.get(group);
714
+ if (!editorReplacementsInGroup) {
715
+ editorReplacementsInGroup = [];
716
+ editorReplacements.set(group, editorReplacementsInGroup);
717
+ }
718
+ editorReplacementsInGroup.push({
719
+ editor: editor,
720
+ replacement: resolvedEditor.editor,
721
+ forceReplaceDirty: editor.resource?.scheme === Schemas.untitled,
722
+ options: resolvedEditor.options
723
+ });
724
+ telemetryService.publicLog2('workbenchEditorReopen', {
725
+ scheme: editor.resource?.scheme ?? '',
726
+ ext: editor.resource ? extname(editor.resource) : '',
727
+ from: editor.editorId ?? '',
728
+ to: resolvedEditor.editor.editorId ?? ''
729
+ });
766
730
  }
767
- editorReplacementsInGroup.push({
768
- editor: editor,
769
- replacement: resolvedEditor.editor,
770
- forceReplaceDirty: editor.resource?.scheme === Schemas.untitled,
771
- options: resolvedEditor.options
772
- });
773
- telemetryService.publicLog2('workbenchEditorReopen', {
774
- scheme: editor.resource?.scheme ?? '',
775
- ext: editor.resource ? extname(editor.resource) : '',
776
- from: editor.editorId ?? '',
777
- to: resolvedEditor.editor.editorId ?? ''
778
- });
779
731
  }
780
732
  for (const [group, replacements] of editorReplacements) {
781
733
  await group.replaceEditors(replacements);
@@ -783,13 +735,14 @@ function registerCloseEditorCommands() {
783
735
  }
784
736
  }
785
737
  });
786
- CommandsRegistry.registerCommand(CLOSE_EDITORS_AND_GROUP_COMMAND_ID, async (accessor, resourceOrContext, context) => {
787
- const editorGroupService = accessor.get(IEditorGroupsService);
788
- const { group } = resolveCommandsContext(editorGroupService, getCommandsContext(accessor, resourceOrContext, context));
789
- if (group) {
738
+ CommandsRegistry.registerCommand(CLOSE_EDITORS_AND_GROUP_COMMAND_ID, async (accessor, ...args) => {
739
+ const editorGroupsService = accessor.get(IEditorGroupsService);
740
+ const resolvedContext = resolveCommandsContext(args, accessor.get(IEditorService), editorGroupsService, accessor.get(IListService));
741
+ if (resolvedContext.groupedEditors.length) {
742
+ const { group } = resolvedContext.groupedEditors[0];
790
743
  await group.closeAllEditors();
791
- if (group.count === 0 && editorGroupService.getGroup(group.id) ) {
792
- editorGroupService.removeGroup(group);
744
+ if (group.count === 0 && editorGroupsService.getGroup(group.id) ) {
745
+ editorGroupsService.removeGroup(group);
793
746
  }
794
747
  }
795
748
  });
@@ -815,17 +768,20 @@ function registerFocusEditorGroupWihoutWrapCommands() {
815
768
  ];
816
769
  for (const command of commands) {
817
770
  CommandsRegistry.registerCommand(command.id, async (accessor) => {
818
- const editorGroupService = accessor.get(IEditorGroupsService);
819
- const group = editorGroupService.findGroup({ direction: command.direction }, editorGroupService.activeGroup, false);
771
+ const editorGroupsService = accessor.get(IEditorGroupsService);
772
+ const group = editorGroupsService.findGroup({ direction: command.direction }, editorGroupsService.activeGroup, false);
820
773
  group?.focus();
821
774
  });
822
775
  }
823
776
  }
824
777
  function registerSplitEditorInGroupCommands() {
825
- async function splitEditorInGroup(accessor, resourceOrContext, context) {
826
- const editorGroupService = accessor.get(IEditorGroupsService);
778
+ async function splitEditorInGroup(accessor, resolvedContext) {
827
779
  const instantiationService = accessor.get(IInstantiationService);
828
- const { group, editor } = resolveCommandsContext(editorGroupService, getCommandsContext(accessor, resourceOrContext, context));
780
+ if (!resolvedContext.groupedEditors.length) {
781
+ return;
782
+ }
783
+ const { group, editors } = resolvedContext.groupedEditors[0];
784
+ const editor = editors[0];
829
785
  if (!editor) {
830
786
  return;
831
787
  }
@@ -839,7 +795,7 @@ function registerSplitEditorInGroupCommands() {
839
795
  constructor() {
840
796
  super({
841
797
  id: SPLIT_EDITOR_IN_GROUP,
842
- title: ( localize2WithPath(_moduleId, 6, 'Split Editor in Group')),
798
+ title: ( localize2(5528, 'Split Editor in Group')),
843
799
  category: Categories.View,
844
800
  precondition: ActiveEditorCanSplitInGroupContext,
845
801
  f1: true,
@@ -850,13 +806,19 @@ function registerSplitEditorInGroupCommands() {
850
806
  }
851
807
  });
852
808
  }
853
- run(accessor, resourceOrContext, context) {
854
- return splitEditorInGroup(accessor, resourceOrContext, context);
809
+ run(accessor, ...args) {
810
+ return splitEditorInGroup(accessor, resolveCommandsContext(args, accessor.get(IEditorService), accessor.get(IEditorGroupsService), accessor.get(IListService)));
855
811
  }
856
812
  });
857
- async function joinEditorInGroup(accessor, resourceOrContext, context) {
858
- const editorGroupService = accessor.get(IEditorGroupsService);
859
- const { group, editor } = resolveCommandsContext(editorGroupService, getCommandsContext(accessor, resourceOrContext, context));
813
+ async function joinEditorInGroup(resolvedContext) {
814
+ if (!resolvedContext.groupedEditors.length) {
815
+ return;
816
+ }
817
+ const { group, editors } = resolvedContext.groupedEditors[0];
818
+ const editor = editors[0];
819
+ if (!editor) {
820
+ return;
821
+ }
860
822
  if (!(editor instanceof SideBySideEditorInput)) {
861
823
  return;
862
824
  }
@@ -880,7 +842,7 @@ function registerSplitEditorInGroupCommands() {
880
842
  constructor() {
881
843
  super({
882
844
  id: JOIN_EDITOR_IN_GROUP,
883
- title: ( localize2WithPath(_moduleId, 7, 'Join Editor in Group')),
845
+ title: ( localize2(5529, 'Join Editor in Group')),
884
846
  category: Categories.View,
885
847
  precondition: SideBySideEditorActiveContext,
886
848
  f1: true,
@@ -891,28 +853,31 @@ function registerSplitEditorInGroupCommands() {
891
853
  }
892
854
  });
893
855
  }
894
- run(accessor, resourceOrContext, context) {
895
- return joinEditorInGroup(accessor, resourceOrContext, context);
856
+ run(accessor, ...args) {
857
+ return joinEditorInGroup(resolveCommandsContext(args, accessor.get(IEditorService), accessor.get(IEditorGroupsService), accessor.get(IListService)));
896
858
  }
897
859
  });
898
860
  registerAction2(class extends Action2 {
899
861
  constructor() {
900
862
  super({
901
863
  id: TOGGLE_SPLIT_EDITOR_IN_GROUP,
902
- title: ( localize2WithPath(_moduleId, 8, 'Toggle Split Editor in Group')),
864
+ title: ( localize2(5530, 'Toggle Split Editor in Group')),
903
865
  category: Categories.View,
904
866
  precondition: ( (ContextKeyExpr.or(ActiveEditorCanSplitInGroupContext, SideBySideEditorActiveContext))),
905
867
  f1: true
906
868
  });
907
869
  }
908
- async run(accessor, resourceOrContext, context) {
909
- const editorGroupService = accessor.get(IEditorGroupsService);
910
- const { editor } = resolveCommandsContext(editorGroupService, getCommandsContext(accessor, resourceOrContext, context));
911
- if (editor instanceof SideBySideEditorInput) {
912
- await joinEditorInGroup(accessor, resourceOrContext, context);
870
+ async run(accessor, ...args) {
871
+ const resolvedContext = resolveCommandsContext(args, accessor.get(IEditorService), accessor.get(IEditorGroupsService), accessor.get(IListService));
872
+ if (!resolvedContext.groupedEditors.length) {
873
+ return;
913
874
  }
914
- else if (editor) {
915
- await splitEditorInGroup(accessor, resourceOrContext, context);
875
+ const { editors } = resolvedContext.groupedEditors[0];
876
+ if (editors[0] instanceof SideBySideEditorInput) {
877
+ await joinEditorInGroup(resolvedContext);
878
+ }
879
+ else if (editors[0]) {
880
+ await splitEditorInGroup(accessor, resolvedContext);
916
881
  }
917
882
  }
918
883
  });
@@ -920,7 +885,7 @@ function registerSplitEditorInGroupCommands() {
920
885
  constructor() {
921
886
  super({
922
887
  id: TOGGLE_SPLIT_EDITOR_IN_GROUP_LAYOUT,
923
- title: ( localize2WithPath(_moduleId, 9, 'Toggle Layout of Split Editor in Group')),
888
+ title: ( localize2(5531, 'Toggle Layout of Split Editor in Group')),
924
889
  category: Categories.View,
925
890
  precondition: SideBySideEditorActiveContext,
926
891
  f1: true
@@ -945,7 +910,7 @@ function registerFocusSideEditorsCommands() {
945
910
  constructor() {
946
911
  super({
947
912
  id: FOCUS_FIRST_SIDE_EDITOR,
948
- title: ( localize2WithPath(_moduleId, 10, 'Focus First Side in Active Editor')),
913
+ title: ( localize2(5532, 'Focus First Side in Active Editor')),
949
914
  category: Categories.View,
950
915
  precondition: ( (ContextKeyExpr.or(SideBySideEditorActiveContext, TextCompareEditorActiveContext))),
951
916
  f1: true
@@ -967,7 +932,7 @@ function registerFocusSideEditorsCommands() {
967
932
  constructor() {
968
933
  super({
969
934
  id: FOCUS_SECOND_SIDE_EDITOR,
970
- title: ( localize2WithPath(_moduleId, 11, 'Focus Second Side in Active Editor')),
935
+ title: ( localize2(5533, 'Focus Second Side in Active Editor')),
971
936
  category: Categories.View,
972
937
  precondition: ( (ContextKeyExpr.or(SideBySideEditorActiveContext, TextCompareEditorActiveContext))),
973
938
  f1: true
@@ -989,7 +954,7 @@ function registerFocusSideEditorsCommands() {
989
954
  constructor() {
990
955
  super({
991
956
  id: FOCUS_OTHER_SIDE_EDITOR,
992
- title: ( localize2WithPath(_moduleId, 12, 'Focus Other Side in Active Editor')),
957
+ title: ( localize2(5534, 'Focus Other Side in Active Editor')),
993
958
  category: Categories.View,
994
959
  precondition: ( (ContextKeyExpr.or(SideBySideEditorActiveContext, TextCompareEditorActiveContext))),
995
960
  f1: true
@@ -1019,11 +984,12 @@ function registerOtherEditorCommands() {
1019
984
  weight: KeybindingWeight.WorkbenchContrib,
1020
985
  when: undefined,
1021
986
  primary: KeyChord(KeyMod$1.CtrlCmd | KeyCode.KeyK, KeyCode.Enter),
1022
- handler: async (accessor, resourceOrContext, context) => {
1023
- const editorGroupService = accessor.get(IEditorGroupsService);
1024
- const { group, editor } = resolveCommandsContext(editorGroupService, getCommandsContext(accessor, resourceOrContext, context));
1025
- if (group && editor) {
1026
- return group.pinEditor(editor);
987
+ handler: async (accessor, ...args) => {
988
+ const resolvedContext = resolveCommandsContext(args, accessor.get(IEditorService), accessor.get(IEditorGroupsService), accessor.get(IListService));
989
+ for (const { group, editors } of resolvedContext.groupedEditors) {
990
+ for (const editor of editors) {
991
+ group.pinEditor(editor);
992
+ }
1027
993
  }
1028
994
  }
1029
995
  });
@@ -1036,50 +1002,50 @@ function registerOtherEditorCommands() {
1036
1002
  configurationService.updateValue('workbench.editor.enablePreview', newSetting);
1037
1003
  }
1038
1004
  });
1039
- function setEditorGroupLock(accessor, resourceOrContext, context, locked) {
1040
- const editorGroupService = accessor.get(IEditorGroupsService);
1041
- const { group } = resolveCommandsContext(editorGroupService, getCommandsContext(accessor, resourceOrContext, context));
1005
+ function setEditorGroupLock(accessor, locked, ...args) {
1006
+ const resolvedContext = resolveCommandsContext(args, accessor.get(IEditorService), accessor.get(IEditorGroupsService), accessor.get(IListService));
1007
+ const group = resolvedContext.groupedEditors[0]?.group;
1042
1008
  group?.lock(locked ?? !group.isLocked);
1043
1009
  }
1044
1010
  registerAction2(class extends Action2 {
1045
1011
  constructor() {
1046
1012
  super({
1047
1013
  id: TOGGLE_LOCK_GROUP_COMMAND_ID,
1048
- title: ( localize2WithPath(_moduleId, 13, 'Toggle Editor Group Lock')),
1014
+ title: ( localize2(5535, 'Toggle Editor Group Lock')),
1049
1015
  category: Categories.View,
1050
1016
  f1: true
1051
1017
  });
1052
1018
  }
1053
- async run(accessor, resourceOrContext, context) {
1054
- setEditorGroupLock(accessor, resourceOrContext, context);
1019
+ async run(accessor, ...args) {
1020
+ setEditorGroupLock(accessor, undefined, ...args);
1055
1021
  }
1056
1022
  });
1057
1023
  registerAction2(class extends Action2 {
1058
1024
  constructor() {
1059
1025
  super({
1060
1026
  id: LOCK_GROUP_COMMAND_ID,
1061
- title: ( localize2WithPath(_moduleId, 14, 'Lock Editor Group')),
1027
+ title: ( localize2(5536, 'Lock Editor Group')),
1062
1028
  category: Categories.View,
1063
1029
  precondition: ( (ActiveEditorGroupLockedContext.toNegated())),
1064
1030
  f1: true
1065
1031
  });
1066
1032
  }
1067
- async run(accessor, resourceOrContext, context) {
1068
- setEditorGroupLock(accessor, resourceOrContext, context, true);
1033
+ async run(accessor, ...args) {
1034
+ setEditorGroupLock(accessor, true, ...args);
1069
1035
  }
1070
1036
  });
1071
1037
  registerAction2(class extends Action2 {
1072
1038
  constructor() {
1073
1039
  super({
1074
1040
  id: UNLOCK_GROUP_COMMAND_ID,
1075
- title: ( localize2WithPath(_moduleId, 15, 'Unlock Editor Group')),
1041
+ title: ( localize2(5537, 'Unlock Editor Group')),
1076
1042
  precondition: ActiveEditorGroupLockedContext,
1077
1043
  category: Categories.View,
1078
1044
  f1: true
1079
1045
  });
1080
1046
  }
1081
- async run(accessor, resourceOrContext, context) {
1082
- setEditorGroupLock(accessor, resourceOrContext, context, false);
1047
+ async run(accessor, ...args) {
1048
+ setEditorGroupLock(accessor, false, ...args);
1083
1049
  }
1084
1050
  });
1085
1051
  KeybindingsRegistry.registerCommandAndKeybindingRule({
@@ -1087,9 +1053,12 @@ function registerOtherEditorCommands() {
1087
1053
  weight: KeybindingWeight.WorkbenchContrib,
1088
1054
  when: ( (ActiveEditorStickyContext.toNegated())),
1089
1055
  primary: KeyChord(KeyMod$1.CtrlCmd | KeyCode.KeyK, KeyMod$1.Shift | KeyCode.Enter),
1090
- handler: async (accessor, resourceOrContext, context) => {
1091
- for (const { editor, group } of resolveEditorsContext(getEditorsContext(accessor, resourceOrContext, context))) {
1092
- group.stickEditor(editor);
1056
+ handler: async (accessor, ...args) => {
1057
+ const resolvedContext = resolveCommandsContext(args, accessor.get(IEditorService), accessor.get(IEditorGroupsService), accessor.get(IListService));
1058
+ for (const { group, editors } of resolvedContext.groupedEditors) {
1059
+ for (const editor of editors) {
1060
+ group.stickEditor(editor);
1061
+ }
1093
1062
  }
1094
1063
  }
1095
1064
  });
@@ -1100,7 +1069,7 @@ function registerOtherEditorCommands() {
1100
1069
  primary: KeyChord(KeyMod$1.CtrlCmd | KeyCode.KeyK, KeyMod$1.Shift | KeyCode.KeyO),
1101
1070
  handler: async (accessor) => {
1102
1071
  const editorService = accessor.get(IEditorService);
1103
- const editorGroupService = accessor.get(IEditorGroupsService);
1072
+ const editorGroupsService = accessor.get(IEditorGroupsService);
1104
1073
  const activeEditor = editorService.activeEditor;
1105
1074
  const activeTextEditorControl = editorService.activeTextEditorControl;
1106
1075
  if (!isDiffEditor(activeTextEditorControl) || !(activeEditor instanceof DiffEditorInput)) {
@@ -1114,7 +1083,7 @@ function registerOtherEditorCommands() {
1114
1083
  else {
1115
1084
  editor = activeEditor.modified;
1116
1085
  }
1117
- return editorGroupService.activeGroup.openEditor(editor);
1086
+ return editorGroupsService.activeGroup.openEditor(editor);
1118
1087
  }
1119
1088
  });
1120
1089
  KeybindingsRegistry.registerCommandAndKeybindingRule({
@@ -1122,9 +1091,12 @@ function registerOtherEditorCommands() {
1122
1091
  weight: KeybindingWeight.WorkbenchContrib,
1123
1092
  when: ActiveEditorStickyContext,
1124
1093
  primary: KeyChord(KeyMod$1.CtrlCmd | KeyCode.KeyK, KeyMod$1.Shift | KeyCode.Enter),
1125
- handler: async (accessor, resourceOrContext, context) => {
1126
- for (const { editor, group } of resolveEditorsContext(getEditorsContext(accessor, resourceOrContext, context))) {
1127
- group.unstickEditor(editor);
1094
+ handler: async (accessor, ...args) => {
1095
+ const resolvedContext = resolveCommandsContext(args, accessor.get(IEditorService), accessor.get(IEditorGroupsService), accessor.get(IListService));
1096
+ for (const { group, editors } of resolvedContext.groupedEditors) {
1097
+ for (const editor of editors) {
1098
+ group.unstickEditor(editor);
1099
+ }
1128
1100
  }
1129
1101
  }
1130
1102
  });
@@ -1133,113 +1105,18 @@ function registerOtherEditorCommands() {
1133
1105
  weight: KeybindingWeight.WorkbenchContrib,
1134
1106
  when: undefined,
1135
1107
  primary: undefined,
1136
- handler: (accessor, resourceOrContext, context) => {
1137
- const editorGroupService = accessor.get(IEditorGroupsService);
1108
+ handler: (accessor, ...args) => {
1109
+ const editorGroupsService = accessor.get(IEditorGroupsService);
1138
1110
  const quickInputService = accessor.get(IQuickInputService);
1139
- const commandsContext = getCommandsContext(accessor, resourceOrContext, context);
1140
- if (commandsContext && typeof commandsContext.groupId === 'number') {
1141
- const group = editorGroupService.getGroup(commandsContext.groupId);
1142
- if (group) {
1143
- editorGroupService.activateGroup(group);
1144
- }
1111
+ const commandsContext = resolveCommandsContext(args, accessor.get(IEditorService), editorGroupsService, accessor.get(IListService));
1112
+ const group = commandsContext.groupedEditors[0]?.group;
1113
+ if (group) {
1114
+ editorGroupsService.activateGroup(group);
1145
1115
  }
1146
1116
  return quickInputService.quickAccess.show(ActiveGroupEditorsByMostRecentlyUsedQuickAccess.PREFIX);
1147
1117
  }
1148
1118
  });
1149
1119
  }
1150
- function getEditorsContext(accessor, resourceOrContext, context) {
1151
- const editorGroupService = accessor.get(IEditorGroupsService);
1152
- const listService = accessor.get(IListService);
1153
- const editorContext = getMultiSelectedEditorContexts(getCommandsContext(accessor, resourceOrContext, context), listService, editorGroupService);
1154
- const activeGroup = editorGroupService.activeGroup;
1155
- if (editorContext.length === 0 && activeGroup.activeEditor) {
1156
- editorContext.push({
1157
- groupId: activeGroup.id,
1158
- editorIndex: activeGroup.getIndexOfEditor(activeGroup.activeEditor)
1159
- });
1160
- }
1161
- return {
1162
- editors: editorContext,
1163
- groups: ( (distinct(( (editorContext.map(context => context.groupId)))).map(groupId => editorGroupService.getGroup(groupId))))
1164
- };
1165
- }
1166
- function resolveEditorsContext(context) {
1167
- const { editors, groups } = context;
1168
- const editorsAndGroup = ( (editors.map(e => {
1169
- if (e.editorIndex === undefined) {
1170
- return undefined;
1171
- }
1172
- const group = groups.find(group => group && group.id === e.groupId);
1173
- const editor = group?.getEditorByIndex(e.editorIndex);
1174
- if (!editor || !group) {
1175
- return undefined;
1176
- }
1177
- return { editor, group };
1178
- })));
1179
- return coalesce(editorsAndGroup);
1180
- }
1181
- function getCommandsContext(accessor, resourceOrContext, context) {
1182
- const isUri = URI.isUri(resourceOrContext);
1183
- const editorCommandsContext = isUri ? context : resourceOrContext ? resourceOrContext : context;
1184
- if (editorCommandsContext && isEditorCommandsContext(editorCommandsContext)) {
1185
- return editorCommandsContext;
1186
- }
1187
- if (isUri) {
1188
- const editorGroupService = accessor.get(IEditorGroupsService);
1189
- const editorGroup = editorGroupService.getGroups(GroupsOrder.MOST_RECENTLY_ACTIVE).find(group => isEqual(group.activeEditor?.resource, resourceOrContext));
1190
- if (editorGroup) {
1191
- return { groupId: editorGroup.index, editorIndex: editorGroup.getIndexOfEditor(editorGroup.activeEditor) };
1192
- }
1193
- }
1194
- return undefined;
1195
- }
1196
- function resolveCommandsContext(editorGroupService, context) {
1197
- let group = context && typeof context.groupId === 'number' ? editorGroupService.getGroup(context.groupId) : undefined;
1198
- let editor = group && context && typeof context.editorIndex === 'number' ? group.getEditorByIndex(context.editorIndex) ?? undefined : undefined;
1199
- if (!group) {
1200
- group = editorGroupService.activeGroup;
1201
- }
1202
- if (!editor) {
1203
- editor = group.activeEditor ?? undefined;
1204
- }
1205
- return { group, editor };
1206
- }
1207
- function getMultiSelectedEditorContexts(editorContext, listService, editorGroupService) {
1208
- const list = listService.lastFocusedList;
1209
- if (list instanceof List && list.getHTMLElement() === getActiveElement()) {
1210
- const elementToContext = (element) => {
1211
- if (isEditorGroup(element)) {
1212
- return { groupId: element.id, editorIndex: undefined };
1213
- }
1214
- const group = editorGroupService.getGroup(element.groupId);
1215
- return { groupId: element.groupId, editorIndex: group ? group.getIndexOfEditor(element.editor) : -1 };
1216
- };
1217
- const onlyEditorGroupAndEditor = (e) => isEditorGroup(e) || isEditorIdentifier(e);
1218
- const focusedElements = list.getFocusedElements().filter(onlyEditorGroupAndEditor);
1219
- const focus = editorContext ? editorContext : focusedElements.length ? ( (focusedElements.map(elementToContext)))[0] : undefined;
1220
- if (focus) {
1221
- const selection = list.getSelectedElements().filter(onlyEditorGroupAndEditor);
1222
- if (selection.length > 1) {
1223
- return (
1224
- (selection.map(elementToContext))
1225
- );
1226
- }
1227
- return [focus];
1228
- }
1229
- }
1230
- else {
1231
- const group = editorContext ? editorGroupService.getGroup(editorContext.groupId) : editorGroupService.activeGroup;
1232
- const editor = editorContext && editorContext.editorIndex !== undefined ? group?.getEditorByIndex(editorContext.editorIndex) : group?.activeEditor;
1233
- if (group && editor) {
1234
- if (group.isSelected(editor)) {
1235
- return (
1236
- (group.selectedEditors.map(se => ({ groupId: group.id, editorIndex: group.getIndexOfEditor(se) })))
1237
- );
1238
- }
1239
- }
1240
- }
1241
- return !!editorContext ? [editorContext] : [];
1242
- }
1243
1120
  function setup() {
1244
1121
  registerActiveEditorMoveCopyCommand();
1245
1122
  registerEditorGroupsLayoutCommands();
@@ -1254,4 +1131,4 @@ function setup() {
1254
1131
  registerSplitEditorCommands();
1255
1132
  registerFocusEditorGroupWihoutWrapCommands();
1256
1133
  }
1257
- export { API_OPEN_DIFF_EDITOR_COMMAND_ID, API_OPEN_EDITOR_COMMAND_ID, API_OPEN_WITH_EDITOR_COMMAND_ID, CLOSE_EDITORS_AND_GROUP_COMMAND_ID, CLOSE_EDITORS_IN_GROUP_COMMAND_ID, CLOSE_EDITORS_TO_THE_RIGHT_COMMAND_ID, CLOSE_EDITOR_COMMAND_ID, CLOSE_EDITOR_GROUP_COMMAND_ID, CLOSE_OTHER_EDITORS_IN_GROUP_COMMAND_ID, CLOSE_PINNED_EDITOR_COMMAND_ID, CLOSE_SAVED_EDITORS_COMMAND_ID, COPY_ACTIVE_EDITOR_COMMAND_ID, COPY_EDITOR_GROUP_INTO_NEW_WINDOW_COMMAND_ID, COPY_EDITOR_INTO_NEW_WINDOW_COMMAND_ID, EDITOR_CORE_NAVIGATION_COMMANDS, FOCUS_ABOVE_GROUP_WITHOUT_WRAP_COMMAND_ID, FOCUS_BELOW_GROUP_WITHOUT_WRAP_COMMAND_ID, FOCUS_FIRST_SIDE_EDITOR, FOCUS_LEFT_GROUP_WITHOUT_WRAP_COMMAND_ID, FOCUS_OTHER_SIDE_EDITOR, FOCUS_RIGHT_GROUP_WITHOUT_WRAP_COMMAND_ID, FOCUS_SECOND_SIDE_EDITOR, JOIN_EDITOR_IN_GROUP, KEEP_EDITOR_COMMAND_ID, LAYOUT_EDITOR_GROUPS_COMMAND_ID, LOCK_GROUP_COMMAND_ID, MOVE_ACTIVE_EDITOR_COMMAND_ID, MOVE_EDITOR_GROUP_INTO_NEW_WINDOW_COMMAND_ID, MOVE_EDITOR_INTO_NEW_WINDOW_COMMAND_ID, NEW_EMPTY_EDITOR_WINDOW_COMMAND_ID, OPEN_EDITOR_AT_INDEX_COMMAND_ID, PIN_EDITOR_COMMAND_ID, REOPEN_WITH_COMMAND_ID, SHOW_EDITORS_IN_GROUP, SPLIT_EDITOR, SPLIT_EDITOR_DOWN, SPLIT_EDITOR_IN_GROUP, SPLIT_EDITOR_LEFT, SPLIT_EDITOR_RIGHT, SPLIT_EDITOR_UP, TOGGLE_KEEP_EDITORS_COMMAND_ID, TOGGLE_LOCK_GROUP_COMMAND_ID, TOGGLE_MAXIMIZE_EDITOR_GROUP, TOGGLE_SPLIT_EDITOR_IN_GROUP, TOGGLE_SPLIT_EDITOR_IN_GROUP_LAYOUT, UNLOCK_GROUP_COMMAND_ID, UNPIN_EDITOR_COMMAND_ID, getCommandsContext, getEditorsContext, getMultiSelectedEditorContexts, resolveCommandsContext, resolveEditorsContext, setup, splitEditor };
1134
+ export { API_OPEN_DIFF_EDITOR_COMMAND_ID, API_OPEN_EDITOR_COMMAND_ID, API_OPEN_WITH_EDITOR_COMMAND_ID, CLOSE_EDITORS_AND_GROUP_COMMAND_ID, CLOSE_EDITORS_IN_GROUP_COMMAND_ID, CLOSE_EDITORS_TO_THE_RIGHT_COMMAND_ID, CLOSE_EDITOR_COMMAND_ID, CLOSE_EDITOR_GROUP_COMMAND_ID, CLOSE_OTHER_EDITORS_IN_GROUP_COMMAND_ID, CLOSE_PINNED_EDITOR_COMMAND_ID, CLOSE_SAVED_EDITORS_COMMAND_ID, COPY_ACTIVE_EDITOR_COMMAND_ID, COPY_EDITOR_GROUP_INTO_NEW_WINDOW_COMMAND_ID, COPY_EDITOR_INTO_NEW_WINDOW_COMMAND_ID, EDITOR_CORE_NAVIGATION_COMMANDS, FOCUS_ABOVE_GROUP_WITHOUT_WRAP_COMMAND_ID, FOCUS_BELOW_GROUP_WITHOUT_WRAP_COMMAND_ID, FOCUS_FIRST_SIDE_EDITOR, FOCUS_LEFT_GROUP_WITHOUT_WRAP_COMMAND_ID, FOCUS_OTHER_SIDE_EDITOR, FOCUS_RIGHT_GROUP_WITHOUT_WRAP_COMMAND_ID, FOCUS_SECOND_SIDE_EDITOR, JOIN_EDITOR_IN_GROUP, KEEP_EDITOR_COMMAND_ID, LAYOUT_EDITOR_GROUPS_COMMAND_ID, LOCK_GROUP_COMMAND_ID, MOVE_ACTIVE_EDITOR_COMMAND_ID, MOVE_EDITOR_GROUP_INTO_NEW_WINDOW_COMMAND_ID, MOVE_EDITOR_INTO_NEW_WINDOW_COMMAND_ID, NEW_EMPTY_EDITOR_WINDOW_COMMAND_ID, OPEN_EDITOR_AT_INDEX_COMMAND_ID, PIN_EDITOR_COMMAND_ID, REOPEN_WITH_COMMAND_ID, SHOW_EDITORS_IN_GROUP, SPLIT_EDITOR, SPLIT_EDITOR_DOWN, SPLIT_EDITOR_IN_GROUP, SPLIT_EDITOR_LEFT, SPLIT_EDITOR_RIGHT, SPLIT_EDITOR_UP, TOGGLE_KEEP_EDITORS_COMMAND_ID, TOGGLE_LOCK_GROUP_COMMAND_ID, TOGGLE_MAXIMIZE_EDITOR_GROUP, TOGGLE_SPLIT_EDITOR_IN_GROUP, TOGGLE_SPLIT_EDITOR_IN_GROUP_LAYOUT, UNLOCK_GROUP_COMMAND_ID, UNPIN_EDITOR_COMMAND_ID, setup, splitEditor };