@codingame/monaco-vscode-api 5.3.0 → 6.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (997) hide show
  1. package/api.js +1 -1
  2. package/extensions.d.ts +4 -4
  3. package/localExtensionHost.js +2 -1
  4. package/missing-services.js +68 -22
  5. package/package.json +8 -8
  6. package/service-override/dialogs.d.ts +1 -8
  7. package/service-override/search.d.ts +1 -8
  8. package/service-override/tools/editor.js +11 -2
  9. package/services.js +2 -2
  10. package/vscode/src/vs/base/browser/canIUse.js +10 -4
  11. package/vscode/src/vs/base/browser/deviceAccess.js +60 -0
  12. package/vscode/src/vs/base/browser/dom.js +25 -9
  13. package/vscode/src/vs/base/browser/formattedTextRenderer.js +36 -24
  14. package/vscode/src/vs/base/browser/keyboardEvent.js +24 -24
  15. package/vscode/src/vs/base/browser/markdownRenderer.js +130 -30
  16. package/vscode/src/vs/base/browser/performance.js +24 -18
  17. package/vscode/src/vs/base/browser/ui/actionbar/actionbar.js +22 -16
  18. package/vscode/src/vs/base/browser/ui/breadcrumbs/breadcrumbsWidget.js +3 -2
  19. package/vscode/src/vs/base/browser/ui/button/button.js +19 -7
  20. package/vscode/src/vs/base/browser/ui/codicons/codicon/codicon.css.js +1 -1
  21. package/vscode/src/vs/base/browser/ui/contextview/contextview.js +43 -17
  22. package/vscode/src/vs/base/browser/ui/dialog/dialog.js +7 -6
  23. package/vscode/src/vs/base/browser/ui/dropdown/dropdown.js +4 -2
  24. package/vscode/src/vs/base/browser/ui/dropdown/dropdownActionViewItem.js +3 -2
  25. package/vscode/src/vs/base/browser/ui/findinput/findInput.js +5 -4
  26. package/vscode/src/vs/base/browser/ui/findinput/replaceInput.js +5 -4
  27. package/vscode/src/vs/base/browser/ui/hover/hover.d.ts +5 -0
  28. package/vscode/src/vs/base/browser/ui/hover/hoverDelegate2.js +1 -0
  29. package/vscode/src/vs/base/browser/ui/hover/hoverWidget.css.js +1 -1
  30. package/vscode/src/vs/base/browser/ui/hover/hoverWidget.js +10 -6
  31. package/vscode/src/vs/base/browser/ui/iconLabel/iconLabel.js +16 -1
  32. package/vscode/src/vs/base/browser/ui/iconLabel/iconlabel.css.js +1 -1
  33. package/vscode/src/vs/base/browser/ui/icons/iconSelectBox.js +2 -1
  34. package/vscode/src/vs/base/browser/ui/inputbox/inputBox.js +17 -9
  35. package/vscode/src/vs/base/browser/ui/list/list.js +12 -1
  36. package/vscode/src/vs/base/browser/ui/list/listView.js +19 -11
  37. package/vscode/src/vs/base/browser/ui/list/listWidget.js +17 -16
  38. package/vscode/src/vs/base/browser/ui/menu/menu.js +17 -15
  39. package/vscode/src/vs/base/browser/ui/menu/menubar.js +14 -14
  40. package/vscode/src/vs/base/browser/ui/resizable/resizable.js +9 -9
  41. package/vscode/src/vs/base/browser/ui/sash/sash.js +30 -18
  42. package/vscode/src/vs/base/browser/ui/scrollbar/horizontalScrollbar.js +5 -4
  43. package/vscode/src/vs/base/browser/ui/scrollbar/scrollableElement.js +3 -3
  44. package/vscode/src/vs/base/browser/ui/scrollbar/scrollbarVisibilityController.js +3 -2
  45. package/vscode/src/vs/base/browser/ui/scrollbar/verticalScrollbar.js +3 -2
  46. package/vscode/src/vs/base/browser/ui/selectBox/selectBox.js +3 -0
  47. package/vscode/src/vs/base/browser/ui/selectBox/selectBoxCustom.js +25 -20
  48. package/vscode/src/vs/base/browser/ui/selectBox/selectBoxNative.js +6 -2
  49. package/vscode/src/vs/base/browser/ui/splitview/paneview.js +26 -24
  50. package/vscode/src/vs/base/browser/ui/splitview/splitview.js +33 -27
  51. package/vscode/src/vs/base/browser/ui/table/tableWidget.js +5 -3
  52. package/vscode/src/vs/base/browser/ui/toggle/toggle.js +4 -2
  53. package/vscode/src/vs/base/browser/ui/toolbar/toolbar.js +2 -2
  54. package/vscode/src/vs/base/browser/ui/tree/abstractTree.js +30 -24
  55. package/vscode/src/vs/base/browser/ui/tree/asyncDataTree.js +7 -7
  56. package/vscode/src/vs/base/browser/ui/tree/indexTreeModel.js +15 -15
  57. package/vscode/src/vs/base/browser/ui/tree/tree.js +13 -1
  58. package/vscode/src/vs/base/common/actions.js +1 -1
  59. package/vscode/src/vs/base/common/arrays.js +2 -5
  60. package/vscode/src/vs/base/common/assert.js +7 -2
  61. package/vscode/src/vs/base/common/async.js +38 -14
  62. package/vscode/src/vs/base/common/charCode.js +296 -0
  63. package/vscode/src/vs/base/common/codicons.d.ts +1 -0
  64. package/vscode/src/vs/base/common/codiconsLibrary.js +1 -0
  65. package/vscode/src/vs/base/common/color.js +24 -23
  66. package/vscode/src/vs/base/common/diff/diff.js +15 -10
  67. package/vscode/src/vs/base/common/event.js +83 -26
  68. package/vscode/src/vs/base/common/extpath.js +10 -9
  69. package/vscode/src/vs/base/common/filters.js +40 -32
  70. package/vscode/src/vs/base/common/fuzzyScorer.js +10 -9
  71. package/vscode/src/vs/base/common/glob.js +2 -1
  72. package/vscode/src/vs/base/common/hash.js +15 -10
  73. package/vscode/src/vs/base/common/htmlContent.js +8 -3
  74. package/vscode/src/vs/base/common/json.js +323 -149
  75. package/vscode/src/vs/base/common/jsonErrorMessages.js +10 -9
  76. package/vscode/src/vs/base/common/jsonFormatter.js +30 -30
  77. package/vscode/src/vs/base/common/keyCodes.js +591 -249
  78. package/vscode/src/vs/base/common/keybindingLabels.js +4 -3
  79. package/vscode/src/vs/base/common/keybindings.js +30 -17
  80. package/vscode/src/vs/base/common/labels.js +10 -10
  81. package/vscode/src/vs/base/common/lifecycle.js +5 -0
  82. package/vscode/src/vs/base/common/map.js +20 -14
  83. package/vscode/src/vs/base/common/marshalling.js +5 -4
  84. package/vscode/src/vs/base/common/marshallingIds.js +22 -0
  85. package/vscode/src/vs/base/common/naturalLanguage/korean.js +213 -129
  86. package/vscode/src/vs/base/common/network.js +3 -2
  87. package/vscode/src/vs/base/common/objects.js +8 -1
  88. package/vscode/src/vs/base/common/observableInternal/autorun.js +19 -13
  89. package/vscode/src/vs/base/common/observableInternal/base.js +1 -1
  90. package/vscode/src/vs/base/common/observableInternal/derived.js +35 -19
  91. package/vscode/src/vs/base/common/observableInternal/utils.js +9 -1
  92. package/vscode/src/vs/base/common/platform.js +26 -10
  93. package/vscode/src/vs/base/common/prefixTree.js +3 -0
  94. package/vscode/src/vs/base/common/processes.js +32 -0
  95. package/vscode/src/vs/base/common/resources.js +4 -3
  96. package/vscode/src/vs/base/common/scrollable.js +7 -1
  97. package/vscode/src/vs/base/common/strings.d.ts +9 -0
  98. package/vscode/src/vs/base/common/strings.js +94 -47
  99. package/vscode/src/vs/base/common/ternarySearchTree.js +54 -39
  100. package/vscode/src/vs/base/common/uint.js +14 -5
  101. package/vscode/src/vs/base/common/uri.js +41 -39
  102. package/vscode/src/vs/base/common/uriIpc.js +2 -1
  103. package/vscode/src/vs/base/common/worker/simpleWorker.js +20 -12
  104. package/vscode/src/vs/base/parts/ipc/common/ipc.js +77 -55
  105. package/vscode/src/vs/base/parts/ipc/common/ipc.net.js +108 -51
  106. package/vscode/src/vs/base/parts/storage/common/storage.js +3 -1
  107. package/vscode/src/vs/editor/browser/config/charWidthReader.js +10 -4
  108. package/vscode/src/vs/editor/browser/config/editorConfiguration.js +4 -3
  109. package/vscode/src/vs/editor/browser/config/fontMeasurements.js +21 -21
  110. package/vscode/src/vs/editor/browser/controller/mouseHandler.js +28 -25
  111. package/vscode/src/vs/editor/browser/controller/mouseTarget.js +68 -50
  112. package/vscode/src/vs/editor/browser/controller/pointerHandler.js +5 -3
  113. package/vscode/src/vs/editor/browser/controller/textAreaHandler.js +49 -44
  114. package/vscode/src/vs/editor/browser/controller/textAreaInput.js +8 -6
  115. package/vscode/src/vs/editor/browser/controller/textAreaState.js +8 -7
  116. package/vscode/src/vs/editor/browser/coreCommands.js +215 -198
  117. package/vscode/src/vs/editor/browser/editorBrowser.js +30 -1
  118. package/vscode/src/vs/editor/browser/editorExtensions.js +19 -10
  119. package/vscode/src/vs/editor/browser/services/abstractCodeEditorService.js +28 -18
  120. package/vscode/src/vs/editor/browser/services/editorWorkerService.js +2 -1
  121. package/vscode/src/vs/editor/browser/services/hoverService/hoverService.js +26 -10
  122. package/vscode/src/vs/editor/browser/services/hoverService/hoverWidget.js +70 -62
  123. package/vscode/src/vs/editor/browser/services/hoverService/updatableHoverWidget.js +5 -3
  124. package/vscode/src/vs/editor/browser/services/markerDecorations.js +2 -2
  125. package/vscode/src/vs/editor/browser/stableEditorScroll.js +4 -3
  126. package/vscode/src/vs/editor/browser/view/domLineBreaksComputer.js +27 -21
  127. package/vscode/src/vs/editor/browser/view/viewController.js +5 -4
  128. package/vscode/src/vs/editor/browser/view/viewLayer.js +2 -1
  129. package/vscode/src/vs/editor/browser/view/viewOverlays.js +9 -8
  130. package/vscode/src/vs/editor/browser/view/viewPart.js +15 -2
  131. package/vscode/src/vs/editor/browser/view/viewUserInputEvents.js +2 -1
  132. package/vscode/src/vs/editor/browser/view.js +9 -8
  133. package/vscode/src/vs/editor/browser/viewParts/blockDecorations/blockDecorations.js +2 -1
  134. package/vscode/src/vs/editor/browser/viewParts/contentWidgets/contentWidgets.js +47 -20
  135. package/vscode/src/vs/editor/browser/viewParts/currentLineHighlight/currentLineHighlight.js +7 -6
  136. package/vscode/src/vs/editor/browser/viewParts/decorations/decorations.js +3 -2
  137. package/vscode/src/vs/editor/browser/viewParts/editorScrollbar/editorScrollbar.js +19 -17
  138. package/vscode/src/vs/editor/browser/viewParts/glyphMargin/glyphMargin.js +16 -10
  139. package/vscode/src/vs/editor/browser/viewParts/indentGuides/indentGuides.js +7 -6
  140. package/vscode/src/vs/editor/browser/viewParts/lineNumbers/lineNumbers.js +9 -8
  141. package/vscode/src/vs/editor/browser/viewParts/lines/rangeUtil.js +4 -3
  142. package/vscode/src/vs/editor/browser/viewParts/lines/viewLine.js +29 -24
  143. package/vscode/src/vs/editor/browser/viewParts/lines/viewLines.js +35 -31
  144. package/vscode/src/vs/editor/browser/viewParts/linesDecorations/linesDecorations.js +3 -2
  145. package/vscode/src/vs/editor/browser/viewParts/margin/margin.js +5 -4
  146. package/vscode/src/vs/editor/browser/viewParts/minimap/minimap.js +39 -29
  147. package/vscode/src/vs/editor/browser/viewParts/minimap/minimapCharRenderer.js +9 -9
  148. package/vscode/src/vs/editor/browser/viewParts/minimap/minimapCharRendererFactory.js +22 -22
  149. package/vscode/src/vs/editor/browser/viewParts/minimap/minimapCharSheet.js +20 -7
  150. package/vscode/src/vs/editor/browser/viewParts/overlayWidgets/overlayWidgets.js +41 -20
  151. package/vscode/src/vs/editor/browser/viewParts/overviewRuler/decorationsOverviewRuler.js +37 -19
  152. package/vscode/src/vs/editor/browser/viewParts/overviewRuler/overviewRuler.js +7 -6
  153. package/vscode/src/vs/editor/browser/viewParts/rulers/rulers.js +5 -4
  154. package/vscode/src/vs/editor/browser/viewParts/scrollDecoration/scrollDecoration.js +4 -3
  155. package/vscode/src/vs/editor/browser/viewParts/selections/selections.js +33 -26
  156. package/vscode/src/vs/editor/browser/viewParts/viewCursors/viewCursor.js +9 -9
  157. package/vscode/src/vs/editor/browser/viewParts/viewCursors/viewCursors.js +22 -21
  158. package/vscode/src/vs/editor/browser/viewParts/viewZones/viewZones.js +6 -5
  159. package/vscode/src/vs/editor/browser/viewParts/whitespace/whitespace.js +18 -16
  160. package/vscode/src/vs/editor/browser/widget/codeEditor/codeEditorContributions.js +12 -11
  161. package/vscode/src/vs/editor/browser/widget/codeEditor/codeEditorWidget.js +195 -149
  162. package/vscode/src/vs/editor/browser/widget/diffEditor/commands.js +7 -5
  163. package/vscode/src/vs/editor/browser/widget/diffEditor/components/accessibleDiffViewer.js +24 -23
  164. package/vscode/src/vs/editor/browser/widget/diffEditor/components/diffEditorSash.js +47 -35
  165. package/vscode/src/vs/editor/browser/widget/diffEditor/components/diffEditorViewZones/diffEditorViewZones.js +15 -12
  166. package/vscode/src/vs/editor/browser/widget/diffEditor/components/diffEditorViewZones/inlineDiffDeletedCodeMargin.js +9 -6
  167. package/vscode/src/vs/editor/browser/widget/diffEditor/components/diffEditorViewZones/renderLines.js +10 -10
  168. package/vscode/src/vs/editor/browser/widget/diffEditor/delegatingEditorImpl.js +19 -18
  169. package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditorOptions.js +7 -6
  170. package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditorViewModel.js +9 -3
  171. package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditorWidget.js +26 -9
  172. package/vscode/src/vs/editor/browser/widget/diffEditor/diffProviderFactoryService.js +2 -2
  173. package/vscode/src/vs/editor/browser/widget/diffEditor/features/gutterFeature.js +29 -12
  174. package/vscode/src/vs/editor/browser/widget/diffEditor/features/hideUnchangedRegionsFeature.js +13 -10
  175. package/vscode/src/vs/editor/browser/widget/diffEditor/features/overviewRulerFeature.js +2 -1
  176. package/vscode/src/vs/editor/browser/widget/diffEditor/style.css.js +1 -1
  177. package/vscode/src/vs/editor/browser/widget/diffEditor/utils.js +4 -7
  178. package/vscode/src/vs/editor/browser/widget/markdownRenderer/browser/markdownRenderer.js +2 -1
  179. package/vscode/src/vs/editor/browser/widget/multiDiffEditor/multiDiffEditorWidgetImpl.js +49 -39
  180. package/vscode/src/vs/editor/browser/widget/multiDiffEditor/style.css.js +1 -1
  181. package/vscode/src/vs/editor/common/commands/replaceCommand.js +2 -2
  182. package/vscode/src/vs/editor/common/commands/shiftCommand.js +6 -5
  183. package/vscode/src/vs/editor/common/commands/trimTrailingWhitespaceCommand.js +2 -1
  184. package/vscode/src/vs/editor/common/config/editorConfigurationSchema.js +2 -2
  185. package/vscode/src/vs/editor/common/config/editorOptions.d.ts +4 -0
  186. package/vscode/src/vs/editor/common/config/editorOptions.js +719 -559
  187. package/vscode/src/vs/editor/common/config/fontInfo.js +8 -8
  188. package/vscode/src/vs/editor/common/core/characterClassifier.js +8 -3
  189. package/vscode/src/vs/editor/common/core/cursorColumns.js +3 -2
  190. package/vscode/src/vs/editor/common/core/eolCounter.js +16 -8
  191. package/vscode/src/vs/editor/common/core/lineRange.d.ts +0 -9
  192. package/vscode/src/vs/editor/common/core/lineRange.js +0 -28
  193. package/vscode/src/vs/editor/common/core/selection.js +12 -7
  194. package/vscode/src/vs/editor/common/core/wordCharacterClassifier.js +12 -5
  195. package/vscode/src/vs/editor/common/cursor/cursor.js +34 -31
  196. package/vscode/src/vs/editor/common/cursor/cursorAtomicMoveOperations.js +17 -10
  197. package/vscode/src/vs/editor/common/cursor/cursorColumnSelection.js +3 -3
  198. package/vscode/src/vs/editor/common/cursor/cursorDeleteOperations.js +4 -4
  199. package/vscode/src/vs/editor/common/cursor/cursorMoveCommands.js +52 -50
  200. package/vscode/src/vs/editor/common/cursor/cursorMoveOperations.js +14 -12
  201. package/vscode/src/vs/editor/common/cursor/cursorTypeOperations.js +35 -33
  202. package/vscode/src/vs/editor/common/cursor/cursorWordOperations.js +79 -65
  203. package/vscode/src/vs/editor/common/cursor/oneCursor.js +7 -6
  204. package/vscode/src/vs/editor/common/cursorCommon.js +54 -38
  205. package/vscode/src/vs/editor/common/cursorEvents.js +11 -0
  206. package/vscode/src/vs/editor/common/diff/defaultLinesDiffComputer/defaultLinesDiffComputer.js +1 -1
  207. package/vscode/src/vs/editor/common/diff/defaultLinesDiffComputer/lineSequence.js +2 -1
  208. package/vscode/src/vs/editor/common/diff/defaultLinesDiffComputer/linesSliceCharSequence.js +43 -30
  209. package/vscode/src/vs/editor/common/diff/defaultLinesDiffComputer/utils.js +2 -1
  210. package/vscode/src/vs/editor/common/diff/legacyLinesDiffComputer.js +5 -4
  211. package/vscode/src/vs/editor/common/editorCommon.js +16 -1
  212. package/vscode/src/vs/editor/common/encodedTokenAttributes.js +71 -19
  213. package/vscode/src/vs/editor/common/languages/autoIndent.js +83 -89
  214. package/vscode/src/vs/editor/common/languages/enterAction.js +10 -20
  215. package/vscode/src/vs/editor/common/languages/languageConfiguration.js +9 -7
  216. package/vscode/src/vs/editor/common/languages/languageConfigurationRegistry.js +3 -10
  217. package/vscode/src/vs/editor/common/languages/linkComputer.js +94 -69
  218. package/vscode/src/vs/editor/common/languages/nullTokenize.js +6 -5
  219. package/vscode/src/vs/editor/common/languages/supports/indentRules.js +12 -5
  220. package/vscode/src/vs/editor/common/languages/supports/indentationLineProcessor.js +150 -0
  221. package/vscode/src/vs/editor/common/languages/supports/languageBracketsConfiguration.d.ts +2 -0
  222. package/vscode/src/vs/editor/common/languages/supports/languageBracketsConfiguration.js +5 -0
  223. package/vscode/src/vs/editor/common/languages/supports/onEnter.js +4 -3
  224. package/vscode/src/vs/editor/common/languages/supports/richEditBrackets.js +3 -3
  225. package/vscode/src/vs/editor/common/languages/supports/tokenization.js +25 -24
  226. package/vscode/src/vs/editor/common/languages/supports.d.ts +5 -1
  227. package/vscode/src/vs/editor/common/languages/supports.js +13 -1
  228. package/vscode/src/vs/editor/common/languages/textToHtmlTokenizer.js +14 -12
  229. package/vscode/src/vs/editor/common/languages.d.ts +6 -15
  230. package/vscode/src/vs/editor/common/languages.js +204 -113
  231. package/vscode/src/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/ast.js +18 -10
  232. package/vscode/src/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/bracketPairsTree.js +18 -16
  233. package/vscode/src/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/brackets.js +4 -4
  234. package/vscode/src/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/concat23Trees.js +3 -3
  235. package/vscode/src/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/parser.js +8 -7
  236. package/vscode/src/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/tokenizer.js +15 -33
  237. package/vscode/src/vs/editor/common/model/bracketPairsTextModelPart/fixBrackets.js +5 -4
  238. package/vscode/src/vs/editor/common/model/editStack.js +6 -4
  239. package/vscode/src/vs/editor/common/model/indentationGuesser.js +7 -6
  240. package/vscode/src/vs/editor/common/model/intervalTree.js +119 -71
  241. package/vscode/src/vs/editor/common/model/pieceTreeTextBuffer/pieceTreeBase.js +17 -16
  242. package/vscode/src/vs/editor/common/model/pieceTreeTextBuffer/pieceTreeTextBuffer.js +11 -11
  243. package/vscode/src/vs/editor/common/model/pieceTreeTextBuffer/pieceTreeTextBufferBuilder.js +5 -3
  244. package/vscode/src/vs/editor/common/model/pieceTreeTextBuffer/rbTreeBase.js +46 -41
  245. package/vscode/src/vs/editor/common/model/textModel.js +35 -26
  246. package/vscode/src/vs/editor/common/model/textModelSearch.js +15 -14
  247. package/vscode/src/vs/editor/common/model/textModelTokens.js +8 -3
  248. package/vscode/src/vs/editor/common/model/tokenizationTextModelPart.js +8 -5
  249. package/vscode/src/vs/editor/common/model/utils.js +3 -2
  250. package/vscode/src/vs/editor/common/model.js +46 -1
  251. package/vscode/src/vs/editor/common/modelLineProjectionData.js +10 -10
  252. package/vscode/src/vs/editor/common/services/editorBaseApi.js +5 -5
  253. package/vscode/src/vs/editor/common/services/findSectionHeaders.js +1 -1
  254. package/vscode/src/vs/editor/common/services/getIconClasses.js +6 -1
  255. package/vscode/src/vs/editor/common/services/languageFeatureDebounce.js +2 -2
  256. package/vscode/src/vs/editor/common/services/languageFeaturesService.js +2 -2
  257. package/vscode/src/vs/editor/common/services/languagesRegistry.js +4 -3
  258. package/vscode/src/vs/editor/common/services/markerDecorationsService.js +19 -18
  259. package/vscode/src/vs/editor/common/services/modelService.js +9 -8
  260. package/vscode/src/vs/editor/common/services/semanticTokensDto.js +8 -3
  261. package/vscode/src/vs/editor/common/services/semanticTokensProviderStyling.js +27 -16
  262. package/vscode/src/vs/editor/common/services/semanticTokensStylingService.js +2 -2
  263. package/vscode/src/vs/editor/common/services/treeViewsDndService.js +2 -2
  264. package/vscode/src/vs/editor/common/services/unicodeTextModelHighlighter.js +31 -18
  265. package/vscode/src/vs/editor/common/standaloneStrings.js +18 -39
  266. package/vscode/src/vs/editor/common/textModelEvents.js +14 -6
  267. package/vscode/src/vs/editor/common/tokenizationRegistry.js +3 -2
  268. package/vscode/src/vs/editor/common/tokenizationTextModelPart.js +6 -0
  269. package/vscode/src/vs/editor/common/tokens/contiguousTokensStore.js +7 -7
  270. package/vscode/src/vs/editor/common/tokens/lineTokens.d.ts +12 -1
  271. package/vscode/src/vs/editor/common/tokens/lineTokens.js +64 -8
  272. package/vscode/src/vs/editor/common/tokens/sparseMultilineTokens.js +5 -4
  273. package/vscode/src/vs/editor/common/tokens/sparseTokensStore.js +7 -6
  274. package/vscode/src/vs/editor/common/viewEventHandler.js +19 -18
  275. package/vscode/src/vs/editor/common/viewEvents.js +50 -19
  276. package/vscode/src/vs/editor/common/viewLayout/lineDecorations.js +9 -6
  277. package/vscode/src/vs/editor/common/viewLayout/linePart.js +12 -3
  278. package/vscode/src/vs/editor/common/viewLayout/viewLayout.js +25 -23
  279. package/vscode/src/vs/editor/common/viewLayout/viewLineRenderer.js +97 -72
  280. package/vscode/src/vs/editor/common/viewModel/minimapTokensColorTracker.js +3 -2
  281. package/vscode/src/vs/editor/common/viewModel/modelLineProjection.js +2 -1
  282. package/vscode/src/vs/editor/common/viewModel/monospaceLineBreaksComputer.js +30 -19
  283. package/vscode/src/vs/editor/common/viewModel/overviewZoneManager.js +5 -1
  284. package/vscode/src/vs/editor/common/viewModel/viewModelDecorations.js +11 -9
  285. package/vscode/src/vs/editor/common/viewModel/viewModelImpl.js +42 -38
  286. package/vscode/src/vs/editor/common/viewModel/viewModelLines.js +15 -8
  287. package/vscode/src/vs/editor/common/viewModel.js +9 -2
  288. package/vscode/src/vs/editor/common/viewModelEventDispatcher.js +30 -14
  289. package/vscode/src/vs/editor/contrib/anchorSelect/browser/anchorSelect.js +12 -10
  290. package/vscode/src/vs/editor/contrib/bracketMatching/browser/bracketMatching.js +15 -12
  291. package/vscode/src/vs/editor/contrib/caretOperations/browser/transpose.js +4 -2
  292. package/vscode/src/vs/editor/contrib/clipboard/browser/clipboard.js +19 -16
  293. package/vscode/src/vs/editor/contrib/codeAction/browser/codeAction.js +3 -2
  294. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionCommands.js +21 -19
  295. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionContributions.js +6 -6
  296. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionController.js +14 -11
  297. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionKeybindingResolver.js +2 -2
  298. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionMenu.js +4 -3
  299. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionModel.js +19 -17
  300. package/vscode/src/vs/editor/contrib/codeAction/browser/lightBulbWidget.js +21 -12
  301. package/vscode/src/vs/editor/contrib/codeAction/common/types.js +10 -4
  302. package/vscode/src/vs/editor/contrib/codelens/browser/codeLensCache.js +6 -6
  303. package/vscode/src/vs/editor/contrib/codelens/browser/codelensController.js +14 -13
  304. package/vscode/src/vs/editor/contrib/codelens/browser/codelensWidget.js +4 -2
  305. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorContributions.js +8 -5
  306. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorDetector.js +9 -8
  307. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorHoverParticipant.js +7 -4
  308. package/vscode/src/vs/editor/contrib/colorPicker/browser/standaloneColorPickerActions.js +6 -4
  309. package/vscode/src/vs/editor/contrib/colorPicker/browser/standaloneColorPickerWidget.js +8 -5
  310. package/vscode/src/vs/editor/contrib/comment/browser/blockCommentCommand.js +5 -4
  311. package/vscode/src/vs/editor/contrib/comment/browser/comment.js +18 -16
  312. package/vscode/src/vs/editor/contrib/comment/browser/lineCommentCommand.js +20 -12
  313. package/vscode/src/vs/editor/contrib/contextmenu/browser/contextmenu.js +23 -18
  314. package/vscode/src/vs/editor/contrib/cursorUndo/browser/cursorUndo.js +6 -4
  315. package/vscode/src/vs/editor/contrib/dnd/browser/dnd.js +17 -12
  316. package/vscode/src/vs/editor/contrib/documentSymbols/browser/outlineModel.js +2 -2
  317. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/copyPasteContribution.js +8 -6
  318. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/copyPasteController.js +12 -9
  319. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/dropIntoEditorContribution.js +10 -8
  320. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/dropIntoEditorController.js +4 -3
  321. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/postEditWidget.js +76 -34
  322. package/vscode/src/vs/editor/contrib/editorState/browser/editorState.js +16 -9
  323. package/vscode/src/vs/editor/contrib/editorState/browser/keybindingCancellation.js +6 -4
  324. package/vscode/src/vs/editor/contrib/find/browser/findController.js +95 -85
  325. package/vscode/src/vs/editor/contrib/find/browser/findDecorations.js +10 -8
  326. package/vscode/src/vs/editor/contrib/find/browser/findModel.js +31 -25
  327. package/vscode/src/vs/editor/contrib/find/browser/findOptionsWidget.js +2 -1
  328. package/vscode/src/vs/editor/contrib/find/browser/findState.js +17 -11
  329. package/vscode/src/vs/editor/contrib/find/browser/findWidget.js +58 -49
  330. package/vscode/src/vs/editor/contrib/find/browser/replacePattern.js +25 -19
  331. package/vscode/src/vs/editor/contrib/folding/browser/folding.js +68 -64
  332. package/vscode/src/vs/editor/contrib/folding/browser/foldingDecorations.js +14 -13
  333. package/vscode/src/vs/editor/contrib/folding/browser/foldingModel.js +6 -6
  334. package/vscode/src/vs/editor/contrib/folding/browser/foldingRanges.js +20 -14
  335. package/vscode/src/vs/editor/contrib/format/browser/format.js +31 -10
  336. package/vscode/src/vs/editor/contrib/format/browser/formatActions.js +18 -16
  337. package/vscode/src/vs/editor/contrib/gotoError/browser/gotoError.js +17 -14
  338. package/vscode/src/vs/editor/contrib/gotoError/browser/gotoErrorWidget.js +8 -5
  339. package/vscode/src/vs/editor/contrib/gotoError/browser/markerNavigationService.js +2 -2
  340. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/goToCommands.js +39 -38
  341. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/goToSymbol.js +13 -3
  342. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/link/clickLinkGesture.js +9 -7
  343. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/link/goToDefinitionAtPosition.js +9 -7
  344. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/peek/referencesController.js +31 -28
  345. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/peek/referencesWidget.js +8 -4
  346. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/referencesModel.js +2 -6
  347. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/symbolNavigation.js +10 -8
  348. package/vscode/src/vs/editor/contrib/hover/browser/contentHoverComputer.js +4 -2
  349. package/vscode/src/vs/editor/contrib/hover/browser/contentHoverController.js +31 -12
  350. package/vscode/src/vs/editor/contrib/hover/browser/contentHoverWidget.js +14 -10
  351. package/vscode/src/vs/editor/contrib/hover/browser/hover.css.js +1 -1
  352. package/vscode/src/vs/editor/contrib/hover/browser/hoverAccessibleViews.js +247 -0
  353. package/vscode/src/vs/editor/contrib/hover/browser/hoverActionIds.js +7 -1
  354. package/vscode/src/vs/editor/contrib/hover/browser/hoverActions.js +38 -34
  355. package/vscode/src/vs/editor/contrib/hover/browser/hoverContribution.js +7 -2
  356. package/vscode/src/vs/editor/contrib/hover/browser/hoverController.js +46 -17
  357. package/vscode/src/vs/editor/contrib/hover/browser/hoverOperation.js +37 -18
  358. package/vscode/src/vs/editor/contrib/hover/browser/hoverTypes.js +12 -7
  359. package/vscode/src/vs/editor/contrib/hover/browser/marginHoverWidget.js +9 -7
  360. package/vscode/src/vs/editor/contrib/hover/browser/markdownHoverParticipant.js +100 -60
  361. package/vscode/src/vs/editor/contrib/hover/browser/markerHoverParticipant.js +7 -4
  362. package/vscode/src/vs/editor/contrib/hover/browser/resizableContentWidget.js +6 -4
  363. package/vscode/src/vs/editor/contrib/inPlaceReplace/browser/inPlaceReplace.js +10 -11
  364. package/vscode/src/vs/editor/contrib/indentation/browser/indentation.js +20 -6
  365. package/vscode/src/vs/editor/contrib/indentation/common/indentation.js +25 -20
  366. package/vscode/src/vs/editor/contrib/inlayHints/browser/inlayHintsContribution.js +2 -2
  367. package/vscode/src/vs/editor/contrib/inlayHints/browser/inlayHintsController.js +26 -20
  368. package/vscode/src/vs/editor/contrib/inlayHints/browser/inlayHintsHover.js +4 -2
  369. package/vscode/src/vs/editor/contrib/inlayHints/browser/inlayHintsLocations.js +3 -2
  370. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/commands.js +9 -7
  371. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/ghostText.js +0 -1
  372. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/ghostTextWidget.js +19 -18
  373. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/hoverParticipant.js +9 -7
  374. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/inlineCompletions.contribution.js +5 -2
  375. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsAccessibleView.js +55 -0
  376. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsController.js +10 -8
  377. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsHintsWidget.js +26 -14
  378. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsModel.js +8 -5
  379. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsSource.js +2 -1
  380. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/singleTextEdit.js +2 -1
  381. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/suggestWidgetInlineCompletionProvider.js +2 -2
  382. package/vscode/src/vs/editor/contrib/inlineEdit/browser/commands.js +12 -10
  383. package/vscode/src/vs/editor/contrib/inlineEdit/browser/ghostTextWidget.js +3 -2
  384. package/vscode/src/vs/editor/contrib/inlineEdit/browser/hoverParticipant.js +8 -6
  385. package/vscode/src/vs/editor/contrib/inlineEdit/browser/inlineEdit.contribution.js +2 -2
  386. package/vscode/src/vs/editor/contrib/inlineEdit/browser/inlineEditController.js +5 -4
  387. package/vscode/src/vs/editor/contrib/inlineEdit/browser/inlineEditHintsWidget.js +6 -3
  388. package/vscode/src/vs/editor/contrib/inlineProgress/browser/inlineProgress.js +7 -4
  389. package/vscode/src/vs/editor/contrib/lineSelection/browser/lineSelection.js +6 -3
  390. package/vscode/src/vs/editor/contrib/linesOperations/browser/copyLinesCommand.js +2 -2
  391. package/vscode/src/vs/editor/contrib/linesOperations/browser/linesOperations.js +35 -33
  392. package/vscode/src/vs/editor/contrib/linesOperations/browser/moveLinesCommand.js +4 -2
  393. package/vscode/src/vs/editor/contrib/linkedEditing/browser/linkedEditing.js +14 -10
  394. package/vscode/src/vs/editor/contrib/links/browser/links.js +13 -10
  395. package/vscode/src/vs/editor/contrib/longLinesHelper/browser/longLinesHelper.js +6 -4
  396. package/vscode/src/vs/editor/contrib/message/browser/messageController.js +14 -9
  397. package/vscode/src/vs/editor/contrib/multicursor/browser/multicursor.js +53 -51
  398. package/vscode/src/vs/editor/contrib/parameterHints/browser/parameterHints.js +15 -13
  399. package/vscode/src/vs/editor/contrib/parameterHints/browser/parameterHintsModel.js +18 -16
  400. package/vscode/src/vs/editor/contrib/parameterHints/browser/parameterHintsWidget.js +19 -6
  401. package/vscode/src/vs/editor/contrib/peekView/browser/peekView.js +8 -7
  402. package/vscode/src/vs/editor/contrib/quickAccess/browser/editorNavigationQuickAccess.js +8 -6
  403. package/vscode/src/vs/editor/contrib/quickAccess/browser/gotoLineQuickAccess.js +5 -3
  404. package/vscode/src/vs/editor/contrib/quickAccess/browser/gotoSymbolQuickAccess.js +38 -34
  405. package/vscode/src/vs/editor/contrib/readOnlyMessage/browser/contribution.js +4 -3
  406. package/vscode/src/vs/editor/contrib/rename/browser/rename.js +22 -20
  407. package/vscode/src/vs/editor/contrib/rename/browser/renameWidget.js +15 -11
  408. package/vscode/src/vs/editor/contrib/sectionHeaders/browser/sectionHeaders.js +15 -12
  409. package/vscode/src/vs/editor/contrib/semanticTokens/browser/viewportSemanticTokens.js +2 -2
  410. package/vscode/src/vs/editor/contrib/smartSelect/browser/smartSelect.js +14 -11
  411. package/vscode/src/vs/editor/contrib/smartSelect/browser/wordSelections.js +3 -2
  412. package/vscode/src/vs/editor/contrib/snippet/browser/snippetController2.js +13 -10
  413. package/vscode/src/vs/editor/contrib/snippet/browser/snippetParser.js +100 -81
  414. package/vscode/src/vs/editor/contrib/snippet/browser/snippetSession.js +10 -7
  415. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScroll.css.js +1 -1
  416. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollActions.js +7 -5
  417. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollContribution.js +2 -2
  418. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollController.js +19 -16
  419. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollModelProvider.js +2 -1
  420. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollProvider.js +3 -2
  421. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollWidget.js +14 -11
  422. package/vscode/src/vs/editor/contrib/suggest/browser/completionModel.js +18 -10
  423. package/vscode/src/vs/editor/contrib/suggest/browser/suggest.js +24 -16
  424. package/vscode/src/vs/editor/contrib/suggest/browser/suggestCommitCharacters.js +4 -2
  425. package/vscode/src/vs/editor/contrib/suggest/browser/suggestController.js +83 -69
  426. package/vscode/src/vs/editor/contrib/suggest/browser/suggestInlineCompletions.js +6 -4
  427. package/vscode/src/vs/editor/contrib/suggest/browser/suggestMemory.js +6 -6
  428. package/vscode/src/vs/editor/contrib/suggest/browser/suggestModel.js +66 -57
  429. package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidget.js +71 -59
  430. package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidgetDetails.js +6 -5
  431. package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidgetRenderer.js +10 -9
  432. package/vscode/src/vs/editor/contrib/suggest/browser/wordContextKey.js +3 -2
  433. package/vscode/src/vs/editor/contrib/suggest/browser/wordDistance.js +4 -2
  434. package/vscode/src/vs/editor/contrib/toggleTabFocusMode/browser/toggleTabFocusMode.js +6 -4
  435. package/vscode/src/vs/editor/contrib/unicodeHighlighter/browser/unicodeHighlighter.js +28 -25
  436. package/vscode/src/vs/editor/contrib/unusualLineTerminators/browser/unusualLineTerminators.js +7 -6
  437. package/vscode/src/vs/editor/contrib/wordHighlighter/browser/highlightDecorations.js +10 -10
  438. package/vscode/src/vs/editor/contrib/wordHighlighter/browser/wordHighlighter.js +16 -12
  439. package/vscode/src/vs/editor/contrib/wordOperations/browser/wordOperations.js +54 -50
  440. package/vscode/src/vs/editor/contrib/wordPartOperations/browser/wordPartOperations.js +21 -19
  441. package/vscode/src/vs/editor/contrib/zoneWidget/browser/zoneWidget.js +12 -9
  442. package/vscode/src/vs/editor/standalone/browser/iPadShowKeyboard/iPadShowKeyboard.js +6 -4
  443. package/vscode/src/vs/editor/standalone/browser/quickInput/standaloneQuickInputService.js +5 -3
  444. package/vscode/src/vs/editor/standalone/browser/standaloneCodeEditorService.js +5 -4
  445. package/vscode/src/vs/editor/standalone/browser/standaloneLayoutService.js +2 -2
  446. package/vscode/src/vs/editor/standalone/browser/standaloneServices.js +50 -43
  447. package/vscode/src/vs/editor/standalone/browser/standaloneThemeService.js +5 -5
  448. package/vscode/src/vs/platform/accessibility/browser/accessibilityService.js +3 -3
  449. package/vscode/src/vs/platform/accessibility/browser/accessibleView.js +58 -0
  450. package/vscode/src/vs/{workbench/contrib → platform}/accessibility/browser/accessibleView.service.js +1 -1
  451. package/vscode/src/vs/platform/accessibility/browser/accessibleViewRegistry.js +35 -0
  452. package/vscode/src/vs/platform/accessibility/common/accessibility.js +7 -1
  453. package/vscode/src/vs/platform/accessibilitySignal/browser/accessibilitySignalService.d.ts +3 -0
  454. package/vscode/src/vs/platform/accessibilitySignal/browser/accessibilitySignalService.js +61 -51
  455. package/vscode/src/vs/platform/accessibilitySignal/browser/accessibilitySignalService.service.d.ts +1 -0
  456. package/vscode/src/vs/platform/action/common/action.d.ts +4 -0
  457. package/vscode/src/vs/platform/actionWidget/browser/actionList.js +13 -8
  458. package/vscode/src/vs/platform/actionWidget/browser/actionWidget.js +16 -14
  459. package/vscode/src/vs/platform/actions/browser/dropdownWithPrimaryActionViewItem.js +3 -2
  460. package/vscode/src/vs/platform/actions/browser/menuEntryActionViewItem.js +6 -4
  461. package/vscode/src/vs/platform/actions/browser/toolbar.js +10 -4
  462. package/vscode/src/vs/platform/actions/common/actions.contribution.js +1 -0
  463. package/vscode/src/vs/platform/actions/common/actions.d.ts +3 -0
  464. package/vscode/src/vs/platform/actions/common/actions.js +14 -10
  465. package/vscode/src/vs/platform/actions/common/menuService.js +9 -8
  466. package/vscode/src/vs/platform/clipboard/browser/clipboardService.js +5 -5
  467. package/vscode/src/vs/platform/configuration/common/configuration.js +20 -9
  468. package/vscode/src/vs/platform/configuration/common/configurationModels.js +4 -3
  469. package/vscode/src/vs/platform/configuration/common/configurationRegistry.js +15 -15
  470. package/vscode/src/vs/platform/contextkey/browser/contextKeyService.js +4 -2
  471. package/vscode/src/vs/platform/contextkey/common/contextkey.js +98 -78
  472. package/vscode/src/vs/platform/contextkey/common/scanner.js +94 -69
  473. package/vscode/src/vs/platform/contextview/browser/contextMenuHandler.js +2 -2
  474. package/vscode/src/vs/platform/contextview/browser/contextViewService.js +6 -6
  475. package/vscode/src/vs/platform/diagnostics/common/diagnostics.js +4 -1
  476. package/vscode/src/vs/platform/editor/common/editor.js +14 -1
  477. package/vscode/src/vs/platform/extensionManagement/common/extensionEnablementService.js +9 -8
  478. package/vscode/src/vs/platform/extensionManagement/common/extensionManagement.d.ts +1 -0
  479. package/vscode/src/vs/platform/extensionManagement/common/extensionManagement.js +106 -61
  480. package/vscode/src/vs/platform/extensionManagement/common/extensionManagementUtil.js +5 -3
  481. package/vscode/src/vs/platform/extensionManagement/common/extensionStorage.js +13 -12
  482. package/vscode/src/vs/platform/extensionManagement/common/extensionsProfileScannerService.js +16 -9
  483. package/vscode/src/vs/platform/extensionManagement/common/extensionsScannerService.js +26 -26
  484. package/vscode/src/vs/platform/extensionResourceLoader/common/extensionResourceLoader.js +6 -4
  485. package/vscode/src/vs/platform/extensions/common/extensions.js +22 -1
  486. package/vscode/src/vs/platform/externalServices/common/serviceMachineId.js +3 -2
  487. package/vscode/src/vs/platform/files/browser/htmlFileSystemProvider.js +4 -4
  488. package/vscode/src/vs/platform/files/common/files.js +53 -25
  489. package/vscode/src/vs/platform/files/common/inMemoryFilesystemProvider.js +10 -10
  490. package/vscode/src/vs/platform/files/common/watcher.js +26 -10
  491. package/vscode/src/vs/platform/history/browser/contextScopedHistoryWidget.js +8 -7
  492. package/vscode/src/vs/platform/hover/browser/hover.js +5 -4
  493. package/vscode/src/vs/platform/instantiation/common/extensions.js +6 -1
  494. package/vscode/src/vs/platform/instantiation/common/instantiation.d.ts +5 -1
  495. package/vscode/src/vs/platform/instantiation/common/instantiationService.js +16 -7
  496. package/vscode/src/vs/platform/issue/common/issue.service.js +3 -0
  497. package/vscode/src/vs/platform/keybinding/common/abstractKeybindingService.js +7 -6
  498. package/vscode/src/vs/platform/keybinding/common/keybindingResolver.js +15 -9
  499. package/vscode/src/vs/platform/keybinding/common/keybindingsRegistry.d.ts +3 -0
  500. package/vscode/src/vs/platform/keybinding/common/keybindingsRegistry.js +12 -4
  501. package/vscode/src/vs/platform/keybinding/common/resolvedKeybindingItem.js +2 -1
  502. package/vscode/src/vs/platform/keybinding/common/usLayoutResolvedKeybinding.js +64 -63
  503. package/vscode/src/vs/platform/label/common/label.js +7 -0
  504. package/vscode/src/vs/platform/languagePacks/common/localizedStrings.js +11 -0
  505. package/vscode/src/vs/platform/list/browser/listService.js +3 -2
  506. package/vscode/src/vs/platform/markers/common/markerService.js +1 -0
  507. package/vscode/src/vs/platform/markers/common/markers.js +6 -1
  508. package/vscode/src/vs/platform/observable/common/platformObservableUtils.js +19 -0
  509. package/vscode/src/vs/platform/opener/browser/link.js +2 -1
  510. package/vscode/src/vs/platform/product/common/product.js +1 -1
  511. package/vscode/src/vs/platform/progress/common/progress.js +10 -47
  512. package/vscode/src/vs/platform/quickinput/browser/pickerQuickAccess.js +7 -0
  513. package/vscode/src/vs/platform/quickinput/browser/quickAccess.js +9 -8
  514. package/vscode/src/vs/platform/quickinput/browser/quickInput.js +81 -113
  515. package/vscode/src/vs/platform/quickinput/browser/quickInputActions.js +145 -0
  516. package/vscode/src/vs/platform/quickinput/browser/quickInputBox.js +3 -2
  517. package/vscode/src/vs/platform/quickinput/browser/quickInputController.js +39 -13
  518. package/vscode/src/vs/platform/quickinput/browser/quickInputService.js +1 -0
  519. package/vscode/src/vs/platform/quickinput/browser/quickInputTree.js +63 -85
  520. package/vscode/src/vs/platform/quickinput/browser/quickInputUtils.js +2 -1
  521. package/vscode/src/vs/platform/quickinput/browser/quickPickPin.js +3 -2
  522. package/vscode/src/vs/platform/quickinput/common/quickAccess.d.ts +16 -0
  523. package/vscode/src/vs/platform/quickinput/common/quickInput.d.ts +76 -1
  524. package/vscode/src/vs/platform/quickinput/common/quickInput.js +19 -1
  525. package/vscode/src/vs/platform/quickinput/common/quickInput.service.d.ts +5 -1
  526. package/vscode/src/vs/platform/remote/common/remoteAgentConnection.js +29 -15
  527. package/vscode/src/vs/platform/remote/common/remoteAuthorityResolver.js +8 -3
  528. package/vscode/src/vs/platform/request/common/request.js +2 -2
  529. package/vscode/src/vs/platform/storage/common/storage.js +22 -22
  530. package/vscode/src/vs/platform/telemetry/common/telemetry.js +15 -1
  531. package/vscode/src/vs/platform/telemetry/common/telemetry.service.d.ts +1 -0
  532. package/vscode/src/vs/platform/telemetry/common/telemetryUtils.js +12 -12
  533. package/vscode/src/vs/platform/terminal/common/capabilities/capabilities.d.ts +1 -0
  534. package/vscode/src/vs/platform/terminal/common/capabilities/capabilities.js +14 -0
  535. package/vscode/src/vs/platform/terminal/common/terminal.js +151 -1
  536. package/vscode/src/vs/platform/theme/common/colorUtils.js +25 -15
  537. package/vscode/src/vs/platform/theme/common/colors/baseColors.js +1 -1
  538. package/vscode/src/vs/platform/theme/common/colors/editorColors.js +66 -64
  539. package/vscode/src/vs/platform/tunnel/common/tunnel.js +3 -1
  540. package/vscode/src/vs/platform/undoRedo/common/undoRedo.js +6 -1
  541. package/vscode/src/vs/platform/undoRedo/common/undoRedoService.js +29 -24
  542. package/vscode/src/vs/platform/update/common/update.js +37 -10
  543. package/vscode/src/vs/platform/uriIdentity/common/uriIdentityService.js +3 -1
  544. package/vscode/src/vs/platform/userDataProfile/common/userDataProfile.js +12 -3
  545. package/vscode/src/vs/platform/userDataSync/common/abstractSynchronizer.js +56 -58
  546. package/vscode/src/vs/platform/userDataSync/common/userDataSync.js +75 -8
  547. package/vscode/src/vs/platform/userDataSync/common/userDataSyncMachines.js +6 -5
  548. package/vscode/src/vs/platform/userDataSync/common/userDataSyncStoreService.js +49 -48
  549. package/vscode/src/vs/platform/window/common/window.js +24 -7
  550. package/vscode/src/vs/platform/workspace/common/workspace.js +7 -1
  551. package/vscode/src/vs/platform/workspace/common/workspaceTrust.js +7 -0
  552. package/vscode/src/vs/workbench/api/browser/statusBarService.js +12 -6
  553. package/vscode/src/vs/workbench/api/common/extHost.api.impl.js +59 -40
  554. package/vscode/src/vs/workbench/api/common/extHost.common.services.js +27 -27
  555. package/vscode/src/vs/workbench/api/common/extHost.protocol.js +68 -3
  556. package/vscode/src/vs/workbench/api/common/extHostApiCommands.js +19 -0
  557. package/vscode/src/vs/workbench/api/common/extHostAuthentication.js +6 -6
  558. package/vscode/src/vs/workbench/api/common/extHostChatAgents2.js +115 -45
  559. package/vscode/src/vs/workbench/api/common/extHostChatVariables.js +14 -9
  560. package/vscode/src/vs/workbench/api/common/extHostComments.js +14 -12
  561. package/vscode/src/vs/workbench/api/common/extHostConfiguration.js +10 -9
  562. package/vscode/src/vs/workbench/api/common/extHostCustomEditors.js +13 -8
  563. package/vscode/src/vs/workbench/api/common/extHostDebugService.js +5 -3
  564. package/vscode/src/vs/workbench/api/common/extHostEditorTabs.js +19 -19
  565. package/vscode/src/vs/workbench/api/common/extHostEmbedding.js +64 -0
  566. package/vscode/src/vs/workbench/api/common/extHostExtensionService.js +2 -2
  567. package/vscode/src/vs/workbench/api/common/extHostFileSystem.js +17 -15
  568. package/vscode/src/vs/workbench/api/common/extHostFileSystemConsumer.js +2 -2
  569. package/vscode/src/vs/workbench/api/common/extHostFileSystemEventService.js +13 -12
  570. package/vscode/src/vs/workbench/api/common/extHostFileSystemInfo.js +2 -1
  571. package/vscode/src/vs/workbench/api/common/extHostLanguageFeatures.js +79 -76
  572. package/vscode/src/vs/workbench/api/common/extHostLanguageModels.js +121 -87
  573. package/vscode/src/vs/workbench/api/common/extHostNotebook.js +24 -8
  574. package/vscode/src/vs/workbench/api/common/extHostNotebookKernels.js +1 -0
  575. package/vscode/src/vs/workbench/api/common/extHostSCM.js +34 -28
  576. package/vscode/src/vs/workbench/api/common/extHostSpeech.js +38 -2
  577. package/vscode/src/vs/workbench/api/common/extHostTask.js +2 -2
  578. package/vscode/src/vs/workbench/api/common/extHostTelemetry.js +7 -5
  579. package/vscode/src/vs/workbench/api/common/extHostTerminalService.js +8 -6
  580. package/vscode/src/vs/workbench/api/common/extHostTestItem.js +7 -7
  581. package/vscode/src/vs/workbench/api/common/extHostTesting.js +140 -45
  582. package/vscode/src/vs/workbench/api/common/extHostTimeline.js +2 -1
  583. package/vscode/src/vs/workbench/api/common/extHostTypeConverters.js +259 -278
  584. package/vscode/src/vs/workbench/api/common/extHostTypes.js +83 -22
  585. package/vscode/src/vs/workbench/api/common/extHostWebviewMessaging.js +23 -22
  586. package/vscode/src/vs/workbench/api/common/extHostWorkspace.js +2 -1
  587. package/vscode/src/vs/workbench/api/common/jsonValidationExtensionPoint.js +2 -2
  588. package/vscode/src/vs/workbench/api/worker/extHost.worker.services.js +3 -3
  589. package/vscode/src/vs/workbench/api/worker/extensionHostWorker.js +4 -4
  590. package/vscode/src/vs/workbench/browser/actions/developerActions.js +13 -10
  591. package/vscode/src/vs/workbench/browser/actions/layoutActions.js +95 -100
  592. package/vscode/src/vs/workbench/browser/actions/textInputActions.js +7 -6
  593. package/vscode/src/vs/workbench/browser/actions/widgetNavigationCommands.js +8 -7
  594. package/vscode/src/vs/workbench/browser/actions/windowActions.js +24 -23
  595. package/vscode/src/vs/workbench/browser/actions/workspaceActions.js +17 -16
  596. package/vscode/src/vs/workbench/browser/codeeditor.js +12 -9
  597. package/vscode/src/vs/workbench/browser/labels.js +3 -0
  598. package/vscode/src/vs/workbench/browser/parts/auxiliarybar/auxiliaryBarActions.js +11 -8
  599. package/vscode/src/vs/workbench/browser/parts/editor/breadcrumbs.js +29 -28
  600. package/vscode/src/vs/workbench/browser/parts/editor/breadcrumbsControl.js +34 -33
  601. package/vscode/src/vs/workbench/browser/parts/editor/breadcrumbsModel.js +4 -2
  602. package/vscode/src/vs/workbench/browser/parts/editor/diffEditorCommands.js +37 -33
  603. package/vscode/src/vs/workbench/browser/parts/editor/editor.contribution._autosave.js +2 -2
  604. package/vscode/src/vs/workbench/browser/parts/editor/editor.js +2 -0
  605. package/vscode/src/vs/workbench/browser/parts/editor/editorActions.js +224 -219
  606. package/vscode/src/vs/workbench/browser/parts/editor/editorAutoSave.js +30 -27
  607. package/vscode/src/vs/workbench/browser/parts/editor/editorCommands.js +204 -161
  608. package/vscode/src/vs/workbench/browser/parts/editor/editorGroupView.js +151 -80
  609. package/vscode/src/vs/workbench/browser/parts/editor/editorGroupWatermark.js +9 -5
  610. package/vscode/src/vs/workbench/browser/parts/editor/editorPane.js +4 -3
  611. package/vscode/src/vs/workbench/browser/parts/editor/editorPanes.js +3 -3
  612. package/vscode/src/vs/workbench/browser/parts/editor/editorPlaceholder.js +5 -3
  613. package/vscode/src/vs/workbench/browser/parts/editor/editorQuickAccess.js +7 -6
  614. package/vscode/src/vs/workbench/browser/parts/editor/editorStatus.js +28 -22
  615. package/vscode/src/vs/workbench/browser/parts/editor/editorTabsControl.js +12 -10
  616. package/vscode/src/vs/workbench/browser/parts/editor/editorTitleControl.js +3 -0
  617. package/vscode/src/vs/workbench/browser/parts/editor/editorsObserver.js +19 -17
  618. package/vscode/src/vs/workbench/browser/parts/editor/media/editortabscontrol.css.js +1 -1
  619. package/vscode/src/vs/workbench/browser/parts/editor/media/multieditortabscontrol.css.js +1 -1
  620. package/vscode/src/vs/workbench/browser/parts/editor/multiEditorTabsControl.js +218 -76
  621. package/vscode/src/vs/workbench/browser/parts/editor/multiRowEditorTabsControl.js +4 -0
  622. package/vscode/src/vs/workbench/browser/parts/editor/noEditorTabsControl.js +1 -0
  623. package/vscode/src/vs/workbench/browser/parts/editor/sideBySideEditor.js +16 -15
  624. package/vscode/src/vs/workbench/browser/parts/editor/singleEditorTabsControl.js +10 -11
  625. package/vscode/src/vs/workbench/browser/parts/editor/textCodeEditor.js +2 -1
  626. package/vscode/src/vs/workbench/browser/parts/editor/textDiffEditor.js +7 -5
  627. package/vscode/src/vs/workbench/browser/parts/editor/textEditor.js +12 -10
  628. package/vscode/src/vs/workbench/browser/parts/editor/textResourceEditor.js +7 -4
  629. package/vscode/src/vs/workbench/browser/parts/globalCompositeBar.js +13 -9
  630. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsAlerts.js +3 -2
  631. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsCenter.js +10 -8
  632. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsCommands.js +33 -33
  633. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsStatus.js +8 -6
  634. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsToasts.js +12 -8
  635. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsViewer.js +12 -6
  636. package/vscode/src/vs/workbench/browser/parts/paneCompositePart.d.ts +1 -1
  637. package/vscode/src/vs/workbench/browser/parts/panel/panelActions.js +32 -36
  638. package/vscode/src/vs/workbench/browser/parts/sidebar/sidebarPart.d.ts +1 -1
  639. package/vscode/src/vs/workbench/browser/parts/titlebar/media/menubarControl.css.js +1 -1
  640. package/vscode/src/vs/workbench/browser/parts/titlebar/menubarControl.js +22 -16
  641. package/vscode/src/vs/workbench/browser/parts/titlebar/windowTitle.js +21 -14
  642. package/vscode/src/vs/workbench/browser/parts/views/treeView.js +8 -12
  643. package/vscode/src/vs/workbench/browser/parts/views/viewFilter.d.ts +2 -0
  644. package/vscode/src/vs/workbench/browser/parts/views/viewFilter.js +13 -6
  645. package/vscode/src/vs/workbench/browser/parts/views/viewPane.js +13 -9
  646. package/vscode/src/vs/workbench/browser/parts/views/viewPaneContainer.js +57 -46
  647. package/vscode/src/vs/workbench/browser/window.js +329 -0
  648. package/vscode/src/vs/workbench/browser/workbench.contribution.js +207 -199
  649. package/vscode/src/vs/workbench/common/configuration.js +94 -20
  650. package/vscode/src/vs/workbench/common/contextkeys.js +50 -40
  651. package/vscode/src/vs/workbench/common/contributions.js +23 -22
  652. package/vscode/src/vs/workbench/common/editor/diffEditorInput.js +16 -16
  653. package/vscode/src/vs/workbench/common/editor/editorGroupModel.js +125 -63
  654. package/vscode/src/vs/workbench/common/editor/editorInput.js +6 -6
  655. package/vscode/src/vs/workbench/common/editor/editorOptions.js +5 -4
  656. package/vscode/src/vs/workbench/common/editor/filteredEditorGroupModel.js +9 -6
  657. package/vscode/src/vs/workbench/common/editor/resourceEditorInput.js +13 -12
  658. package/vscode/src/vs/workbench/common/editor/sideBySideEditorInput.js +7 -7
  659. package/vscode/src/vs/workbench/common/editor/textEditorModel.js +3 -2
  660. package/vscode/src/vs/workbench/common/editor.d.ts +13 -11
  661. package/vscode/src/vs/workbench/common/editor.js +49 -1
  662. package/vscode/src/vs/workbench/common/memento.js +10 -9
  663. package/vscode/src/vs/workbench/common/notifications.js +32 -11
  664. package/vscode/src/vs/workbench/common/theme.js +167 -137
  665. package/vscode/src/vs/workbench/common/views.js +5 -6
  666. package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibilityConfiguration.js +477 -378
  667. package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibleViewActions.js +87 -49
  668. package/vscode/src/vs/workbench/contrib/accessibility/browser/editorAccessibilityHelp.js +19 -29
  669. package/vscode/src/vs/workbench/contrib/accessibility/common/accessibilityCommands.js +15 -0
  670. package/vscode/src/vs/workbench/contrib/callHierarchy/common/callHierarchy.js +6 -1
  671. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatActions.js +74 -48
  672. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatExecuteActions.js +10 -8
  673. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQuickInputActions.js +5 -3
  674. package/vscode/src/vs/workbench/contrib/chat/browser/chatAccessibilityProvider.js +3 -2
  675. package/vscode/src/vs/workbench/contrib/chat/browser/chatAgentHover.js +50 -43
  676. package/vscode/src/vs/workbench/contrib/chat/browser/chatConfirmationWidget.js +47 -0
  677. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditorInput.js +2 -1
  678. package/vscode/src/vs/workbench/contrib/chat/browser/chatFollowups.js +8 -21
  679. package/vscode/src/vs/workbench/contrib/chat/browser/chatInputPart.js +101 -47
  680. package/vscode/src/vs/workbench/contrib/chat/browser/chatListRenderer.js +276 -140
  681. package/vscode/src/vs/workbench/contrib/chat/browser/chatMarkdownDecorationsRenderer.js +120 -29
  682. package/vscode/src/vs/workbench/contrib/chat/browser/chatMarkdownRenderer.js +65 -0
  683. package/vscode/src/vs/workbench/contrib/chat/browser/chatWidget.js +51 -34
  684. package/vscode/src/vs/workbench/contrib/chat/browser/codeBlockPart.css.js +1 -1
  685. package/vscode/src/vs/workbench/contrib/chat/browser/codeBlockPart.js +55 -34
  686. package/vscode/src/vs/workbench/contrib/chat/browser/contrib/chatDynamicVariables.js +20 -18
  687. package/vscode/src/vs/workbench/contrib/chat/browser/media/chat.css.js +1 -1
  688. package/vscode/src/vs/workbench/contrib/chat/browser/media/chatAgentHover.css.js +1 -1
  689. package/vscode/src/vs/workbench/contrib/chat/browser/media/chatConfirmationWidget.css.js +4 -0
  690. package/vscode/src/vs/workbench/contrib/chat/common/annotations.js +7 -7
  691. package/vscode/src/vs/workbench/contrib/chat/common/chatAgents.js +79 -23
  692. package/vscode/src/vs/workbench/contrib/chat/common/chatContextKeys.js +2 -1
  693. package/vscode/src/vs/workbench/contrib/chat/common/chatModel.js +189 -103
  694. package/vscode/src/vs/workbench/contrib/chat/common/chatParserTypes.js +9 -10
  695. package/vscode/src/vs/workbench/contrib/chat/common/chatRequestParser.js +21 -5
  696. package/vscode/src/vs/workbench/contrib/chat/common/chatService.js +6 -6
  697. package/vscode/src/vs/workbench/contrib/chat/common/chatViewModel.js +19 -12
  698. package/vscode/src/vs/workbench/contrib/chat/common/chatWordCounter.js +8 -15
  699. package/vscode/src/vs/workbench/contrib/chat/common/codeBlockModelCollection.js +11 -2
  700. package/vscode/src/vs/workbench/contrib/chat/common/languageModels.js +170 -0
  701. package/vscode/src/vs/workbench/contrib/codeActions/browser/codeActions.contribution.js +2 -1
  702. package/vscode/src/vs/workbench/contrib/codeActions/browser/codeActionsContribution.js +2 -2
  703. package/vscode/src/vs/workbench/contrib/codeEditor/browser/dictation/editorDictation.js +20 -12
  704. package/vscode/src/vs/workbench/contrib/codeEditor/browser/diffEditorAccessibilityHelp.js +77 -0
  705. package/vscode/src/vs/workbench/contrib/codeEditor/browser/diffEditorHelper.js +9 -89
  706. package/vscode/src/vs/workbench/contrib/codeEditor/browser/editorFeatures.js +2 -2
  707. package/vscode/src/vs/workbench/contrib/codeEditor/browser/editorLineNumberMenu.js +7 -5
  708. package/vscode/src/vs/workbench/contrib/codeEditor/browser/find/simpleFindWidget.js +4 -7
  709. package/vscode/src/vs/workbench/contrib/codeEditor/browser/largeFileOptimizations.js +2 -2
  710. package/vscode/src/vs/workbench/contrib/codeEditor/browser/menuPreventer.js +5 -4
  711. package/vscode/src/vs/workbench/contrib/codeEditor/browser/quickaccess/gotoSymbolQuickAccess.js +10 -6
  712. package/vscode/src/vs/workbench/contrib/codeEditor/browser/saveParticipants.js +15 -12
  713. package/vscode/src/vs/workbench/contrib/codeEditor/browser/simpleEditorOptions.js +2 -1
  714. package/vscode/src/vs/workbench/contrib/codeEditor/browser/suggestEnabledInput/suggestEnabledInput.js +5 -3
  715. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleMultiCursorModifier.js +2 -1
  716. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleWordWrap.js +17 -14
  717. package/vscode/src/vs/workbench/contrib/codeEditor/browser/workbenchReferenceSearch.js +2 -2
  718. package/vscode/src/vs/workbench/contrib/comments/browser/commentFormActions.js +2 -1
  719. package/vscode/src/vs/workbench/contrib/comments/browser/commentGlyphWidget.js +2 -1
  720. package/vscode/src/vs/workbench/contrib/comments/browser/commentNode.js +14 -12
  721. package/vscode/src/vs/workbench/contrib/comments/browser/commentReply.js +23 -15
  722. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadAdditionalActions.js +2 -1
  723. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadBody.js +3 -2
  724. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadHeader.js +3 -1
  725. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadWidget.js +12 -10
  726. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadZoneWidget.js +11 -14
  727. package/vscode/src/vs/workbench/contrib/comments/browser/commentsAccessibility.js +49 -76
  728. package/vscode/src/vs/workbench/contrib/comments/browser/commentsController.js +50 -40
  729. package/vscode/src/vs/workbench/contrib/comments/browser/commentsTreeViewer.js +15 -8
  730. package/vscode/src/vs/workbench/contrib/comments/browser/commentsView.js +4 -2
  731. package/vscode/src/vs/workbench/contrib/comments/browser/commentsViewActions.js +8 -6
  732. package/vscode/src/vs/workbench/contrib/comments/browser/simpleCommentEditor.js +9 -8
  733. package/vscode/src/vs/workbench/contrib/comments/common/commentCommandIds.js +15 -0
  734. package/vscode/src/vs/workbench/contrib/contextmenu/browser/contextmenu.contribution.js +2 -1
  735. package/vscode/src/vs/workbench/contrib/customEditor/browser/customEditorInput.js +14 -14
  736. package/vscode/src/vs/workbench/contrib/debug/browser/baseDebugView.js +3 -2
  737. package/vscode/src/vs/workbench/contrib/debug/browser/breakpointEditorContribution.js +19 -17
  738. package/vscode/src/vs/workbench/contrib/debug/browser/breakpointWidget.js +33 -32
  739. package/vscode/src/vs/workbench/contrib/debug/browser/breakpointsView.js +25 -20
  740. package/vscode/src/vs/workbench/contrib/debug/browser/callStackEditorContribution.js +4 -3
  741. package/vscode/src/vs/workbench/contrib/debug/browser/debugCommands.js +62 -60
  742. package/vscode/src/vs/workbench/contrib/debug/common/debug.js +40 -4
  743. package/vscode/src/vs/workbench/contrib/debug/common/debug.service.d.ts +2 -2
  744. package/vscode/src/vs/workbench/contrib/debug/common/debugModel.d.ts +4 -1
  745. package/vscode/src/vs/workbench/contrib/debug/common/debugModel.js +15 -16
  746. package/vscode/src/vs/workbench/contrib/debug/common/debugSource.js +2 -1
  747. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsActions.js +118 -109
  748. package/vscode/src/vs/workbench/contrib/extensions/browser/media/extensionActions.css.js +1 -1
  749. package/vscode/src/vs/workbench/contrib/extensions/common/extensions.js +24 -1
  750. package/vscode/src/vs/workbench/contrib/extensions/common/extensionsInput.js +2 -1
  751. package/vscode/src/vs/workbench/contrib/extensions/common/extensionsUtils.js +4 -2
  752. package/vscode/src/vs/workbench/contrib/files/browser/editors/binaryFileEditor.js +3 -2
  753. package/vscode/src/vs/workbench/contrib/files/browser/editors/fileEditorInput.js +23 -16
  754. package/vscode/src/vs/workbench/contrib/files/browser/editors/textFileEditor.js +12 -9
  755. package/vscode/src/vs/workbench/contrib/files/browser/editors/textFileEditorTracker.js +3 -2
  756. package/vscode/src/vs/workbench/contrib/files/browser/editors/textFileSaveErrorHandler.js +14 -12
  757. package/vscode/src/vs/workbench/contrib/files/browser/explorerFileContrib.js +10 -2
  758. package/vscode/src/vs/workbench/contrib/files/browser/explorerViewlet.js +9 -7
  759. package/vscode/src/vs/workbench/contrib/files/browser/fileActions.js +12 -9
  760. package/vscode/src/vs/workbench/contrib/files/browser/fileCommands._save.js +23 -22
  761. package/vscode/src/vs/workbench/contrib/files/browser/fileImportExport.js +13 -11
  762. package/vscode/src/vs/workbench/contrib/files/browser/files.contribution._configuration.js +25 -25
  763. package/vscode/src/vs/workbench/contrib/files/browser/files.contribution._editorPane.js +7 -7
  764. package/vscode/src/vs/workbench/contrib/files/browser/files.js +8 -1
  765. package/vscode/src/vs/workbench/contrib/files/browser/media/explorerviewlet.css.js +1 -1
  766. package/vscode/src/vs/workbench/contrib/files/browser/views/emptyView.js +2 -2
  767. package/vscode/src/vs/workbench/contrib/files/browser/views/explorerView.js +16 -10
  768. package/vscode/src/vs/workbench/contrib/files/browser/views/explorerViewer.js +55 -111
  769. package/vscode/src/vs/workbench/contrib/files/browser/views/openEditorsView.js +42 -35
  770. package/vscode/src/vs/workbench/contrib/files/common/dirtyFilesIndicator.js +2 -1
  771. package/vscode/src/vs/workbench/contrib/files/common/explorerFileNestingTrie.js +15 -8
  772. package/vscode/src/vs/workbench/contrib/files/common/explorerModel.js +5 -3
  773. package/vscode/src/vs/workbench/contrib/files/common/files.js +25 -2
  774. package/vscode/src/vs/workbench/contrib/folding/browser/folding.contribution.js +2 -1
  775. package/vscode/src/vs/workbench/contrib/format/browser/formatActionsMultiple.js +8 -6
  776. package/vscode/src/vs/workbench/contrib/format/browser/formatActionsNone.js +7 -4
  777. package/vscode/src/vs/workbench/contrib/format/browser/formatModified.js +2 -2
  778. package/vscode/src/vs/workbench/contrib/inlayHints/browser/inlayHintsAccessibilty.js +6 -4
  779. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatActions.js +82 -137
  780. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatContentWidget.js +11 -8
  781. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatController.js +292 -328
  782. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSession.js +69 -67
  783. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionServiceImpl.js +79 -417
  784. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatStrategies.js +50 -61
  785. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatWidget.js +32 -124
  786. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatZoneWidget.js +41 -20
  787. package/vscode/src/vs/workbench/contrib/inlineChat/browser/media/inlineChat.css.js +1 -1
  788. package/vscode/src/vs/workbench/contrib/inlineChat/browser/utils.js +5 -1
  789. package/vscode/src/vs/workbench/contrib/inlineChat/common/inlineChat.js +59 -53
  790. package/vscode/src/vs/workbench/contrib/interactive/browser/interactiveEditorInput.js +5 -4
  791. package/vscode/src/vs/workbench/contrib/list/browser/list.contribution.js +2 -2
  792. package/vscode/src/vs/workbench/contrib/markers/common/markers.js +7 -2
  793. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/mergeEditorInput.js +3 -3
  794. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/mergeEditorInputModel.js +15 -13
  795. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/model/diffComputer.js +1 -1
  796. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/model/lineRange.js +3 -2
  797. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/model/mergeEditorModel.js +26 -20
  798. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/model/modifiedBaseRange.js +13 -8
  799. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/model/textModelDiffs.js +22 -10
  800. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/utils.js +5 -11
  801. package/vscode/src/vs/workbench/contrib/multiDiffEditor/browser/multiDiffEditorInput.js +4 -3
  802. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/cellStatusBar/executionStatusBarItemController.js +7 -57
  803. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/findFilters.js +25 -1
  804. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/findModel.js +7 -6
  805. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/notebookFindReplaceWidget.js +103 -23
  806. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/notebookFindWidget.js +6 -5
  807. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/cellOperations.js +16 -15
  808. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/notebookChatContext.js +2 -2
  809. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/notebookChatController.js +137 -261
  810. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/coreActions.js +26 -8
  811. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/editActions.js +25 -23
  812. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/foldingController.js +23 -21
  813. package/vscode/src/vs/workbench/contrib/notebook/browser/media/notebook.css.js +1 -1
  814. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookAccessibilityProvider.js +4 -2
  815. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookBrowser.js +21 -1
  816. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookEditor.js +16 -11
  817. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookEditorWidget.js +36 -18
  818. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookOptions.js +24 -13
  819. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellComments.js +1 -1
  820. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellContextKeys.js +8 -7
  821. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellDnd.js +3 -3
  822. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellDragRenderer.js +5 -3
  823. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellFocusIndicator.js +1 -1
  824. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellOutput.js +17 -10
  825. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellStatusPart.js +14 -9
  826. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellToolbars.js +3 -2
  827. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellWidgets.js +7 -0
  828. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/codeCell.js +11 -1
  829. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/codeCellRunToolbar.js +2 -1
  830. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/foldedCellHint.js +15 -5
  831. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/markupCell.js +7 -4
  832. package/vscode/src/vs/workbench/contrib/notebook/browser/view/notebookCellList.js +36 -25
  833. package/vscode/src/vs/workbench/contrib/notebook/browser/view/notebookCellListView.js +14 -3
  834. package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/backLayerWebView.js +20 -10
  835. package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/webviewPreloads.js +2 -1
  836. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/baseCellViewModel.js +2 -1
  837. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/codeCellViewModel.js +7 -10
  838. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/foldingModel.js +3 -2
  839. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/markupCellViewModel.js +2 -2
  840. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/notebookViewModelImpl.js +19 -9
  841. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookEditorStickyScroll.js +5 -3
  842. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookEditorToolbar.js +5 -4
  843. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookKernelQuickPickStrategy.js +15 -11
  844. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookTopCellToolbar.js +2 -2
  845. package/vscode/src/vs/workbench/contrib/notebook/common/model/notebookCellTextModel.js +4 -3
  846. package/vscode/src/vs/workbench/contrib/notebook/common/notebookCommon.js +35 -2
  847. package/vscode/src/vs/workbench/contrib/notebook/common/notebookEditorInput.js +14 -12
  848. package/vscode/src/vs/workbench/contrib/notebook/common/notebookEditorModel.js +41 -15
  849. package/vscode/src/vs/workbench/contrib/outline/browser/outline.js +8 -2
  850. package/vscode/src/vs/workbench/contrib/preferences/browser/keybindingWidgets.js +5 -3
  851. package/vscode/src/vs/workbench/contrib/preferences/browser/preferencesWidgets.js +29 -23
  852. package/vscode/src/vs/workbench/contrib/preferences/browser/settingsLayout.js +1 -1
  853. package/vscode/src/vs/workbench/contrib/preferences/browser/settingsTreeModels.js +31 -24
  854. package/vscode/src/vs/workbench/contrib/remote/browser/remoteExplorer.js +11 -8
  855. package/vscode/src/vs/workbench/contrib/remote/browser/tunnelView.js +29 -27
  856. package/vscode/src/vs/workbench/contrib/remote/browser/urlFinder.js +2 -2
  857. package/vscode/src/vs/workbench/contrib/scm/browser/dirtydiffDecorator.js +27 -45
  858. package/vscode/src/vs/workbench/contrib/scm/common/scm.js +13 -1
  859. package/vscode/src/vs/workbench/contrib/search/browser/anythingQuickAccess.js +785 -0
  860. package/vscode/src/vs/workbench/contrib/search/browser/media/anythingQuickAccess.css.js +4 -0
  861. package/vscode/src/vs/workbench/contrib/search/browser/notebookSearch/notebookSearchService.js +2 -2
  862. package/vscode/src/vs/workbench/contrib/search/browser/searchActionsFind.js +23 -22
  863. package/vscode/src/vs/workbench/contrib/search/browser/searchModel.js +36 -32
  864. package/vscode/src/vs/workbench/contrib/search/browser/symbolsQuickAccess.js +222 -0
  865. package/vscode/src/vs/workbench/contrib/search/common/cacheState.js +85 -0
  866. package/vscode/src/vs/workbench/contrib/search/common/cellSearchModel.js +3 -2
  867. package/vscode/src/vs/workbench/contrib/search/common/constants.js +49 -1
  868. package/vscode/src/vs/workbench/contrib/snippets/browser/snippetCompletionProvider.js +6 -5
  869. package/vscode/src/vs/workbench/contrib/snippets/browser/snippetsFile.js +8 -2
  870. package/vscode/src/vs/workbench/contrib/snippets/browser/snippetsService.js +16 -13
  871. package/vscode/src/vs/workbench/contrib/snippets/browser/tabCompletion.js +11 -11
  872. package/vscode/src/vs/workbench/contrib/speech/common/speechService.js +47 -30
  873. package/vscode/src/vs/workbench/contrib/tags/browser/workspaceTagsService.js +1 -0
  874. package/vscode/src/vs/workbench/contrib/tasks/common/tasks.js +80 -11
  875. package/vscode/src/vs/workbench/contrib/terminal/browser/terminal.d.ts +5 -3
  876. package/vscode/src/vs/workbench/contrib/terminal/browser/terminal.js +27 -1
  877. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalEditorInput.js +8 -5
  878. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalMenus.js +721 -0
  879. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalProcessExtHostProxy.js +9 -8
  880. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/xtermTerminal.d.ts +0 -9
  881. package/vscode/src/vs/workbench/contrib/terminal/common/terminal.d.ts +2 -5
  882. package/vscode/src/vs/workbench/contrib/terminal/common/terminal.js +166 -71
  883. package/vscode/src/vs/workbench/contrib/terminal/common/terminalContextKey.js +92 -144
  884. package/vscode/src/vs/workbench/contrib/terminal/common/terminalStrings.js +41 -0
  885. package/vscode/src/vs/workbench/contrib/terminalContrib/accessibility/common/terminal.accessibility.js +12 -0
  886. package/vscode/src/vs/workbench/contrib/terminalContrib/find/common/terminal.find.js +22 -0
  887. package/vscode/src/vs/workbench/contrib/terminalContrib/suggest/common/terminal.suggest.js +18 -0
  888. package/vscode/src/vs/workbench/contrib/testing/common/constants.js +103 -0
  889. package/vscode/src/vs/workbench/contrib/testing/common/getComputedState.js +4 -3
  890. package/vscode/src/vs/workbench/contrib/testing/common/testCoverage.js +79 -22
  891. package/vscode/src/vs/workbench/contrib/testing/common/testId.js +46 -18
  892. package/vscode/src/vs/workbench/contrib/testing/common/testItemCollection.js +51 -41
  893. package/vscode/src/vs/workbench/contrib/testing/common/testResult.js +33 -19
  894. package/vscode/src/vs/workbench/contrib/testing/common/testTypes.js +108 -38
  895. package/vscode/src/vs/workbench/contrib/testing/common/testingStates.js +19 -18
  896. package/vscode/src/vs/workbench/contrib/timeline/common/timeline.js +1 -2
  897. package/vscode/src/vs/workbench/contrib/typeHierarchy/common/typeHierarchy.js +6 -1
  898. package/vscode/src/vs/workbench/contrib/url/browser/trustedDomainService.js +77 -0
  899. package/vscode/src/vs/workbench/contrib/url/browser/trustedDomainService.service.js +3 -0
  900. package/vscode/src/vs/workbench/contrib/url/browser/trustedDomains.js +119 -0
  901. package/vscode/src/vs/workbench/contrib/webview/browser/webview.js +9 -2
  902. package/vscode/src/vs/workbench/contrib/webview/common/webview.js +4 -3
  903. package/vscode/src/vs/workbench/contrib/webviewPanel/browser/webviewEditor.js +3 -2
  904. package/vscode/src/vs/workbench/contrib/webviewPanel/browser/webviewEditorInput.js +2 -1
  905. package/vscode/src/vs/workbench/contrib/webviewPanel/browser/webviewIconManager.js +2 -1
  906. package/vscode/src/vs/workbench/contrib/webviewPanel/browser/webviewWorkbenchService.js +22 -10
  907. package/vscode/src/vs/workbench/services/authentication/browser/authenticationService.js +25 -9
  908. package/vscode/src/vs/workbench/services/auxiliaryWindow/browser/auxiliaryWindowService.js +370 -0
  909. package/vscode/src/vs/workbench/services/configuration/common/configuration.js +8 -7
  910. package/vscode/src/vs/workbench/services/driver/browser/driver.js +187 -0
  911. package/vscode/src/vs/workbench/services/editor/browser/codeEditorService.js +3 -1
  912. package/vscode/src/vs/workbench/services/editor/browser/editorService.js +42 -29
  913. package/vscode/src/vs/workbench/services/editor/common/customEditorLabelService.js +1 -0
  914. package/vscode/src/vs/workbench/services/editor/common/editorGroupColumn.js +5 -5
  915. package/vscode/src/vs/workbench/services/editor/common/editorGroupFinder.js +5 -5
  916. package/vscode/src/vs/workbench/services/editor/common/editorGroupsService.d.ts +36 -1
  917. package/vscode/src/vs/workbench/services/editor/common/editorGroupsService.js +2 -2
  918. package/vscode/src/vs/workbench/services/editor/common/editorGroupsService.service.d.ts +11 -2
  919. package/vscode/src/vs/workbench/services/editor/common/editorResolverService.js +6 -1
  920. package/vscode/src/vs/workbench/services/editor/common/editorService.service.d.ts +3 -0
  921. package/vscode/src/vs/workbench/services/extensionManagement/common/extensionManagement.d.ts +1 -0
  922. package/vscode/src/vs/workbench/services/extensionManagement/common/extensionManagement.js +20 -1
  923. package/vscode/src/vs/workbench/services/extensionManagement/common/extensionManagement.service.d.ts +1 -0
  924. package/vscode/src/vs/workbench/services/extensionRecommendations/common/extensionRecommendations.js +11 -0
  925. package/vscode/src/vs/workbench/services/extensionRecommendations/common/workspaceExtensionsConfig.js +4 -7
  926. package/vscode/src/vs/workbench/services/extensions/common/extensionDescriptionRegistry.js +8 -2
  927. package/vscode/src/vs/workbench/services/extensions/common/extensionHostKind.js +16 -10
  928. package/vscode/src/vs/workbench/services/extensions/common/extensionHostProtocol.js +18 -7
  929. package/vscode/src/vs/workbench/services/extensions/common/extensionManifestPropertiesService.js +1 -0
  930. package/vscode/src/vs/workbench/services/extensions/common/extensionRunningLocation.js +4 -3
  931. package/vscode/src/vs/workbench/services/extensions/common/extensions.js +17 -6
  932. package/vscode/src/vs/workbench/services/extensions/common/extensionsApiProposals.js +4 -4
  933. package/vscode/src/vs/workbench/services/extensions/common/extensionsRegistry.d.ts +2 -1
  934. package/vscode/src/vs/workbench/services/extensions/common/extensionsRegistry.js +5 -0
  935. package/vscode/src/vs/workbench/services/extensions/common/rpcProtocol.js +103 -64
  936. package/vscode/src/vs/workbench/services/filesConfiguration/common/filesConfigurationService.js +31 -15
  937. package/vscode/src/vs/workbench/services/{views/browser/treeViewsService.service.js → integrity/common/integrity.service.js} +2 -2
  938. package/vscode/src/vs/workbench/services/language/common/languageService.js +2 -1
  939. package/vscode/src/vs/workbench/services/layout/browser/layoutService.js +71 -24
  940. package/vscode/src/vs/workbench/services/lifecycle/common/lifecycle.js +28 -8
  941. package/vscode/src/vs/workbench/services/lifecycle/common/lifecycleService.js +11 -11
  942. package/vscode/src/vs/workbench/services/notebook/common/notebookDocumentService.js +1 -0
  943. package/vscode/src/vs/workbench/services/outline/browser/outline.js +22 -0
  944. package/vscode/src/vs/workbench/services/preferences/common/preferencesModels.js +10 -9
  945. package/vscode/src/vs/workbench/services/progress/browser/progressIndicator.js +19 -17
  946. package/vscode/src/vs/workbench/services/remote/common/remoteExplorerService.js +4 -2
  947. package/vscode/src/vs/workbench/services/remote/common/tunnelModel.js +16 -16
  948. package/vscode/src/vs/workbench/services/search/common/fileSearchManager.js +3 -2
  949. package/vscode/src/vs/workbench/services/search/common/queryBuilder.js +9 -9
  950. package/vscode/src/vs/workbench/services/search/common/replace.js +12 -11
  951. package/vscode/src/vs/workbench/services/search/common/search.js +32 -1
  952. package/vscode/src/vs/workbench/services/search/common/textSearchManager.js +6 -6
  953. package/vscode/src/vs/workbench/services/statusbar/browser/statusbar.js +6 -1
  954. package/vscode/src/vs/workbench/services/storage/browser/storageService.js +13 -13
  955. package/vscode/src/vs/workbench/services/textfile/common/encoding.js +6 -2
  956. package/vscode/src/vs/workbench/services/textfile/common/textEditorService.js +1 -0
  957. package/vscode/src/vs/workbench/services/textfile/common/textFileEditorModel.js +28 -27
  958. package/vscode/src/vs/workbench/services/textfile/common/textfiles.js +27 -3
  959. package/vscode/src/vs/workbench/services/themes/common/colorExtensionPoint.js +2 -2
  960. package/vscode/src/vs/workbench/services/themes/common/iconExtensionPoint.js +2 -2
  961. package/vscode/src/vs/workbench/services/themes/common/workbenchThemeService.js +43 -1
  962. package/vscode/src/vs/workbench/services/untitled/common/untitledTextEditorInput.js +2 -2
  963. package/vscode/src/vs/workbench/services/untitled/common/untitledTextEditorModel.js +2 -2
  964. package/vscode/src/vs/workbench/services/userDataProfile/browser/iconSelectBox.js +12 -11
  965. package/vscode/src/vs/workbench/services/userDataSync/common/userDataSync.js +19 -13
  966. package/vscode/src/vs/workbench/services/views/browser/viewsService.js +29 -25
  967. package/vscode/src/vs/workbench/services/workingCopy/common/fileWorkingCopy.js +6 -0
  968. package/vscode/src/vs/workbench/services/workingCopy/common/resourceWorkingCopy.js +3 -2
  969. package/vscode/src/vs/workbench/services/workingCopy/common/storedFileWorkingCopy.js +52 -32
  970. package/vscode/src/vs/workbench/services/workingCopy/common/workingCopy.js +7 -1
  971. package/vscode/src/vs/workbench/services/workspaces/common/workspaceTrust.js +17 -14
  972. package/vscode-dts/vscode.proposed.attributableCoverage.d.ts +28 -0
  973. package/vscode-dts/vscode.proposed.chatParticipantAdditions.d.ts +90 -97
  974. package/vscode-dts/vscode.proposed.chatParticipantPrivate.d.ts +76 -0
  975. package/vscode-dts/vscode.proposed.chatProvider.d.ts +24 -7
  976. package/vscode-dts/vscode.proposed.chatVariableResolver.d.ts +82 -2
  977. package/vscode-dts/vscode.proposed.defaultChatParticipant.d.ts +0 -5
  978. package/vscode-dts/vscode.proposed.editorHoverVerbosityLevel.d.ts +2 -2
  979. package/vscode-dts/vscode.proposed.embeddings.d.ts +33 -0
  980. package/vscode-dts/vscode.proposed.interactive.d.ts +2 -110
  981. package/vscode-dts/vscode.proposed.languageModelSystem.d.ts +17 -0
  982. package/vscode-dts/vscode.proposed.resolvers.d.ts +2 -1
  983. package/vscode-dts/vscode.proposed.speech.d.ts +26 -6
  984. package/vscode-dts/vscode.proposed.testObserver.d.ts +9 -0
  985. package/vscode/src/vs/workbench/api/common/extHostInlineChat.js +0 -194
  986. package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibleView.js +0 -876
  987. package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibleViewContributions.js +0 -407
  988. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityHelp.js +0 -196
  989. package/vscode/src/vs/workbench/contrib/inlineChat/common/inlineChat.service.js +0 -3
  990. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/cellCommands/cellCommands.js +0 -595
  991. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/cellDiagnostics/cellDiagnostics.js +0 -102
  992. package/vscode-dts/vscode.proposed.chatParticipant.d.ts +0 -458
  993. package/vscode-dts/vscode.proposed.debugFocus.d.ts +0 -66
  994. package/vscode-dts/vscode.proposed.languageModels.d.ts +0 -291
  995. package/vscode-dts/vscode.proposed.testPreserveFocus.d.ts +0 -28
  996. /package/vscode/src/vs/workbench/{services → contrib}/issue/browser/issueTroubleshoot.service.js +0 -0
  997. /package/vscode/src/vs/workbench/{services → contrib}/issue/common/issue.service.js +0 -0
