@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
@@ -1,876 +0,0 @@
1
- import { __decorate, __param } from '../../../../../../../external/tslib/tslib.es6.js';
2
- import { addDisposableListener, EventType, isActiveElement, getActiveWindow } from '../../../../base/browser/dom.js';
3
- import { StandardKeyboardEvent } from '../../../../base/browser/keyboardEvent.js';
4
- import { alert } from '../../../../base/browser/ui/aria/aria.js';
5
- import { Codicon } from '../../../../base/common/codicons.js';
6
- import { Disposable, DisposableStore } from '../../../../base/common/lifecycle.js';
7
- import marked_1 from '../../../../../../../external/vscode-marked/lib/marked.esm.js';
8
- import { isWindows, isMacintosh } from '../../../../base/common/platform.js';
9
- import { ThemeIcon } from '../../../../base/common/themables.js';
10
- import { URI } from '../../../../base/common/uri.js';
11
- import { EditorExtensionsRegistry } from '../../../../editor/browser/editorExtensions.js';
12
- import { CodeEditorWidget } from '../../../../editor/browser/widget/codeEditor/codeEditorWidget.js';
13
- import { Position } from '../../../../editor/common/core/position.js';
14
- import { IModelService } from '../../../../editor/common/services/model.js';
15
- import { AccessibilityHelpNLS } from '../../../../editor/common/standaloneStrings.js';
16
- import { CodeActionController } from '../../../../editor/contrib/codeAction/browser/codeActionController.js';
17
- import { localizeWithPath } from '../../../../nls.js';
18
- import { ACCESSIBLE_VIEW_SHOWN_STORAGE_PREFIX } from '../../../../platform/accessibility/common/accessibility.js';
19
- import { IAccessibilityService } from '../../../../platform/accessibility/common/accessibility.service.js';
20
- import { createAndFillInActionBarActions } from '../../../../platform/actions/browser/menuEntryActionViewItem.js';
21
- import { WorkbenchToolBar } from '../../../../platform/actions/browser/toolbar.js';
22
- import { MenuId } from '../../../../platform/actions/common/actions.js';
23
- import { IMenuService } from '../../../../platform/actions/common/actions.service.js';
24
- import { ICommandService } from '../../../../platform/commands/common/commands.service.js';
25
- import { IConfigurationService } from '../../../../platform/configuration/common/configuration.service.js';
26
- import { IContextKeyService } from '../../../../platform/contextkey/common/contextkey.service.js';
27
- import { IContextViewService } from '../../../../platform/contextview/browser/contextView.service.js';
28
- import { IInstantiationService } from '../../../../platform/instantiation/common/instantiation.js';
29
- import { IKeybindingService } from '../../../../platform/keybinding/common/keybinding.service.js';
30
- import { ILayoutService } from '../../../../platform/layout/browser/layoutService.service.js';
31
- import { IOpenerService } from '../../../../platform/opener/common/opener.service.js';
32
- import { IQuickInputService } from '../../../../platform/quickinput/common/quickInput.service.js';
33
- import { IStorageService } from '../../../../platform/storage/common/storage.service.js';
34
- import { accessibilityHelpIsShown, accessibleViewIsShown, accessibleViewSupportsNavigation, accessibleViewVerbosityEnabled, accessibleViewGoToSymbolSupported, accessibleViewCurrentProviderId, accessibleViewInCodeBlock, accessibleViewContainsCodeBlocks, accessibleViewOnLastLine } from './accessibilityConfiguration.js';
35
- import { IChatCodeBlockContextProviderService } from '../../chat/browser/chat.service.js';
36
- import { getSimpleEditorOptions } from '../../codeEditor/browser/simpleEditorOptions.js';
37
- const _moduleId = "vs/workbench/contrib/accessibility/browser/accessibleView";
38
- class AdvancedContentProvider {
39
- constructor(id, options, provideContent, onClose, verbositySettingKey, actions, next, previous, onKeyDown, getSymbols, onDidRequestClearLastProvider) {
40
- this.id = id;
41
- this.options = options;
42
- this.provideContent = provideContent;
43
- this.onClose = onClose;
44
- this.verbositySettingKey = verbositySettingKey;
45
- this.actions = actions;
46
- this.next = next;
47
- this.previous = previous;
48
- this.onKeyDown = onKeyDown;
49
- this.getSymbols = getSymbols;
50
- this.onDidRequestClearLastProvider = onDidRequestClearLastProvider;
51
- }
52
- }
53
- class ExtensionContentProvider {
54
- constructor(id, options, provideContent, onClose, next, previous, actions) {
55
- this.id = id;
56
- this.options = options;
57
- this.provideContent = provideContent;
58
- this.onClose = onClose;
59
- this.next = next;
60
- this.previous = previous;
61
- this.actions = actions;
62
- }
63
- }
64
- let AccessibleView = class AccessibleView extends Disposable {
65
- get editorWidget() { return this._editorWidget; }
66
- constructor(_openerService, _instantiationService, _configurationService, _modelService, _contextViewService, _contextKeyService, _accessibilityService, _keybindingService, _layoutService, _menuService, _commandService, _codeBlockContextProviderService, _storageService) {
67
- super();
68
- this._openerService = _openerService;
69
- this._instantiationService = _instantiationService;
70
- this._configurationService = _configurationService;
71
- this._modelService = _modelService;
72
- this._contextViewService = _contextViewService;
73
- this._contextKeyService = _contextKeyService;
74
- this._accessibilityService = _accessibilityService;
75
- this._keybindingService = _keybindingService;
76
- this._layoutService = _layoutService;
77
- this._menuService = _menuService;
78
- this._commandService = _commandService;
79
- this._codeBlockContextProviderService = _codeBlockContextProviderService;
80
- this._storageService = _storageService;
81
- this._accessiblityHelpIsShown = accessibilityHelpIsShown.bindTo(this._contextKeyService);
82
- this._accessibleViewIsShown = accessibleViewIsShown.bindTo(this._contextKeyService);
83
- this._accessibleViewSupportsNavigation = accessibleViewSupportsNavigation.bindTo(this._contextKeyService);
84
- this._accessibleViewVerbosityEnabled = accessibleViewVerbosityEnabled.bindTo(this._contextKeyService);
85
- this._accessibleViewGoToSymbolSupported = accessibleViewGoToSymbolSupported.bindTo(this._contextKeyService);
86
- this._accessibleViewCurrentProviderId = accessibleViewCurrentProviderId.bindTo(this._contextKeyService);
87
- this._accessibleViewInCodeBlock = accessibleViewInCodeBlock.bindTo(this._contextKeyService);
88
- this._accessibleViewContainsCodeBlocks = accessibleViewContainsCodeBlocks.bindTo(this._contextKeyService);
89
- this._onLastLine = accessibleViewOnLastLine.bindTo(this._contextKeyService);
90
- this._container = document.createElement('div');
91
- this._container.classList.add('accessible-view');
92
- if (this._configurationService.getValue("accessibility.hideAccessibleView" )) {
93
- this._container.classList.add('hide');
94
- }
95
- const codeEditorWidgetOptions = {
96
- contributions: EditorExtensionsRegistry.getEditorContributions().filter(c => c.id !== CodeActionController.ID)
97
- };
98
- const titleBar = document.createElement('div');
99
- titleBar.classList.add('accessible-view-title-bar');
100
- this._title = document.createElement('div');
101
- this._title.classList.add('accessible-view-title');
102
- titleBar.appendChild(this._title);
103
- const actionBar = document.createElement('div');
104
- actionBar.classList.add('accessible-view-action-bar');
105
- titleBar.appendChild(actionBar);
106
- this._container.appendChild(titleBar);
107
- this._toolbar = this._register(_instantiationService.createInstance(WorkbenchToolBar, actionBar, { orientation: 0 }));
108
- this._toolbar.context = { viewId: 'accessibleView' };
109
- const toolbarElt = this._toolbar.getElement();
110
- toolbarElt.tabIndex = 0;
111
- const editorOptions = {
112
- ...getSimpleEditorOptions(this._configurationService),
113
- lineDecorationsWidth: 6,
114
- dragAndDrop: false,
115
- cursorWidth: 1,
116
- wrappingStrategy: 'advanced',
117
- wrappingIndent: 'none',
118
- padding: { top: 2, bottom: 2 },
119
- quickSuggestions: false,
120
- renderWhitespace: 'none',
121
- dropIntoEditor: { enabled: false },
122
- readOnly: true,
123
- fontFamily: 'var(--monaco-monospace-font)'
124
- };
125
- this._editorWidget = this._register(this._instantiationService.createInstance(CodeEditorWidget, this._container, editorOptions, codeEditorWidgetOptions));
126
- this._register(this._accessibilityService.onDidChangeScreenReaderOptimized(() => {
127
- if (this._currentProvider && this._accessiblityHelpIsShown.get()) {
128
- this.show(this._currentProvider);
129
- }
130
- }));
131
- this._register(this._configurationService.onDidChangeConfiguration(e => {
132
- if (this._currentProvider instanceof AdvancedContentProvider && e.affectsConfiguration(this._currentProvider.verbositySettingKey)) {
133
- if (this._accessiblityHelpIsShown.get()) {
134
- this.show(this._currentProvider);
135
- }
136
- this._accessibleViewVerbosityEnabled.set(this._configurationService.getValue(this._currentProvider.verbositySettingKey));
137
- this._updateToolbar(this._currentProvider.actions, this._currentProvider.options.type);
138
- }
139
- if (e.affectsConfiguration("accessibility.hideAccessibleView" )) {
140
- this._container.classList.toggle('hide', this._configurationService.getValue("accessibility.hideAccessibleView" ));
141
- }
142
- }));
143
- this._register(this._editorWidget.onDidDispose(() => this._resetContextKeys()));
144
- this._register(this._editorWidget.onDidChangeCursorPosition(() => {
145
- this._onLastLine.set(this._editorWidget.getPosition()?.lineNumber === this._editorWidget.getModel()?.getLineCount());
146
- }));
147
- this._register(this._editorWidget.onDidChangeCursorPosition(() => {
148
- const cursorPosition = this._editorWidget.getPosition()?.lineNumber;
149
- if (this._codeBlocks && cursorPosition !== undefined) {
150
- const inCodeBlock = this._codeBlocks.find(c => c.startLine <= cursorPosition && c.endLine >= cursorPosition) !== undefined;
151
- this._accessibleViewInCodeBlock.set(inCodeBlock);
152
- }
153
- }));
154
- }
155
- _resetContextKeys() {
156
- this._accessiblityHelpIsShown.reset();
157
- this._accessibleViewIsShown.reset();
158
- this._accessibleViewSupportsNavigation.reset();
159
- this._accessibleViewVerbosityEnabled.reset();
160
- this._accessibleViewGoToSymbolSupported.reset();
161
- this._accessibleViewCurrentProviderId.reset();
162
- }
163
- getPosition(id) {
164
- if (!id || !this._lastProvider || this._lastProvider.id !== id) {
165
- return undefined;
166
- }
167
- return this._editorWidget.getPosition() || undefined;
168
- }
169
- setPosition(position, reveal) {
170
- this._editorWidget.setPosition(position);
171
- if (reveal) {
172
- this._editorWidget.revealPosition(position);
173
- }
174
- }
175
- getCodeBlockContext() {
176
- const position = this._editorWidget.getPosition();
177
- if (!this._codeBlocks?.length || !position) {
178
- return;
179
- }
180
- const codeBlockIndex = this._codeBlocks?.findIndex(c => c.startLine <= position?.lineNumber && c.endLine >= position?.lineNumber);
181
- const codeBlock = codeBlockIndex !== undefined && codeBlockIndex > -1 ? this._codeBlocks[codeBlockIndex] : undefined;
182
- if (!codeBlock || codeBlockIndex === undefined) {
183
- return;
184
- }
185
- return { code: codeBlock.code, languageId: codeBlock.languageId, codeBlockIndex, element: undefined };
186
- }
187
- navigateToCodeBlock(type) {
188
- const position = this._editorWidget.getPosition();
189
- if (!this._codeBlocks?.length || !position) {
190
- return;
191
- }
192
- let codeBlock;
193
- const codeBlocks = this._codeBlocks.slice();
194
- if (type === 'previous') {
195
- codeBlock = codeBlocks.reverse().find(c => c.endLine < position.lineNumber);
196
- }
197
- else {
198
- codeBlock = codeBlocks.find(c => c.startLine > position.lineNumber);
199
- }
200
- if (!codeBlock) {
201
- return;
202
- }
203
- this.setPosition(( (new Position(codeBlock.startLine, 1))), true);
204
- }
205
- showLastProvider(id) {
206
- if (!this._lastProvider || this._lastProvider.options.id !== id) {
207
- return;
208
- }
209
- this.show(this._lastProvider);
210
- }
211
- show(provider, symbol, showAccessibleViewHelp, position) {
212
- provider = provider ?? this._currentProvider;
213
- if (!provider) {
214
- return;
215
- }
216
- const delegate = {
217
- getAnchor: () => { return { x: (getActiveWindow().innerWidth / 2) - ((Math.min(this._layoutService.activeContainerDimension.width * 0.62 , 600 )) / 2), y: this._layoutService.activeContainerOffset.quickPickTop }; },
218
- render: (container) => {
219
- container.classList.add('accessible-view-container');
220
- return this._render(provider, container, showAccessibleViewHelp);
221
- },
222
- onHide: () => {
223
- if (!showAccessibleViewHelp) {
224
- this._updateLastProvider();
225
- this._currentProvider = undefined;
226
- this._resetContextKeys();
227
- }
228
- }
229
- };
230
- this._contextViewService.showContextView(delegate);
231
- if (position) {
232
- queueMicrotask(() => {
233
- this._editorWidget.revealLine(position.lineNumber);
234
- this._editorWidget.setSelection({ startLineNumber: position.lineNumber, startColumn: position.column, endLineNumber: position.lineNumber, endColumn: position.column });
235
- });
236
- }
237
- if (symbol && this._currentProvider) {
238
- this.showSymbol(this._currentProvider, symbol);
239
- }
240
- if (provider instanceof AdvancedContentProvider && provider.onDidRequestClearLastProvider) {
241
- this._register(provider.onDidRequestClearLastProvider((id) => {
242
- if (this._lastProvider?.options.id === id) {
243
- this._lastProvider = undefined;
244
- }
245
- }));
246
- }
247
- if (provider.options.id) {
248
- this._lastProvider = provider;
249
- }
250
- if (provider.id === "panelChat" ) {
251
- this._register(this._codeBlockContextProviderService.registerProvider({ getCodeBlockContext: () => this.getCodeBlockContext() }, 'accessibleView'));
252
- }
253
- if (provider instanceof ExtensionContentProvider) {
254
- this._storageService.store(`${ACCESSIBLE_VIEW_SHOWN_STORAGE_PREFIX}${provider.id}`, true, -1 , 0 );
255
- }
256
- }
257
- previous() {
258
- this._currentProvider?.previous?.();
259
- }
260
- next() {
261
- this._currentProvider?.next?.();
262
- }
263
- _verbosityEnabled() {
264
- if (!this._currentProvider) {
265
- return false;
266
- }
267
- return this._currentProvider instanceof AdvancedContentProvider ? this._configurationService.getValue(this._currentProvider.verbositySettingKey) === true : this._storageService.getBoolean(`${ACCESSIBLE_VIEW_SHOWN_STORAGE_PREFIX}${this._currentProvider.id}`, -1 , false);
268
- }
269
- goToSymbol() {
270
- if (!this._currentProvider) {
271
- return;
272
- }
273
- this._instantiationService.createInstance(AccessibleViewSymbolQuickPick, this).show(this._currentProvider);
274
- }
275
- calculateCodeBlocks(markdown) {
276
- if (this._currentProvider?.id !== "panelChat" ) {
277
- return;
278
- }
279
- if (this._currentProvider.options.language && this._currentProvider.options.language !== 'markdown') {
280
- return;
281
- }
282
- const lines = markdown.split('\n');
283
- this._codeBlocks = [];
284
- let inBlock = false;
285
- let startLine = 0;
286
- let languageId;
287
- lines.forEach((line, i) => {
288
- if (!inBlock && line.startsWith('```')) {
289
- inBlock = true;
290
- startLine = i + 1;
291
- languageId = line.substring(3).trim();
292
- }
293
- else if (inBlock && line.startsWith('```')) {
294
- inBlock = false;
295
- const endLine = i;
296
- const code = lines.slice(startLine, endLine).join('\n');
297
- this._codeBlocks?.push({ startLine, endLine, code, languageId });
298
- }
299
- });
300
- this._accessibleViewContainsCodeBlocks.set(this._codeBlocks.length > 0);
301
- }
302
- getSymbols() {
303
- const provider = this._currentProvider instanceof AdvancedContentProvider ? this._currentProvider : undefined;
304
- if (!this._currentContent || !provider) {
305
- return;
306
- }
307
- const symbols = provider.getSymbols?.() || [];
308
- if (symbols?.length) {
309
- return symbols;
310
- }
311
- if (provider.options.language && provider.options.language !== 'markdown') {
312
- return;
313
- }
314
- const markdownTokens = marked_1.lexer(this._currentContent);
315
- if (!markdownTokens) {
316
- return;
317
- }
318
- this._convertTokensToSymbols(markdownTokens, symbols);
319
- return symbols.length ? symbols : undefined;
320
- }
321
- _convertTokensToSymbols(tokens, symbols) {
322
- let firstListItem;
323
- for (const token of tokens) {
324
- let label = undefined;
325
- if ('type' in token) {
326
- switch (token.type) {
327
- case 'heading':
328
- case 'paragraph':
329
- case 'code':
330
- label = token.text;
331
- break;
332
- case 'list': {
333
- const firstItem = token.items?.[0];
334
- if (!firstItem) {
335
- break;
336
- }
337
- firstListItem = `- ${firstItem.text}`;
338
- label = token.items?.map(i => i.text).join(', ');
339
- break;
340
- }
341
- }
342
- }
343
- if (label) {
344
- symbols.push({ markdownToParse: label, label: ( localizeWithPath(_moduleId, 0, "({0}) {1}", token.type, label)), ariaLabel: ( localizeWithPath(_moduleId, 1, "({0}) {1}", token.type, label)), firstListItem });
345
- firstListItem = undefined;
346
- }
347
- }
348
- }
349
- showSymbol(provider, symbol) {
350
- if (!this._currentContent) {
351
- return;
352
- }
353
- let lineNumber = symbol.lineNumber;
354
- const markdownToParse = symbol.markdownToParse;
355
- if (lineNumber === undefined && markdownToParse === undefined) {
356
- return;
357
- }
358
- if (lineNumber === undefined && markdownToParse) {
359
- const index = this._currentContent.split('\n').findIndex(line => line.includes(markdownToParse.split('\n')[0]) || (symbol.firstListItem && line.includes(symbol.firstListItem))) ?? -1;
360
- if (index >= 0) {
361
- lineNumber = index + 1;
362
- }
363
- }
364
- if (lineNumber === undefined) {
365
- return;
366
- }
367
- this.show(provider, undefined, undefined, { lineNumber, column: 1 });
368
- this._updateContextKeys(provider, true);
369
- }
370
- disableHint() {
371
- if (!(this._currentProvider instanceof AdvancedContentProvider)) {
372
- return;
373
- }
374
- this._configurationService.updateValue(this._currentProvider?.verbositySettingKey, false);
375
- alert(( localizeWithPath(
376
- _moduleId,
377
- 2,
378
- '{0} accessibility verbosity is now disabled',
379
- this._currentProvider.verbositySettingKey
380
- )));
381
- }
382
- _updateContextKeys(provider, shown) {
383
- if (provider.options.type === "help" ) {
384
- this._accessiblityHelpIsShown.set(shown);
385
- this._accessibleViewIsShown.reset();
386
- }
387
- else {
388
- this._accessibleViewIsShown.set(shown);
389
- this._accessiblityHelpIsShown.reset();
390
- }
391
- this._accessibleViewSupportsNavigation.set(provider.next !== undefined || provider.previous !== undefined);
392
- this._accessibleViewVerbosityEnabled.set(this._verbosityEnabled());
393
- this._accessibleViewGoToSymbolSupported.set(this._goToSymbolsSupported() ? this.getSymbols()?.length > 0 : false);
394
- }
395
- _render(provider, container, showAccessibleViewHelp) {
396
- this._currentProvider = provider;
397
- this._accessibleViewCurrentProviderId.set(provider.id);
398
- const verbose = this._verbosityEnabled();
399
- const readMoreLink = provider.options.readMoreUrl ? ( localizeWithPath(
400
- _moduleId,
401
- 3,
402
- "\n\nOpen a browser window with more information related to accessibility (H)."
403
- )) : '';
404
- let disableHelpHint = '';
405
- if (provider instanceof AdvancedContentProvider && provider.options.type === "help" && verbose) {
406
- disableHelpHint = this._getDisableVerbosityHint(provider.verbositySettingKey);
407
- }
408
- const accessibilitySupport = this._accessibilityService.isScreenReaderOptimized();
409
- let message = '';
410
- if (provider.options.type === "help" ) {
411
- const turnOnMessage = (isMacintosh
412
- ? AccessibilityHelpNLS.changeConfigToOnMac
413
- : AccessibilityHelpNLS.changeConfigToOnWinLinux);
414
- if (accessibilitySupport && provider instanceof AdvancedContentProvider && provider.verbositySettingKey === "accessibility.verbosity.editor" ) {
415
- message = AccessibilityHelpNLS.auto_on;
416
- message += '\n';
417
- }
418
- else if (!accessibilitySupport) {
419
- message = AccessibilityHelpNLS.auto_off + '\n' + turnOnMessage;
420
- message += '\n';
421
- }
422
- }
423
- const exitThisDialogHint = verbose && !provider.options.position ? ( localizeWithPath(_moduleId, 4, '\n\nExit this dialog (Escape).')) : '';
424
- const newContent = message + provider.provideContent() + readMoreLink + disableHelpHint + exitThisDialogHint;
425
- this.calculateCodeBlocks(newContent);
426
- this._currentContent = newContent;
427
- this._updateContextKeys(provider, true);
428
- const widgetIsFocused = this._editorWidget.hasTextFocus() || this._editorWidget.hasWidgetFocus();
429
- this._getTextModel(( (URI.from(
430
- { path: `accessible-view-${provider.id}`, scheme: 'accessible-view', fragment: this._currentContent }
431
- )))).then((model) => {
432
- if (!model) {
433
- return;
434
- }
435
- this._editorWidget.setModel(model);
436
- const domNode = this._editorWidget.getDomNode();
437
- if (!domNode) {
438
- return;
439
- }
440
- model.setLanguage(provider.options.language ?? 'markdown');
441
- container.appendChild(this._container);
442
- let actionsHint = '';
443
- const hasActions = this._accessibleViewSupportsNavigation.get() || this._accessibleViewVerbosityEnabled.get() || this._accessibleViewGoToSymbolSupported.get() || provider.actions?.length;
444
- if (verbose && !showAccessibleViewHelp && hasActions) {
445
- actionsHint = provider.options.position ? ( localizeWithPath(
446
- _moduleId,
447
- 5,
448
- 'Explore actions such as disabling this hint (Shift+Tab), use Escape to exit this dialog.'
449
- )) : ( localizeWithPath(_moduleId, 6, 'Explore actions such as disabling this hint (Shift+Tab).'));
450
- }
451
- let ariaLabel = provider.options.type === "help" ? ( localizeWithPath(_moduleId, 7, "Accessibility Help")) : ( localizeWithPath(_moduleId, 8, "Accessible View"));
452
- this._title.textContent = ariaLabel;
453
- if (actionsHint && provider.options.type === "view" ) {
454
- ariaLabel = ( localizeWithPath(_moduleId, 9, "Accessible View, {0}", actionsHint));
455
- }
456
- else if (actionsHint) {
457
- ariaLabel = ( localizeWithPath(_moduleId, 10, "Accessibility Help, {0}", actionsHint));
458
- }
459
- if (isWindows && widgetIsFocused) {
460
- ariaLabel = '';
461
- }
462
- this._editorWidget.updateOptions({ ariaLabel });
463
- this._editorWidget.focus();
464
- if (this._currentProvider?.options.position) {
465
- const position = this._editorWidget.getPosition();
466
- const isDefaultPosition = position?.lineNumber === 1 && position.column === 1;
467
- if (this._currentProvider.options.position === 'bottom' || this._currentProvider.options.position === 'initial-bottom' && isDefaultPosition) {
468
- const lastLine = this.editorWidget.getModel()?.getLineCount();
469
- const position = lastLine !== undefined && lastLine > 0 ? ( (new Position(lastLine, 1))) : undefined;
470
- if (position) {
471
- this._editorWidget.setPosition(position);
472
- this._editorWidget.revealLine(position.lineNumber);
473
- }
474
- }
475
- }
476
- });
477
- this._updateToolbar(this._currentProvider.actions, provider.options.type);
478
- const hide = (e) => {
479
- provider.onClose();
480
- e.stopPropagation();
481
- this._contextViewService.hideContextView();
482
- this._updateContextKeys(provider, false);
483
- this._lastProvider = undefined;
484
- this._currentContent = undefined;
485
- };
486
- const disposableStore = ( (new DisposableStore()));
487
- disposableStore.add(this._editorWidget.onKeyDown((e) => {
488
- if (e.keyCode === 3 ) {
489
- this._commandService.executeCommand('editor.action.openLink');
490
- }
491
- else if (e.keyCode === 9 || shouldHide(e.browserEvent, this._keybindingService, this._configurationService)) {
492
- hide(e);
493
- }
494
- else if (e.keyCode === 38 && provider.options.readMoreUrl) {
495
- const url = provider.options.readMoreUrl;
496
- alert(AccessibilityHelpNLS.openingDocs);
497
- this._openerService.open(( (URI.parse(url))));
498
- e.preventDefault();
499
- e.stopPropagation();
500
- }
501
- if (provider instanceof AdvancedContentProvider) {
502
- provider.onKeyDown?.(e);
503
- }
504
- }));
505
- disposableStore.add(addDisposableListener(this._toolbar.getElement(), EventType.KEY_DOWN, (e) => {
506
- const keyboardEvent = ( (new StandardKeyboardEvent(e)));
507
- if (keyboardEvent.equals(9 )) {
508
- hide(e);
509
- }
510
- }));
511
- disposableStore.add(this._editorWidget.onDidBlurEditorWidget(() => {
512
- if (!isActiveElement(this._toolbar.getElement())) {
513
- this._contextViewService.hideContextView();
514
- }
515
- }));
516
- disposableStore.add(this._editorWidget.onDidContentSizeChange(() => this._layout()));
517
- disposableStore.add(this._layoutService.onDidLayoutActiveContainer(() => this._layout()));
518
- return disposableStore;
519
- }
520
- _updateToolbar(providedActions, type) {
521
- this._toolbar.setAriaLabel(type === "help" ? ( localizeWithPath(_moduleId, 11, 'Accessibility Help')) : ( localizeWithPath(_moduleId, 12, "Accessible View")));
522
- const menuActions = [];
523
- const toolbarMenu = this._register(this._menuService.createMenu(MenuId.AccessibleView, this._contextKeyService));
524
- createAndFillInActionBarActions(toolbarMenu, {}, menuActions);
525
- if (providedActions) {
526
- for (const providedAction of providedActions) {
527
- providedAction.class = providedAction.class || ThemeIcon.asClassName(Codicon.primitiveSquare);
528
- providedAction.checked = undefined;
529
- }
530
- this._toolbar.setActions([...providedActions, ...menuActions]);
531
- }
532
- else {
533
- this._toolbar.setActions(menuActions);
534
- }
535
- }
536
- _layout() {
537
- const dimension = this._layoutService.activeContainerDimension;
538
- const maxHeight = dimension.height && dimension.height * .4;
539
- const height = Math.min(maxHeight, this._editorWidget.getContentHeight());
540
- const width = Math.min(dimension.width * 0.62 , 600 );
541
- this._editorWidget.layout({ width, height });
542
- }
543
- async _getTextModel(resource) {
544
- const existing = this._modelService.getModel(resource);
545
- if (existing && !existing.isDisposed()) {
546
- return existing;
547
- }
548
- return this._modelService.createModel(resource.fragment, null, resource, false);
549
- }
550
- _goToSymbolsSupported() {
551
- if (!this._currentProvider) {
552
- return false;
553
- }
554
- return this._currentProvider.options.type === "help" || this._currentProvider.options.language === 'markdown' || this._currentProvider.options.language === undefined || (this._currentProvider instanceof AdvancedContentProvider && !!this._currentProvider.getSymbols?.());
555
- }
556
- _updateLastProvider() {
557
- const provider = this._currentProvider;
558
- if (!provider) {
559
- return;
560
- }
561
- const lastProvider = provider instanceof AdvancedContentProvider ? ( (new AdvancedContentProvider(
562
- provider.id,
563
- provider.options,
564
- provider.provideContent.bind(provider),
565
- provider.onClose,
566
- provider.verbositySettingKey,
567
- provider.actions,
568
- provider.next,
569
- provider.previous,
570
- provider.onKeyDown,
571
- provider.getSymbols
572
- ))) : ( (new ExtensionContentProvider(
573
- provider.id,
574
- provider.options,
575
- provider.provideContent.bind(provider),
576
- provider.onClose,
577
- provider.next,
578
- provider.previous,
579
- provider.actions
580
- )));
581
- return lastProvider;
582
- }
583
- showAccessibleViewHelp() {
584
- const lastProvider = this._updateLastProvider();
585
- if (!lastProvider) {
586
- return;
587
- }
588
- const accessibleViewHelpProvider = {
589
- id: lastProvider.id,
590
- provideContent: () => lastProvider.options.customHelp ? lastProvider?.options.customHelp() : this._getAccessibleViewHelpDialogContent(this._goToSymbolsSupported()),
591
- onClose: () => {
592
- this._contextViewService.hideContextView();
593
- queueMicrotask(() => this.show(lastProvider));
594
- },
595
- options: { type: "help" },
596
- verbositySettingKey: lastProvider instanceof AdvancedContentProvider ? lastProvider.verbositySettingKey : undefined
597
- };
598
- this._contextViewService.hideContextView();
599
- queueMicrotask(() => this.show(accessibleViewHelpProvider, undefined, true));
600
- }
601
- _getAccessibleViewHelpDialogContent(providerHasSymbols) {
602
- const navigationHint = this._getNavigationHint();
603
- const goToSymbolHint = this._getGoToSymbolHint(providerHasSymbols);
604
- const toolbarHint = ( localizeWithPath(_moduleId, 13, "Navigate to the toolbar (Shift+Tab)."));
605
- const chatHints = this._getChatHints();
606
- let hint = ( localizeWithPath(_moduleId, 14, "In the accessible view, you can:\n"));
607
- if (navigationHint) {
608
- hint += ' - ' + navigationHint + '\n';
609
- }
610
- if (goToSymbolHint) {
611
- hint += ' - ' + goToSymbolHint + '\n';
612
- }
613
- if (toolbarHint) {
614
- hint += ' - ' + toolbarHint + '\n';
615
- }
616
- if (chatHints) {
617
- hint += chatHints;
618
- }
619
- return hint;
620
- }
621
- _getChatHints() {
622
- if (this._currentProvider?.id !== "panelChat" ) {
623
- return;
624
- }
625
- let hint = '';
626
- const insertAtCursorKb = this._keybindingService.lookupKeybinding('workbench.action.chat.insertCodeBlock')?.getAriaLabel();
627
- const insertIntoNewFileKb = this._keybindingService.lookupKeybinding('workbench.action.chat.insertIntoNewFile')?.getAriaLabel();
628
- const runInTerminalKb = this._keybindingService.lookupKeybinding('workbench.action.chat.runInTerminal')?.getAriaLabel();
629
- if (insertAtCursorKb) {
630
- hint += ( localizeWithPath(
631
- _moduleId,
632
- 15,
633
- " - Insert the code block at the cursor ({0}).\n",
634
- insertAtCursorKb
635
- ));
636
- }
637
- else {
638
- hint += ( localizeWithPath(
639
- _moduleId,
640
- 16,
641
- " - Insert the code block at the cursor by configuring a keybinding for the Chat: Insert Code Block command.\n"
642
- ));
643
- }
644
- if (insertIntoNewFileKb) {
645
- hint += ( localizeWithPath(
646
- _moduleId,
647
- 17,
648
- " - Insert the code block into a new file ({0}).\n",
649
- insertIntoNewFileKb
650
- ));
651
- }
652
- else {
653
- hint += ( localizeWithPath(
654
- _moduleId,
655
- 18,
656
- " - Insert the code block into a new file by configuring a keybinding for the Chat: Insert into New File command.\n"
657
- ));
658
- }
659
- if (runInTerminalKb) {
660
- hint += ( localizeWithPath(
661
- _moduleId,
662
- 19,
663
- " - Run the code block in the terminal ({0}).\n",
664
- runInTerminalKb
665
- ));
666
- }
667
- else {
668
- hint += ( localizeWithPath(
669
- _moduleId,
670
- 20,
671
- " - Run the coe block in the terminal by configuring a keybinding for the Chat: Insert into Terminal command.\n"
672
- ));
673
- }
674
- return hint;
675
- }
676
- _getNavigationHint() {
677
- let hint = '';
678
- const nextKeybinding = this._keybindingService.lookupKeybinding("editor.action.accessibleViewNext" )?.getAriaLabel();
679
- const previousKeybinding = this._keybindingService.lookupKeybinding("editor.action.accessibleViewPrevious" )?.getAriaLabel();
680
- if (nextKeybinding && previousKeybinding) {
681
- hint = ( localizeWithPath(
682
- _moduleId,
683
- 21,
684
- "Show the next ({0}) or previous ({1}) item.",
685
- nextKeybinding,
686
- previousKeybinding
687
- ));
688
- }
689
- else {
690
- hint = ( localizeWithPath(
691
- _moduleId,
692
- 22,
693
- "Show the next or previous item by configuring keybindings for the Show Next & Previous in Accessible View commands."
694
- ));
695
- }
696
- return hint;
697
- }
698
- _getDisableVerbosityHint(verbositySettingKey) {
699
- if (!this._configurationService.getValue(verbositySettingKey)) {
700
- return '';
701
- }
702
- let hint = '';
703
- const disableKeybinding = this._keybindingService.lookupKeybinding("editor.action.accessibleViewDisableHint" , this._contextKeyService)?.getAriaLabel();
704
- if (disableKeybinding) {
705
- hint = ( localizeWithPath(
706
- _moduleId,
707
- 23,
708
- "\n\nDisable accessibility verbosity for this feature ({0}).",
709
- disableKeybinding
710
- ));
711
- }
712
- else {
713
- hint = ( localizeWithPath(
714
- _moduleId,
715
- 24,
716
- "\n\nAdd a keybinding for the command Disable Accessible View Hint, which disables accessibility verbosity for this feature.s"
717
- ));
718
- }
719
- return hint;
720
- }
721
- _getGoToSymbolHint(providerHasSymbols) {
722
- const goToSymbolKb = this._keybindingService.lookupKeybinding("editor.action.accessibleViewGoToSymbol" )?.getAriaLabel();
723
- let goToSymbolHint = '';
724
- if (providerHasSymbols) {
725
- if (goToSymbolKb) {
726
- goToSymbolHint = ( localizeWithPath(_moduleId, 25, 'Go to a symbol ({0}).', goToSymbolKb));
727
- }
728
- else {
729
- goToSymbolHint = ( localizeWithPath(
730
- _moduleId,
731
- 26,
732
- 'To go to a symbol, configure a keybinding for the command Go To Symbol in Accessible View'
733
- ));
734
- }
735
- }
736
- return goToSymbolHint;
737
- }
738
- };
739
- AccessibleView = ( (__decorate([
740
- ( (__param(0, IOpenerService))),
741
- ( (__param(1, IInstantiationService))),
742
- ( (__param(2, IConfigurationService))),
743
- ( (__param(3, IModelService))),
744
- ( (__param(4, IContextViewService))),
745
- ( (__param(5, IContextKeyService))),
746
- ( (__param(6, IAccessibilityService))),
747
- ( (__param(7, IKeybindingService))),
748
- ( (__param(8, ILayoutService))),
749
- ( (__param(9, IMenuService))),
750
- ( (__param(10, ICommandService))),
751
- ( (__param(11, IChatCodeBlockContextProviderService))),
752
- ( (__param(12, IStorageService)))
753
- ], AccessibleView)));
754
- let AccessibleViewService = class AccessibleViewService extends Disposable {
755
- constructor(_instantiationService, _configurationService, _keybindingService) {
756
- super();
757
- this._instantiationService = _instantiationService;
758
- this._configurationService = _configurationService;
759
- this._keybindingService = _keybindingService;
760
- }
761
- show(provider, position) {
762
- if (!this._accessibleView) {
763
- this._accessibleView = this._register(this._instantiationService.createInstance(AccessibleView));
764
- }
765
- this._accessibleView.show(provider, undefined, undefined, position);
766
- }
767
- showLastProvider(id) {
768
- this._accessibleView?.showLastProvider(id);
769
- }
770
- next() {
771
- this._accessibleView?.next();
772
- }
773
- previous() {
774
- this._accessibleView?.previous();
775
- }
776
- goToSymbol() {
777
- this._accessibleView?.goToSymbol();
778
- }
779
- getOpenAriaHint(verbositySettingKey) {
780
- if (!this._configurationService.getValue(verbositySettingKey)) {
781
- return null;
782
- }
783
- const keybinding = this._keybindingService.lookupKeybinding("editor.action.accessibleView" )?.getAriaLabel();
784
- let hint = null;
785
- if (keybinding) {
786
- hint = ( localizeWithPath(_moduleId, 27, "Inspect this in the accessible view with {0}", keybinding));
787
- }
788
- else {
789
- hint = ( localizeWithPath(
790
- _moduleId,
791
- 28,
792
- "Inspect this in the accessible view via the command Open Accessible View which is currently not triggerable via keybinding."
793
- ));
794
- }
795
- return hint;
796
- }
797
- disableHint() {
798
- this._accessibleView?.disableHint();
799
- }
800
- showAccessibleViewHelp() {
801
- this._accessibleView?.showAccessibleViewHelp();
802
- }
803
- getPosition(id) {
804
- return this._accessibleView?.getPosition(id) ?? undefined;
805
- }
806
- getLastPosition() {
807
- const lastLine = this._accessibleView?.editorWidget.getModel()?.getLineCount();
808
- return lastLine !== undefined && lastLine > 0 ? ( (new Position(lastLine, 1))) : undefined;
809
- }
810
- setPosition(position, reveal) {
811
- const editorWidget = this._accessibleView?.editorWidget;
812
- editorWidget?.setPosition(position);
813
- if (reveal) {
814
- editorWidget?.revealLine(position.lineNumber);
815
- }
816
- }
817
- getCodeBlockContext() {
818
- return this._accessibleView?.getCodeBlockContext();
819
- }
820
- navigateToCodeBlock(type) {
821
- this._accessibleView?.navigateToCodeBlock(type);
822
- }
823
- };
824
- AccessibleViewService = ( (__decorate([
825
- ( (__param(0, IInstantiationService))),
826
- ( (__param(1, IConfigurationService))),
827
- ( (__param(2, IKeybindingService)))
828
- ], AccessibleViewService)));
829
- let AccessibleViewSymbolQuickPick = class AccessibleViewSymbolQuickPick {
830
- constructor(_accessibleView, _quickInputService) {
831
- this._accessibleView = _accessibleView;
832
- this._quickInputService = _quickInputService;
833
- }
834
- show(provider) {
835
- const quickPick = this._quickInputService.createQuickPick();
836
- quickPick.placeholder = ( localizeWithPath(_moduleId, 29, "Type to search symbols"));
837
- quickPick.title = ( localizeWithPath(_moduleId, 30, "Go to Symbol Accessible View"));
838
- const symbols = this._accessibleView.getSymbols();
839
- if (!symbols) {
840
- return;
841
- }
842
- for (const symbol of symbols) {
843
- }
844
- quickPick.canSelectMany = false;
845
- quickPick.items = symbols;
846
- quickPick.show();
847
- quickPick.onDidAccept(() => {
848
- this._accessibleView.showSymbol(provider, quickPick.selectedItems[0]);
849
- quickPick.hide();
850
- });
851
- quickPick.onDidHide(() => {
852
- if (quickPick.selectedItems.length === 0) {
853
- this._accessibleView.show(provider);
854
- }
855
- });
856
- }
857
- };
858
- AccessibleViewSymbolQuickPick = ( (__decorate([
859
- ( (__param(1, IQuickInputService)))
860
- ], AccessibleViewSymbolQuickPick)));
861
- function shouldHide(event, keybindingService, configurationService) {
862
- if (!configurationService.getValue("accessibility.accessibleView.closeOnKeyPress" )) {
863
- return false;
864
- }
865
- const standardKeyboardEvent = ( (new StandardKeyboardEvent(event)));
866
- const resolveResult = keybindingService.softDispatch(standardKeyboardEvent, standardKeyboardEvent.target);
867
- const isValidChord = resolveResult.kind === 1 ;
868
- if (keybindingService.inChordMode || isValidChord) {
869
- return false;
870
- }
871
- return shouldHandleKey(event) && !event.ctrlKey && !event.altKey && !event.metaKey && !event.shiftKey;
872
- }
873
- function shouldHandleKey(event) {
874
- return !!event.code.match(/^(Key[A-Z]|Digit[0-9]|Equal|Comma|Period|Slash|Quote|Backquote|Backslash|Minus|Semicolon|Space|Enter)$/);
875
- }
876
- export { AccessibleView, AccessibleViewService, AdvancedContentProvider, ExtensionContentProvider };