@@ -0,0 +1,370 @@
1
+ import { __decorate, __param } from '../../../../../../../external/tslib/tslib.es6.js';
2
+ import { localizeWithPath } from '../../../../nls.js';
3
+ import { mark } from '../../../../base/common/performance.js';
4
+ import { Emitter, Event } from '../../../../base/common/event.js';
5
+ import { getWindowId, registerWindow, getActiveWindow, createMetaElement, copyAttributes, createLinkElement, cloneGlobalStylesheets, sharedMutationObserver, isHTMLElement, position, trackAttributes, addDisposableListener, EventType, EventHelper, ModifierKeyEmitter, getClientArea, isGlobalStylesheet } from '../../../../base/browser/dom.js';
6
+ import { mainWindow, ensureCodeWindow } from '../../../../base/browser/window.js';
7
+ import { Disposable, toDisposable, DisposableStore } from '../../../../base/common/lifecycle.js';
8
+ import '../../../../platform/instantiation/common/extensions.js';
9
+ import { IWorkbenchLayoutService } from '../../layout/browser/layoutService.service.js';
10
+ import { onUnexpectedError } from '../../../../base/common/errors.js';
11
+ import { isFirefox, isWeb } from '../../../../base/common/platform.js';
12
+ import { WindowMinimumSize } from '../../../../platform/window/common/window.js';
13
+ import { IDialogService } from '../../../../platform/dialogs/common/dialogs.service.js';
14
+ import Severity$1 from '../../../../base/common/severity.js';
15
+ import { BaseWindow } from '../../../browser/window.js';
16
+ import { IConfigurationService } from '../../../../platform/configuration/common/configuration.service.js';
17
+ import { ITelemetryService } from '../../../../platform/telemetry/common/telemetry.service.js';
18
+ import { Barrier } from '../../../../base/common/async.js';
19
+ import { IHostService } from '../../host/browser/host.service.js';
20
+ import { IWorkbenchEnvironmentService } from '../../environment/common/environmentService.service.js';
21
+ import { coalesce } from '../../../../base/common/arrays.js';
22
+ import { getZoomLevel } from '../../../../base/browser/browser.js';
23
+ import '../../../../platform/instantiation/common/instantiation.js';
24
+ var BrowserAuxiliaryWindowService_1;
25
+ const _moduleId = "vs/workbench/services/auxiliaryWindow/browser/auxiliaryWindowService";
26
+ var AuxiliaryWindowMode;
27
+ ( ((function(AuxiliaryWindowMode) {
28
+ AuxiliaryWindowMode[AuxiliaryWindowMode["Maximized"] = 0] = "Maximized";
29
+ AuxiliaryWindowMode[AuxiliaryWindowMode["Normal"] = 1] = "Normal";
30
+ AuxiliaryWindowMode[AuxiliaryWindowMode["Fullscreen"] = 2] = "Fullscreen";
31
+ })(AuxiliaryWindowMode || (AuxiliaryWindowMode = {}))));
32
+ let AuxiliaryWindow = class AuxiliaryWindow extends BaseWindow {
33
+ constructor(window, container, stylesHaveLoaded, configurationService, hostService, environmentService) {
34
+ super(window, undefined, hostService, environmentService);
35
+ this.window = window;
36
+ this.container = container;
37
+ this.configurationService = configurationService;
38
+ this._onWillLayout = this._register(( (new Emitter())));
39
+ this.onWillLayout = this._onWillLayout.event;
40
+ this._onDidLayout = this._register(( (new Emitter())));
41
+ this.onDidLayout = this._onDidLayout.event;
42
+ this._onBeforeUnload = this._register(( (new Emitter())));
43
+ this.onBeforeUnload = this._onBeforeUnload.event;
44
+ this._onUnload = this._register(( (new Emitter())));
45
+ this.onUnload = this._onUnload.event;
46
+ this._onWillDispose = this._register(( (new Emitter())));
47
+ this.onWillDispose = this._onWillDispose.event;
48
+ this.whenStylesHaveLoaded = stylesHaveLoaded.wait().then(() => undefined);
49
+ this.registerListeners();
50
+ }
51
+ registerListeners() {
52
+ this._register(addDisposableListener(this.window, EventType.BEFORE_UNLOAD, (e) => this.handleBeforeUnload(e)));
53
+ this._register(addDisposableListener(this.window, EventType.UNLOAD, () => this.handleUnload()));
54
+ this._register(addDisposableListener(this.window, 'unhandledrejection', e => {
55
+ onUnexpectedError(e.reason);
56
+ e.preventDefault();
57
+ }));
58
+ this._register(addDisposableListener(this.window, EventType.RESIZE, () => this.layout()));
59
+ this._register(addDisposableListener(this.container, EventType.SCROLL, () => this.container.scrollTop = 0));
60
+ if (isWeb) {
61
+ this._register(addDisposableListener(this.container, EventType.DROP, e => EventHelper.stop(e, true)));
62
+ this._register(addDisposableListener(this.container, EventType.WHEEL, e => e.preventDefault(), { passive: false }));
63
+ this._register(addDisposableListener(this.container, EventType.CONTEXT_MENU, e => EventHelper.stop(e, true)));
64
+ }
65
+ else {
66
+ this._register(addDisposableListener(this.window.document.body, EventType.DRAG_OVER, (e) => EventHelper.stop(e)));
67
+ this._register(addDisposableListener(this.window.document.body, EventType.DROP, (e) => EventHelper.stop(e)));
68
+ }
69
+ }
70
+ handleBeforeUnload(e) {
71
+ let veto;
72
+ this._onBeforeUnload.fire({
73
+ veto(reason) {
74
+ if (reason) {
75
+ veto = reason;
76
+ }
77
+ }
78
+ });
79
+ if (veto) {
80
+ this.handleVetoBeforeClose(e, veto);
81
+ return;
82
+ }
83
+ const confirmBeforeCloseSetting = this.configurationService.getValue('window.confirmBeforeClose');
84
+ const confirmBeforeClose = confirmBeforeCloseSetting === 'always' || (confirmBeforeCloseSetting === 'keyboardOnly' && ModifierKeyEmitter.getInstance().isModifierPressed);
85
+ if (confirmBeforeClose) {
86
+ this.confirmBeforeClose(e);
87
+ }
88
+ }
89
+ handleVetoBeforeClose(e, reason) {
90
+ this.preventUnload(e);
91
+ }
92
+ preventUnload(e) {
93
+ e.preventDefault();
94
+ e.returnValue = ( localizeWithPath(
95
+ _moduleId,
96
+ 0,
97
+ "Changes that you made may not be saved. Please check press 'Cancel' and try again."
98
+ ));
99
+ }
100
+ confirmBeforeClose(e) {
101
+ this.preventUnload(e);
102
+ }
103
+ handleUnload() {
104
+ this._onUnload.fire();
105
+ }
106
+ layout() {
107
+ const dimension = getClientArea(this.window.document.body, this.container);
108
+ this._onWillLayout.fire(dimension);
109
+ this._onDidLayout.fire(dimension);
110
+ }
111
+ createState() {
112
+ return {
113
+ bounds: {
114
+ x: this.window.screenX,
115
+ y: this.window.screenY,
116
+ width: this.window.outerWidth,
117
+ height: this.window.outerHeight
118
+ },
119
+ zoomLevel: getZoomLevel(this.window)
120
+ };
121
+ }
122
+ dispose() {
123
+ if (this._store.isDisposed) {
124
+ return;
125
+ }
126
+ this._onWillDispose.fire();
127
+ super.dispose();
128
+ }
129
+ };
130
+ AuxiliaryWindow = ( (__decorate([
131
+ ( (__param(3, IConfigurationService))),
132
+ ( (__param(4, IHostService))),
133
+ ( (__param(5, IWorkbenchEnvironmentService)))
134
+ ], AuxiliaryWindow)));
135
+ let BrowserAuxiliaryWindowService = class BrowserAuxiliaryWindowService extends Disposable {
136
+ static { BrowserAuxiliaryWindowService_1 = this; }
137
+ static { this.DEFAULT_SIZE = { width: 800, height: 600 }; }
138
+ static { this.WINDOW_IDS = getWindowId(mainWindow) + 1; }
139
+ constructor(layoutService, dialogService, configurationService, telemetryService, hostService, environmentService) {
140
+ super();
141
+ this.layoutService = layoutService;
142
+ this.dialogService = dialogService;
143
+ this.configurationService = configurationService;
144
+ this.telemetryService = telemetryService;
145
+ this.hostService = hostService;
146
+ this.environmentService = environmentService;
147
+ this._onDidOpenAuxiliaryWindow = this._register(( (new Emitter())));
148
+ this.onDidOpenAuxiliaryWindow = this._onDidOpenAuxiliaryWindow.event;
149
+ this.windows = ( (new Map()));
150
+ }
151
+ async open(options) {
152
+ mark('code/auxiliaryWindow/willOpen');
153
+ const targetWindow = await this.openWindow(options);
154
+ if (!targetWindow) {
155
+ throw ( (new Error(localizeWithPath(_moduleId, 1, "Unable to open a new window."))));
156
+ }
157
+ const resolvedWindowId = await this.resolveWindowId(targetWindow);
158
+ ensureCodeWindow(targetWindow, resolvedWindowId);
159
+ const containerDisposables = ( (new DisposableStore()));
160
+ const { container, stylesLoaded } = this.createContainer(targetWindow, containerDisposables, options);
161
+ const auxiliaryWindow = this.createAuxiliaryWindow(targetWindow, container, stylesLoaded);
162
+ const registryDisposables = ( (new DisposableStore()));
163
+ this.windows.set(targetWindow.vscodeWindowId, auxiliaryWindow);
164
+ registryDisposables.add(toDisposable(() => this.windows.delete(targetWindow.vscodeWindowId)));
165
+ const eventDisposables = ( (new DisposableStore()));
166
+ Event.once(auxiliaryWindow.onWillDispose)(() => {
167
+ targetWindow.close();
168
+ containerDisposables.dispose();
169
+ registryDisposables.dispose();
170
+ eventDisposables.dispose();
171
+ });
172
+ registryDisposables.add(registerWindow(targetWindow));
173
+ this._onDidOpenAuxiliaryWindow.fire({ window: auxiliaryWindow, disposables: eventDisposables });
174
+ mark('code/auxiliaryWindow/didOpen');
175
+ this.telemetryService.publicLog2('auxiliaryWindowOpen', { bounds: !!options?.bounds });
176
+ return auxiliaryWindow;
177
+ }
178
+ createAuxiliaryWindow(targetWindow, container, stylesLoaded) {
179
+ return (
180
+ (new AuxiliaryWindow(
181
+ targetWindow,
182
+ container,
183
+ stylesLoaded,
184
+ this.configurationService,
185
+ this.hostService,
186
+ this.environmentService
187
+ ))
188
+ );
189
+ }
190
+ async openWindow(options) {
191
+ const activeWindow = getActiveWindow();
192
+ const activeWindowBounds = {
193
+ x: activeWindow.screenX,
194
+ y: activeWindow.screenY,
195
+ width: activeWindow.outerWidth,
196
+ height: activeWindow.outerHeight
197
+ };
198
+ const width = Math.max(options?.bounds?.width ?? BrowserAuxiliaryWindowService_1.DEFAULT_SIZE.width, WindowMinimumSize.WIDTH);
199
+ const height = Math.max(options?.bounds?.height ?? BrowserAuxiliaryWindowService_1.DEFAULT_SIZE.height, WindowMinimumSize.HEIGHT);
200
+ let newWindowBounds = {
201
+ x: options?.bounds?.x ?? Math.max(activeWindowBounds.x + activeWindowBounds.width / 2 - width / 2, 0),
202
+ y: options?.bounds?.y ?? Math.max(activeWindowBounds.y + activeWindowBounds.height / 2 - height / 2, 0),
203
+ width,
204
+ height
205
+ };
206
+ if (!options?.bounds && newWindowBounds.x === activeWindowBounds.x && newWindowBounds.y === activeWindowBounds.y) {
207
+ newWindowBounds = {
208
+ ...newWindowBounds,
209
+ x: newWindowBounds.x + 30,
210
+ y: newWindowBounds.y + 30
211
+ };
212
+ }
213
+ const features = coalesce([
214
+ 'popup=yes',
215
+ `left=${newWindowBounds.x}`,
216
+ `top=${newWindowBounds.y}`,
217
+ `width=${newWindowBounds.width}`,
218
+ `height=${newWindowBounds.height}`,
219
+ options?.mode === AuxiliaryWindowMode.Maximized ? 'window-maximized=yes' : undefined,
220
+ options?.mode === AuxiliaryWindowMode.Fullscreen ? 'window-fullscreen=yes' : undefined
221
+ ]);
222
+ const auxiliaryWindow = mainWindow.open(isFirefox ? '' : 'about:blank', undefined, features.join(','));
223
+ if (!auxiliaryWindow && isWeb) {
224
+ return (await this.dialogService.prompt({
225
+ type: Severity$1.Warning,
226
+ message: ( localizeWithPath(
227
+ _moduleId,
228
+ 2,
229
+ "The browser interrupted the opening of a new window. Press 'Retry' to try again."
230
+ )),
231
+ detail: ( localizeWithPath(
232
+ _moduleId,
233
+ 3,
234
+ "To avoid this problem in the future, please ensure to allow popups for this website."
235
+ )),
236
+ buttons: [
237
+ {
238
+ label: ( localizeWithPath(_moduleId, 4, "&&Retry")),
239
+ run: () => this.openWindow(options)
240
+ }
241
+ ],
242
+ cancelButton: true
243
+ })).result;
244
+ }
245
+ return auxiliaryWindow?.window;
246
+ }
247
+ async resolveWindowId(auxiliaryWindow) {
248
+ return BrowserAuxiliaryWindowService_1.WINDOW_IDS++;
249
+ }
250
+ createContainer(auxiliaryWindow, disposables, options) {
251
+ this.applyMeta(auxiliaryWindow);
252
+ const { stylesLoaded } = this.applyCSS(auxiliaryWindow, disposables);
253
+ const container = this.applyHTML(auxiliaryWindow, disposables);
254
+ return { stylesLoaded, container };
255
+ }
256
+ applyMeta(auxiliaryWindow) {
257
+ for (const metaTag of ['meta[charset="utf-8"]', 'meta[http-equiv="Content-Security-Policy"]', 'meta[name="viewport"]', 'meta[name="theme-color"]']) {
258
+ const metaElement = mainWindow.document.querySelector(metaTag);
259
+ if (metaElement) {
260
+ const clonedMetaElement = createMetaElement(auxiliaryWindow.document.head);
261
+ copyAttributes(metaElement, clonedMetaElement);
262
+ if (metaTag === 'meta[http-equiv="Content-Security-Policy"]') {
263
+ const content = clonedMetaElement.getAttribute('content');
264
+ if (content) {
265
+ clonedMetaElement.setAttribute('content', content.replace(/(script-src[^\;]*)/, `script-src 'none'`));
266
+ }
267
+ }
268
+ }
269
+ }
270
+ const originalIconLinkTag = mainWindow.document.querySelector('link[rel="icon"]');
271
+ if (originalIconLinkTag) {
272
+ const icon = createLinkElement(auxiliaryWindow.document.head);
273
+ copyAttributes(originalIconLinkTag, icon);
274
+ }
275
+ }
276
+ applyCSS(auxiliaryWindow, disposables) {
277
+ mark('code/auxiliaryWindow/willApplyCSS');
278
+ const mapOriginalToClone = ( (new Map()));
279
+ const stylesLoaded = ( (new Barrier()));
280
+ stylesLoaded.wait().then(() => mark('code/auxiliaryWindow/didLoadCSSStyles'));
281
+ const pendingLinksDisposables = disposables.add(( (new DisposableStore())));
282
+ let pendingLinksToSettle = 0;
283
+ function onLinkSettled() {
284
+ if (--pendingLinksToSettle === 0) {
285
+ pendingLinksDisposables.dispose();
286
+ stylesLoaded.open();
287
+ }
288
+ }
289
+ function cloneNode(originalNode) {
290
+ if (isGlobalStylesheet(originalNode)) {
291
+ return;
292
+ }
293
+ const clonedNode = auxiliaryWindow.document.head.appendChild(originalNode.cloneNode(true));
294
+ if (originalNode.tagName.toLowerCase() === 'link') {
295
+ pendingLinksToSettle++;
296
+ pendingLinksDisposables.add(addDisposableListener(clonedNode, 'load', onLinkSettled));
297
+ pendingLinksDisposables.add(addDisposableListener(clonedNode, 'error', onLinkSettled));
298
+ }
299
+ mapOriginalToClone.set(originalNode, clonedNode);
300
+ }
301
+ pendingLinksToSettle++;
302
+ try {
303
+ for (const originalNode of mainWindow.document.head.querySelectorAll('link[rel="stylesheet"], style')) {
304
+ cloneNode(originalNode);
305
+ }
306
+ }
307
+ finally {
308
+ onLinkSettled();
309
+ }
310
+ disposables.add(cloneGlobalStylesheets(auxiliaryWindow));
311
+ disposables.add(sharedMutationObserver.observe(mainWindow.document.head, disposables, { childList: true, subtree: true })(mutations => {
312
+ for (const mutation of mutations) {
313
+ if (mutation.type !== 'childList' ||
314
+ mutation.target.nodeName.toLowerCase() === 'title' ||
315
+ mutation.target.nodeName.toLowerCase() === 'script' ||
316
+ mutation.target.nodeName.toLowerCase() === 'meta'
317
+ ) {
318
+ continue;
319
+ }
320
+ for (const node of mutation.addedNodes) {
321
+ if (isHTMLElement(node) && (node.tagName.toLowerCase() === 'style' || node.tagName.toLowerCase() === 'link')) {
322
+ cloneNode(node);
323
+ }
324
+ else if (node.nodeType === Node.TEXT_NODE && node.parentNode) {
325
+ const clonedNode = mapOriginalToClone.get(node.parentNode);
326
+ if (clonedNode) {
327
+ clonedNode.textContent = node.textContent;
328
+ }
329
+ }
330
+ }
331
+ for (const node of mutation.removedNodes) {
332
+ const clonedNode = mapOriginalToClone.get(node);
333
+ if (clonedNode) {
334
+ clonedNode.parentNode?.removeChild(clonedNode);
335
+ mapOriginalToClone.delete(node);
336
+ }
337
+ }
338
+ }
339
+ }));
340
+ mark('code/auxiliaryWindow/didApplyCSS');
341
+ return { stylesLoaded };
342
+ }
343
+ applyHTML(auxiliaryWindow, disposables) {
344
+ mark('code/auxiliaryWindow/willApplyHTML');
345
+ const container = document.createElement('div');
346
+ container.setAttribute('role', 'application');
347
+ position(container, 0, 0, 0, 0, 'relative');
348
+ container.style.display = 'flex';
349
+ container.style.height = '100%';
350
+ container.style.flexDirection = 'column';
351
+ auxiliaryWindow.document.body.append(container);
352
+ disposables.add(trackAttributes(mainWindow.document.documentElement, auxiliaryWindow.document.documentElement));
353
+ disposables.add(trackAttributes(mainWindow.document.body, auxiliaryWindow.document.body));
354
+ disposables.add(trackAttributes(this.layoutService.mainContainer, container, ['class']));
355
+ mark('code/auxiliaryWindow/didApplyHTML');
356
+ return container;
357
+ }
358
+ getWindow(windowId) {
359
+ return this.windows.get(windowId);
360
+ }
361
+ };
362
+ BrowserAuxiliaryWindowService = BrowserAuxiliaryWindowService_1 = ( (__decorate([
363
+ ( (__param(0, IWorkbenchLayoutService))),
364
+ ( (__param(1, IDialogService))),
365
+ ( (__param(2, IConfigurationService))),
366
+ ( (__param(3, ITelemetryService))),
367
+ ( (__param(4, IHostService))),
368
+ ( (__param(5, IWorkbenchEnvironmentService)))
369
+ ], BrowserAuxiliaryWindowService)));
370
+ export { AuxiliaryWindow, AuxiliaryWindowMode, BrowserAuxiliaryWindowService };
@@ -1,3 +1,4 @@
1
+ import { ConfigurationScope } from '../../../../platform/configuration/common/configurationRegistry.js';
1
2
  const FOLDER_CONFIG_FOLDER_NAME = '.vscode';
2
3
  const FOLDER_SETTINGS_NAME = 'settings';
3
4
  const FOLDER_SETTINGS_PATH = `${FOLDER_CONFIG_FOLDER_NAME}/${FOLDER_SETTINGS_NAME}.json`;
@@ -9,13 +10,13 @@ const workspaceSettingsSchemaId = 'vscode://schemas/settings/workspace';
9
10
  const folderSettingsSchemaId = 'vscode://schemas/settings/folder';
10
11
  const launchSchemaId = 'vscode://schemas/launch';
11
12
  const tasksSchemaId = 'vscode://schemas/tasks';
12
- const APPLICATION_SCOPES = [1 ];
13
- const PROFILE_SCOPES = [2 , 3 , 4 , 5 , 6 ];
14
- const LOCAL_MACHINE_PROFILE_SCOPES = [3 , 4 , 5 ];
15
- const LOCAL_MACHINE_SCOPES = [1 , ...LOCAL_MACHINE_PROFILE_SCOPES];
16
- const REMOTE_MACHINE_SCOPES = [2 , 3 , 4 , 5 , 6 ];
17
- const WORKSPACE_SCOPES = [3 , 4 , 5 , 6 ];
18
- const FOLDER_SCOPES = [4 , 5 , 6 ];
13
+ const APPLICATION_SCOPES = [ConfigurationScope.APPLICATION];
14
+ const PROFILE_SCOPES = [ConfigurationScope.MACHINE, ConfigurationScope.WINDOW, ConfigurationScope.RESOURCE, ConfigurationScope.LANGUAGE_OVERRIDABLE, ConfigurationScope.MACHINE_OVERRIDABLE];
15
+ const LOCAL_MACHINE_PROFILE_SCOPES = [ConfigurationScope.WINDOW, ConfigurationScope.RESOURCE, ConfigurationScope.LANGUAGE_OVERRIDABLE];
16
+ const LOCAL_MACHINE_SCOPES = [ConfigurationScope.APPLICATION, ...LOCAL_MACHINE_PROFILE_SCOPES];
17
+ const REMOTE_MACHINE_SCOPES = [ConfigurationScope.MACHINE, ConfigurationScope.WINDOW, ConfigurationScope.RESOURCE, ConfigurationScope.LANGUAGE_OVERRIDABLE, ConfigurationScope.MACHINE_OVERRIDABLE];
18
+ const WORKSPACE_SCOPES = [ConfigurationScope.WINDOW, ConfigurationScope.RESOURCE, ConfigurationScope.LANGUAGE_OVERRIDABLE, ConfigurationScope.MACHINE_OVERRIDABLE];
19
+ const FOLDER_SCOPES = [ConfigurationScope.RESOURCE, ConfigurationScope.LANGUAGE_OVERRIDABLE, ConfigurationScope.MACHINE_OVERRIDABLE];
19
20
  const TASKS_CONFIGURATION_KEY = 'tasks';
20
21
  const LAUNCH_CONFIGURATION_KEY = 'launch';
21
22
  const WORKSPACE_STANDALONE_CONFIGURATIONS = Object.create(null);
@@ -0,0 +1,187 @@
1
+ import { __decorate, __param } from '../../../../../../../external/tslib/tslib.es6.js';
2
+ import { getTopLeftOffset, getClientArea } from '../../../../base/browser/dom.js';
3
+ import { mainWindow } from '../../../../base/browser/window.js';
4
+ import { coalesce } from '../../../../base/common/arrays.js';
5
+ import { language, locale } from '../../../../base/common/platform.js';
6
+ import { IEnvironmentService } from '../../../../platform/environment/common/environment.service.js';
7
+ import { IFileService } from '../../../../platform/files/common/files.service.js';
8
+ import localizedStrings from '../../../../platform/languagePacks/common/localizedStrings.js';
9
+ import { getLogs } from '../../../../platform/log/browser/log.js';
10
+ import { ILogService } from '../../../../platform/log/common/log.service.js';
11
+ import { Registry } from '../../../../platform/registry/common/platform.js';
12
+ import { Extensions } from '../../../common/contributions.js';
13
+ import { LifecyclePhase } from '../../lifecycle/common/lifecycle.js';
14
+ import { ILifecycleService } from '../../lifecycle/common/lifecycle.service.js';
15
+ let BrowserWindowDriver = class BrowserWindowDriver {
16
+ constructor(fileService, environmentService, lifecycleService, logService) {
17
+ this.fileService = fileService;
18
+ this.environmentService = environmentService;
19
+ this.lifecycleService = lifecycleService;
20
+ this.logService = logService;
21
+ }
22
+ async getLogs() {
23
+ return getLogs(this.fileService, this.environmentService);
24
+ }
25
+ async whenWorkbenchRestored() {
26
+ this.logService.info('[driver] Waiting for restored lifecycle phase...');
27
+ await this.lifecycleService.when(LifecyclePhase.Restored);
28
+ this.logService.info('[driver] Restored lifecycle phase reached. Waiting for contributions...');
29
+ await ( Registry.as(Extensions.Workbench)).whenRestored;
30
+ this.logService.info('[driver] Workbench contributions created.');
31
+ }
32
+ async setValue(selector, text) {
33
+ const element = mainWindow.document.querySelector(selector);
34
+ if (!element) {
35
+ return Promise.reject(( new Error(`Element not found: ${selector}`)));
36
+ }
37
+ const inputElement = element;
38
+ inputElement.value = text;
39
+ const event = ( new Event('input', { bubbles: true, cancelable: true }));
40
+ inputElement.dispatchEvent(event);
41
+ }
42
+ async isActiveElement(selector) {
43
+ const element = mainWindow.document.querySelector(selector);
44
+ if (element !== mainWindow.document.activeElement) {
45
+ const chain = [];
46
+ let el = mainWindow.document.activeElement;
47
+ while (el) {
48
+ const tagName = el.tagName;
49
+ const id = el.id ? `#${el.id}` : '';
50
+ const classes = ( coalesce(( el.className.split(/\s+/g).map(c => c.trim()))).map(c => `.${c}`)).join('');
51
+ chain.unshift(`${tagName}${id}${classes}`);
52
+ el = el.parentElement;
53
+ }
54
+ throw ( new Error(
55
+ `Active element not found. Current active element is '${chain.join(' > ')}'. Looking for ${selector}`
56
+ ));
57
+ }
58
+ return true;
59
+ }
60
+ async getElements(selector, recursive) {
61
+ const query = mainWindow.document.querySelectorAll(selector);
62
+ const result = [];
63
+ for (let i = 0; i < query.length; i++) {
64
+ const element = query.item(i);
65
+ result.push(this.serializeElement(element, recursive));
66
+ }
67
+ return result;
68
+ }
69
+ serializeElement(element, recursive) {
70
+ const attributes = Object.create(null);
71
+ for (let j = 0; j < element.attributes.length; j++) {
72
+ const attr = element.attributes.item(j);
73
+ if (attr) {
74
+ attributes[attr.name] = attr.value;
75
+ }
76
+ }
77
+ const children = [];
78
+ if (recursive) {
79
+ for (let i = 0; i < element.children.length; i++) {
80
+ const child = element.children.item(i);
81
+ if (child) {
82
+ children.push(this.serializeElement(child, true));
83
+ }
84
+ }
85
+ }
86
+ const { left, top } = getTopLeftOffset(element);
87
+ return {
88
+ tagName: element.tagName,
89
+ className: element.className,
90
+ textContent: element.textContent || '',
91
+ attributes,
92
+ children,
93
+ left,
94
+ top
95
+ };
96
+ }
97
+ async getElementXY(selector, xoffset, yoffset) {
98
+ const offset = typeof xoffset === 'number' && typeof yoffset === 'number' ? { x: xoffset, y: yoffset } : undefined;
99
+ return this._getElementXY(selector, offset);
100
+ }
101
+ async typeInEditor(selector, text) {
102
+ const element = mainWindow.document.querySelector(selector);
103
+ if (!element) {
104
+ throw ( new Error(`Editor not found: ${selector}`));
105
+ }
106
+ const textarea = element;
107
+ const start = textarea.selectionStart;
108
+ const newStart = start + text.length;
109
+ const value = textarea.value;
110
+ const newValue = value.substr(0, start) + text + value.substr(start);
111
+ textarea.value = newValue;
112
+ textarea.setSelectionRange(newStart, newStart);
113
+ const event = ( new Event('input', { 'bubbles': true, 'cancelable': true }));
114
+ textarea.dispatchEvent(event);
115
+ }
116
+ async getTerminalBuffer(selector) {
117
+ const element = mainWindow.document.querySelector(selector);
118
+ if (!element) {
119
+ throw ( new Error(`Terminal not found: ${selector}`));
120
+ }
121
+ const xterm = element.xterm;
122
+ if (!xterm) {
123
+ throw ( new Error(`Xterm not found: ${selector}`));
124
+ }
125
+ const lines = [];
126
+ for (let i = 0; i < xterm.buffer.active.length; i++) {
127
+ lines.push(xterm.buffer.active.getLine(i).translateToString(true));
128
+ }
129
+ return lines;
130
+ }
131
+ async writeInTerminal(selector, text) {
132
+ const element = mainWindow.document.querySelector(selector);
133
+ if (!element) {
134
+ throw ( new Error(`Element not found: ${selector}`));
135
+ }
136
+ const xterm = element.xterm;
137
+ if (!xterm) {
138
+ throw ( new Error(`Xterm not found: ${selector}`));
139
+ }
140
+ xterm.input(text);
141
+ }
142
+ getLocaleInfo() {
143
+ return Promise.resolve({
144
+ language: language,
145
+ locale: locale
146
+ });
147
+ }
148
+ getLocalizedStrings() {
149
+ return Promise.resolve({
150
+ open: localizedStrings.open,
151
+ close: localizedStrings.close,
152
+ find: localizedStrings.find
153
+ });
154
+ }
155
+ async _getElementXY(selector, offset) {
156
+ const element = mainWindow.document.querySelector(selector);
157
+ if (!element) {
158
+ return Promise.reject(( new Error(`Element not found: ${selector}`)));
159
+ }
160
+ const { left, top } = getTopLeftOffset(element);
161
+ const { width, height } = getClientArea(element);
162
+ let x, y;
163
+ if (offset) {
164
+ x = left + offset.x;
165
+ y = top + offset.y;
166
+ }
167
+ else {
168
+ x = left + (width / 2);
169
+ y = top + (height / 2);
170
+ }
171
+ x = Math.round(x);
172
+ y = Math.round(y);
173
+ return { x, y };
174
+ }
175
+ async exitApplication() {
176
+ }
177
+ };
178
+ BrowserWindowDriver = ( __decorate([
179
+ ( __param(0, IFileService)),
180
+ ( __param(1, IEnvironmentService)),
181
+ ( __param(2, ILifecycleService)),
182
+ ( __param(3, ILogService))
183
+ ], BrowserWindowDriver));
184
+ function registerWindowDriver(instantiationService) {
185
+ Object.assign(mainWindow, { driver: instantiationService.createInstance(BrowserWindowDriver) });
186
+ }
187
+ export { BrowserWindowDriver, registerWindowDriver };
@@ -1,10 +1,12 @@
1
1
  import { __decorate, __param } from '../../../../../../../external/tslib/tslib.es6.js';
2
2
  import { isCodeEditor, isDiffEditor, isCompositeEditor, getCodeEditor } from '../../../../editor/browser/editorBrowser.js';
3
3
  import { AbstractCodeEditorService } from '../../../../editor/browser/services/abstractCodeEditorService.js';
4
+ import { ScrollType } from '../../../../editor/common/editorCommon.js';
4
5
  import { IThemeService } from '../../../../platform/theme/common/themeService.service.js';
5
6
  import { SIDE_GROUP, ACTIVE_GROUP } from '../common/editorService.js';
6
7
  import { IEditorService } from '../common/editorService.service.js';
7
8
  import '../../../../platform/instantiation/common/instantiation.js';
9
+ import '../../../../platform/instantiation/common/extensions.js';
8
10
  import { isEqual } from '../../../../base/common/resources.js';
9
11
  import { IConfigurationService } from '../../../../platform/configuration/common/configuration.service.js';
10
12
  import { applyTextEditorOptions } from '../../../common/editor/editorOptions.js';
@@ -41,7 +43,7 @@ let CodeEditorService = class CodeEditorService extends AbstractCodeEditorServic
41
43
  isEqual(input.resource, activeTextEditorControl.getModel()?.modified.uri)
42
44
  ) {
43
45
  const targetEditor = activeTextEditorControl.getModifiedEditor();
44
- applyTextEditorOptions(input.options, targetEditor, 0 );
46
+ applyTextEditorOptions(input.options, targetEditor, ScrollType.Smooth);
45
47
  return targetEditor;
46
48
  }
47
49
  return null;