@codingame/monaco-vscode-api 18.3.1 → 19.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 (666) hide show
  1. package/missing-services.js +1217 -2932
  2. package/monaco.js +0 -3
  3. package/package.json +8 -8
  4. package/services.d.ts +13 -8
  5. package/services.js +13 -7
  6. package/vscode/product.json.js +1 -1
  7. package/vscode/src/vs/base/browser/dom.d.ts +83 -2
  8. package/vscode/src/vs/base/browser/dom.js +280 -3
  9. package/vscode/src/vs/base/browser/domStylesheets.d.ts +2 -0
  10. package/vscode/src/vs/base/browser/domStylesheets.js +11 -1
  11. package/vscode/src/vs/base/browser/markdownRenderer.d.ts +1 -0
  12. package/vscode/src/vs/base/browser/markdownRenderer.js +34 -18
  13. package/vscode/src/vs/base/browser/ui/button/button.js +4 -1
  14. package/vscode/src/vs/base/browser/ui/codicons/codicon/codicon.ttf +0 -0
  15. package/vscode/src/vs/base/browser/ui/list/list.d.ts +1 -0
  16. package/vscode/src/vs/base/browser/ui/list/listView.d.ts +1 -1
  17. package/vscode/src/vs/base/browser/ui/list/listView.js +5 -5
  18. package/vscode/src/vs/base/browser/ui/list/listWidget.d.ts +1 -1
  19. package/vscode/src/vs/base/browser/ui/list/listWidget.js +5 -1
  20. package/vscode/src/vs/base/browser/ui/toggle/toggle.d.ts +3 -1
  21. package/vscode/src/vs/base/browser/ui/toggle/toggle.js +21 -4
  22. package/vscode/src/vs/base/common/arrays.d.ts +0 -1
  23. package/vscode/src/vs/base/common/arrays.js +1 -6
  24. package/vscode/src/vs/base/common/async.d.ts +1 -0
  25. package/vscode/src/vs/base/common/async.js +2 -1
  26. package/vscode/src/vs/base/common/buffer.d.ts +1 -0
  27. package/vscode/src/vs/base/common/buffer.js +3 -0
  28. package/vscode/src/vs/base/common/codicons.d.ts +7 -0
  29. package/vscode/src/vs/base/common/codiconsLibrary.d.ts +7 -0
  30. package/vscode/src/vs/base/common/codiconsLibrary.js +7 -0
  31. package/vscode/src/vs/base/common/collections.d.ts +1 -0
  32. package/vscode/src/vs/base/common/collections.js +14 -1
  33. package/vscode/src/vs/base/common/color.js +2 -2
  34. package/vscode/src/vs/base/common/dataTransfer.d.ts +1 -1
  35. package/vscode/src/vs/base/common/decorators.d.ts +1 -1
  36. package/vscode/src/vs/base/common/event.d.ts +1 -1
  37. package/vscode/src/vs/base/common/glob.d.ts +1 -1
  38. package/vscode/src/vs/base/common/glob.js +2 -2
  39. package/vscode/src/vs/base/common/hotReloadHelpers.js +1 -1
  40. package/vscode/src/vs/base/common/iterator.d.ts +1 -1
  41. package/vscode/src/vs/base/common/network.d.ts +1 -0
  42. package/vscode/src/vs/base/common/network.js +1 -0
  43. package/vscode/src/vs/base/common/oauth.d.ts +34 -4
  44. package/vscode/src/vs/base/common/oauth.js +77 -6
  45. package/vscode/src/vs/base/common/observableInternal/index.d.ts +2 -2
  46. package/vscode/src/vs/base/common/observableInternal/logging/debugger/utils.js +8 -1
  47. package/vscode/src/vs/base/common/observableInternal/set.js +0 -1
  48. package/vscode/src/vs/base/common/performance.js +1 -1
  49. package/vscode/src/vs/base/common/product.d.ts +2 -1
  50. package/vscode/src/vs/base/common/types.d.ts +4 -8
  51. package/vscode/src/vs/base/common/types.js +3 -3
  52. package/vscode/src/vs/base/common/worker/webWorker.js +1 -1
  53. package/vscode/src/vs/editor/browser/config/migrateOptions.js +8 -0
  54. package/vscode/src/vs/editor/browser/controller/editContext/native/nativeEditContext.d.ts +2 -0
  55. package/vscode/src/vs/editor/browser/controller/editContext/native/nativeEditContext.js +18 -14
  56. package/vscode/src/vs/editor/browser/controller/editContext/textArea/textAreaEditContext.js +5 -3
  57. package/vscode/src/vs/editor/browser/editorBrowser.d.ts +3 -1
  58. package/vscode/src/vs/editor/browser/gpu/atlas/textureAtlas.d.ts +3 -1
  59. package/vscode/src/vs/editor/browser/gpu/atlas/textureAtlas.js +5 -4
  60. package/vscode/src/vs/editor/browser/gpu/raster/glyphRasterizer.d.ts +3 -1
  61. package/vscode/src/vs/editor/browser/gpu/raster/glyphRasterizer.js +3 -3
  62. package/vscode/src/vs/editor/browser/gpu/viewGpuContext.js +2 -3
  63. package/vscode/src/vs/editor/browser/observableCodeEditor.d.ts +6 -0
  64. package/vscode/src/vs/editor/browser/observableCodeEditor.js +38 -1
  65. package/vscode/src/vs/editor/browser/services/abstractCodeEditorService.js +9 -1
  66. package/vscode/src/vs/editor/browser/services/bulkEditService.d.ts +2 -0
  67. package/vscode/src/vs/editor/browser/services/editorWorkerService.d.ts +4 -0
  68. package/vscode/src/vs/editor/browser/services/editorWorkerService.js +18 -2
  69. package/vscode/src/vs/editor/browser/services/inlineCompletionsService.d.ts +32 -0
  70. package/vscode/src/vs/editor/browser/services/inlineCompletionsService.js +141 -0
  71. package/vscode/src/vs/editor/browser/services/inlineCompletionsService.service.d.ts +11 -0
  72. package/vscode/src/vs/editor/browser/services/inlineCompletionsService.service.js +6 -0
  73. package/vscode/src/vs/editor/browser/view/domLineBreaksComputer.js +2 -2
  74. package/vscode/src/vs/editor/browser/view/viewController.js +5 -1
  75. package/vscode/src/vs/editor/browser/view.d.ts +1 -1
  76. package/vscode/src/vs/editor/browser/view.js +5 -5
  77. package/vscode/src/vs/editor/browser/viewParts/viewCursors/viewCursors.d.ts +1 -1
  78. package/vscode/src/vs/editor/browser/viewParts/viewCursors/viewCursors.js +3 -3
  79. package/vscode/src/vs/editor/browser/viewParts/viewLines/viewLine.js +14 -6
  80. package/vscode/src/vs/editor/browser/viewParts/viewLines/viewLineOptions.d.ts +1 -0
  81. package/vscode/src/vs/editor/browser/viewParts/viewLines/viewLineOptions.js +3 -7
  82. package/vscode/src/vs/editor/browser/viewParts/viewLinesGpu/viewLinesGpu.js +12 -2
  83. package/vscode/src/vs/editor/browser/viewParts/whitespace/whitespace.js +4 -2
  84. package/vscode/src/vs/editor/browser/widget/codeEditor/codeEditorWidget.d.ts +8 -2
  85. package/vscode/src/vs/editor/browser/widget/codeEditor/codeEditorWidget.js +39 -9
  86. package/vscode/src/vs/editor/browser/widget/diffEditor/commands.js +12 -12
  87. package/vscode/src/vs/editor/browser/widget/diffEditor/components/accessibleDiffViewer.css +52 -49
  88. package/vscode/src/vs/editor/browser/widget/diffEditor/components/accessibleDiffViewer.js +15 -15
  89. package/vscode/src/vs/editor/browser/widget/diffEditor/components/diffEditorEditors.js +3 -1
  90. package/vscode/src/vs/editor/browser/widget/diffEditor/components/diffEditorViewZones/diffEditorViewZones.js +2 -2
  91. package/vscode/src/vs/editor/browser/widget/diffEditor/components/diffEditorViewZones/inlineDiffDeletedCodeMargin.js +7 -7
  92. package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditor.contribution.js +5 -5
  93. package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditorViewModel.js +1 -1
  94. package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditorWidget.js +7 -1
  95. package/vscode/src/vs/editor/browser/widget/diffEditor/features/gutterFeature.js +1 -1
  96. package/vscode/src/vs/editor/browser/widget/diffEditor/features/hideUnchangedRegionsFeature.js +7 -7
  97. package/vscode/src/vs/editor/browser/widget/diffEditor/features/movedBlocksLinesFeature.js +5 -5
  98. package/vscode/src/vs/editor/browser/widget/diffEditor/features/revertButtonsFeature.js +2 -2
  99. package/vscode/src/vs/editor/browser/widget/diffEditor/registrations.contribution.js +5 -5
  100. package/vscode/src/vs/editor/common/config/editorConfigurationSchema.js +54 -54
  101. package/vscode/src/vs/editor/common/config/editorOptions.d.ts +173 -160
  102. package/vscode/src/vs/editor/common/config/editorOptions.js +645 -570
  103. package/vscode/src/vs/editor/common/config/fontInfo.js +1 -1
  104. package/vscode/src/vs/editor/common/core/2d/point.d.ts +5 -0
  105. package/vscode/src/vs/editor/common/core/2d/point.js +23 -0
  106. package/vscode/src/vs/editor/common/core/editorColorRegistry.js +71 -71
  107. package/vscode/src/vs/editor/common/core/edits/edit.d.ts +6 -0
  108. package/vscode/src/vs/editor/common/core/edits/edit.js +41 -0
  109. package/vscode/src/vs/editor/common/core/edits/lineEdit.d.ts +17 -11
  110. package/vscode/src/vs/editor/common/core/edits/lineEdit.js +36 -9
  111. package/vscode/src/vs/editor/common/core/edits/stringEdit.d.ts +63 -16
  112. package/vscode/src/vs/editor/common/core/edits/stringEdit.js +205 -48
  113. package/vscode/src/vs/editor/common/core/edits/textEdit.d.ts +5 -1
  114. package/vscode/src/vs/editor/common/core/edits/textEdit.js +18 -2
  115. package/vscode/src/vs/editor/common/core/text/abstractText.d.ts +3 -1
  116. package/vscode/src/vs/editor/common/core/text/abstractText.js +10 -1
  117. package/vscode/src/vs/editor/common/core/text/getPositionOffsetTransformerFromTextModel.js +2 -1
  118. package/vscode/src/vs/editor/common/core/text/positionToOffset.d.ts +2 -28
  119. package/vscode/src/vs/editor/common/core/text/positionToOffset.js +11 -92
  120. package/vscode/src/vs/editor/common/core/text/positionToOffsetImpl.d.ts +37 -0
  121. package/vscode/src/vs/editor/common/core/text/positionToOffsetImpl.js +104 -0
  122. package/vscode/src/vs/editor/common/cursor/cursor.d.ts +3 -2
  123. package/vscode/src/vs/editor/common/cursor/cursor.js +24 -16
  124. package/vscode/src/vs/editor/common/diff/defaultLinesDiffComputer/defaultLinesDiffComputer.js +3 -1
  125. package/vscode/src/vs/editor/common/diff/rangeMapping.d.ts +1 -0
  126. package/vscode/src/vs/editor/common/diff/rangeMapping.js +11 -1
  127. package/vscode/src/vs/editor/common/editorCommon.d.ts +2 -1
  128. package/vscode/src/vs/editor/common/editorContextKeys.js +46 -46
  129. package/vscode/src/vs/editor/common/languages/defaultDocumentColorsComputer.js +1 -1
  130. package/vscode/src/vs/editor/common/languages/languageConfiguration.d.ts +5 -1
  131. package/vscode/src/vs/editor/common/languages/languageConfigurationRegistry.d.ts +1 -0
  132. package/vscode/src/vs/editor/common/languages/languageConfigurationRegistry.js +7 -1
  133. package/vscode/src/vs/editor/common/languages/modesRegistry.js +1 -1
  134. package/vscode/src/vs/editor/common/languages.d.ts +31 -27
  135. package/vscode/src/vs/editor/common/languages.js +57 -62
  136. package/vscode/src/vs/editor/common/model/editStack.d.ts +2 -1
  137. package/vscode/src/vs/editor/common/model/editStack.js +4 -3
  138. package/vscode/src/vs/editor/common/model/intervalTree.d.ts +2 -2
  139. package/vscode/src/vs/editor/common/model/intervalTree.js +24 -7
  140. package/vscode/src/vs/editor/common/model/textModel.d.ts +24 -10
  141. package/vscode/src/vs/editor/common/model/textModel.js +114 -53
  142. package/vscode/src/vs/editor/common/model/tokens/abstractSyntaxTokenBackend.js +1 -1
  143. package/vscode/src/vs/editor/common/model/tokens/treeSitter/treeSitterSyntaxTokenBackend.d.ts +0 -3
  144. package/vscode/src/vs/editor/common/model/tokens/treeSitter/treeSitterSyntaxTokenBackend.js +1 -13
  145. package/vscode/src/vs/editor/common/model/tokens/treeSitter/treeSitterTree.d.ts +2 -0
  146. package/vscode/src/vs/editor/common/model/tokens/treeSitter/treeSitterTree.js +13 -2
  147. package/vscode/src/vs/editor/common/model.d.ts +8 -2
  148. package/vscode/src/vs/editor/common/services/editorWebWorker.d.ts +4 -0
  149. package/vscode/src/vs/editor/common/services/editorWebWorker.js +14 -0
  150. package/vscode/src/vs/editor/common/services/editorWorker.service.d.ts +4 -0
  151. package/vscode/src/vs/editor/common/services/findSectionHeaders.js +7 -0
  152. package/vscode/src/vs/editor/common/services/languageFeatures.service.d.ts +1 -2
  153. package/vscode/src/vs/editor/common/services/languageFeaturesService.d.ts +1 -2
  154. package/vscode/src/vs/editor/common/services/languageFeaturesService.js +0 -1
  155. package/vscode/src/vs/editor/common/services/model.service.d.ts +2 -1
  156. package/vscode/src/vs/editor/common/services/modelService.d.ts +2 -1
  157. package/vscode/src/vs/editor/common/services/modelService.js +3 -2
  158. package/vscode/src/vs/editor/common/services/textResourceConfiguration.service.d.ts +1 -1
  159. package/vscode/src/vs/editor/common/standalone/standaloneEnums.d.ts +159 -157
  160. package/vscode/src/vs/editor/common/standalone/standaloneEnums.js +160 -159
  161. package/vscode/src/vs/editor/common/standaloneStrings.js +50 -49
  162. package/vscode/src/vs/editor/common/textModelEditReason.d.ts +94 -12
  163. package/vscode/src/vs/editor/common/textModelEditReason.js +86 -20
  164. package/vscode/src/vs/editor/common/textModelEvents.d.ts +24 -0
  165. package/vscode/src/vs/editor/common/textModelEvents.js +33 -1
  166. package/vscode/src/vs/editor/common/tokens/lineTokens.d.ts +22 -1
  167. package/vscode/src/vs/editor/common/tokens/lineTokens.js +79 -2
  168. package/vscode/src/vs/editor/common/viewLayout/viewLineRenderer.js +2 -2
  169. package/vscode/src/vs/editor/common/viewModel/viewModelDecorations.d.ts +5 -1
  170. package/vscode/src/vs/editor/common/viewModel/viewModelDecorations.js +10 -4
  171. package/vscode/src/vs/editor/common/viewModel/viewModelImpl.d.ts +3 -1
  172. package/vscode/src/vs/editor/common/viewModel/viewModelImpl.js +39 -12
  173. package/vscode/src/vs/editor/common/viewModel/viewModelLines.d.ts +3 -3
  174. package/vscode/src/vs/editor/common/viewModel/viewModelLines.js +6 -6
  175. package/vscode/src/vs/editor/common/viewModel.d.ts +3 -1
  176. package/vscode/src/vs/editor/common/viewModel.js +2 -1
  177. package/vscode/src/vs/editor/common/viewModelEventDispatcher.d.ts +11 -3
  178. package/vscode/src/vs/editor/common/viewModelEventDispatcher.js +14 -1
  179. package/vscode/src/vs/editor/contrib/anchorSelect/browser/anchorSelect.js +6 -6
  180. package/vscode/src/vs/editor/contrib/bracketMatching/browser/bracketMatching.js +6 -6
  181. package/vscode/src/vs/editor/contrib/caretOperations/browser/caretOperations.js +2 -2
  182. package/vscode/src/vs/editor/contrib/caretOperations/browser/transpose.js +1 -1
  183. package/vscode/src/vs/editor/contrib/clipboard/browser/clipboard.js +20 -20
  184. package/vscode/src/vs/editor/contrib/codeAction/browser/codeAction.js +3 -1
  185. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionCommands.js +29 -29
  186. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionContributions.js +3 -3
  187. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionController.js +3 -3
  188. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionMenu.js +8 -8
  189. package/vscode/src/vs/editor/contrib/codeAction/browser/lightBulbWidget.js +9 -9
  190. package/vscode/src/vs/editor/contrib/codelens/browser/codelensController.js +2 -2
  191. package/vscode/src/vs/editor/contrib/codelens/browser/codelensWidget.css +2 -7
  192. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorPickerParts/colorPickerCloseButton.js +1 -1
  193. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorPickerParts/colorPickerHeader.js +1 -1
  194. package/vscode/src/vs/editor/contrib/colorPicker/browser/defaultDocumentColorProvider.js +3 -3
  195. package/vscode/src/vs/editor/contrib/colorPicker/browser/hoverColorPicker/hoverColorPickerParticipant.js +1 -1
  196. package/vscode/src/vs/editor/contrib/colorPicker/browser/standaloneColorPicker/standaloneColorPickerActions.js +7 -7
  197. package/vscode/src/vs/editor/contrib/comment/browser/comment.js +6 -6
  198. package/vscode/src/vs/editor/contrib/comment/browser/lineCommentCommand.d.ts +1 -1
  199. package/vscode/src/vs/editor/contrib/comment/browser/lineCommentCommand.js +9 -5
  200. package/vscode/src/vs/editor/contrib/contextmenu/browser/contextmenu.js +10 -10
  201. package/vscode/src/vs/editor/contrib/cursorUndo/browser/cursorUndo.js +2 -2
  202. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/copyPasteContribution.js +4 -4
  203. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/copyPasteController.js +9 -9
  204. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/defaultProviders.js +8 -8
  205. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/dropIntoEditorController.js +3 -3
  206. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/postEditWidget.js +2 -2
  207. package/vscode/src/vs/editor/contrib/editorState/browser/keybindingCancellation.js +1 -1
  208. package/vscode/src/vs/editor/contrib/find/browser/findController.js +16 -16
  209. package/vscode/src/vs/editor/contrib/find/browser/findWidget.js +29 -29
  210. package/vscode/src/vs/editor/contrib/folding/browser/folding.js +20 -20
  211. package/vscode/src/vs/editor/contrib/folding/browser/foldingDecorations.js +9 -9
  212. package/vscode/src/vs/editor/contrib/fontZoom/browser/fontZoom.js +3 -3
  213. package/vscode/src/vs/editor/contrib/format/browser/formatActions.js +2 -2
  214. package/vscode/src/vs/editor/contrib/gotoError/browser/gotoError.js +8 -8
  215. package/vscode/src/vs/editor/contrib/gotoError/browser/gotoErrorWidget.js +14 -14
  216. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/goToCommands.js +39 -39
  217. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/link/goToDefinitionAtPosition.js +1 -1
  218. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/peek/referencesController.js +3 -3
  219. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/peek/referencesTree.js +3 -3
  220. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/peek/referencesWidget.js +3 -3
  221. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/referencesModel.js +8 -8
  222. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/symbolNavigation.js +3 -3
  223. package/vscode/src/vs/editor/contrib/gpu/browser/gpuActions.js +10 -5
  224. package/vscode/src/vs/editor/contrib/hover/browser/contentHoverRendered.js +3 -3
  225. package/vscode/src/vs/editor/contrib/hover/browser/hoverAccessibleViews.js +2 -2
  226. package/vscode/src/vs/editor/contrib/hover/browser/hoverActionIds.js +2 -2
  227. package/vscode/src/vs/editor/contrib/hover/browser/hoverActions.js +24 -24
  228. package/vscode/src/vs/editor/contrib/hover/browser/markdownHoverParticipant.js +9 -9
  229. package/vscode/src/vs/editor/contrib/hover/browser/markerHoverParticipant.js +10 -6
  230. package/vscode/src/vs/editor/contrib/inPlaceReplace/browser/inPlaceReplace.js +2 -2
  231. package/vscode/src/vs/editor/contrib/indentation/browser/indentation.d.ts +0 -1
  232. package/vscode/src/vs/editor/contrib/indentation/browser/indentation.js +22 -47
  233. package/vscode/src/vs/editor/contrib/inlayHints/browser/inlayHintsHover.js +8 -8
  234. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/controller/commands.js +19 -19
  235. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/controller/inlineCompletionContextKeys.js +11 -11
  236. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/controller/inlineCompletionsController.js +1 -1
  237. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/hintsWidget/hoverParticipant.js +2 -2
  238. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/hintsWidget/inlineCompletionsHintsWidget.d.ts +2 -2
  239. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/hintsWidget/inlineCompletionsHintsWidget.js +11 -12
  240. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/inlineCompletions.contribution.js +3 -2
  241. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/animation.d.ts +7 -0
  242. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/animation.js +5 -5
  243. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/changeRecorder.d.ts +3 -1
  244. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/changeRecorder.js +35 -30
  245. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/ghostText.js +2 -0
  246. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/graph.d.ts +9 -0
  247. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/graph.js +66 -0
  248. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/inlineCompletionsModel.d.ts +12 -4
  249. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/inlineCompletionsModel.js +144 -100
  250. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/inlineCompletionsSource.d.ts +7 -5
  251. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/inlineCompletionsSource.js +100 -49
  252. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/inlineEdit.d.ts +3 -3
  253. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/inlineSuggestionItem.d.ts +4 -1
  254. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/inlineSuggestionItem.js +37 -29
  255. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/provideInlineCompletions.d.ts +39 -13
  256. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/provideInlineCompletions.js +150 -162
  257. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/structuredLogger.d.ts +0 -1
  258. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/utils.js +2 -1
  259. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/ghostText/ghostTextView.d.ts +2 -0
  260. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/ghostText/ghostTextView.js +12 -0
  261. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineCompletionsView.js +9 -5
  262. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/components/gutterIndicatorMenu.js +13 -10
  263. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/components/gutterIndicatorView.js +2 -3
  264. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditWithChanges.d.ts +5 -5
  265. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditWithChanges.js +2 -2
  266. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsModel.d.ts +5 -4
  267. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsModel.js +5 -3
  268. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsView.d.ts +0 -1
  269. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsView.js +103 -62
  270. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViewInterface.d.ts +25 -3
  271. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViewInterface.js +13 -1
  272. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/inlineEditsCollapsedView.js +1 -2
  273. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/inlineEditsCustomView.js +4 -6
  274. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/inlineEditsDeletionView.d.ts +1 -0
  275. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/inlineEditsDeletionView.js +7 -4
  276. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/inlineEditsInsertionView.d.ts +1 -0
  277. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/inlineEditsInsertionView.js +16 -12
  278. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/inlineEditsLineReplacementView.d.ts +3 -4
  279. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/inlineEditsLineReplacementView.js +34 -34
  280. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/inlineEditsSideBySideView.d.ts +1 -0
  281. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/inlineEditsSideBySideView.js +13 -8
  282. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/inlineEditsWordReplacementView.js +6 -7
  283. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/originalEditorInlineDiffView.d.ts +2 -1
  284. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/originalEditorInlineDiffView.js +20 -2
  285. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/theme.js +20 -20
  286. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/utils/utils.js +4 -11
  287. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/view.css +10 -7
  288. package/vscode/src/vs/editor/contrib/insertFinalNewLine/browser/insertFinalNewLine.js +1 -1
  289. package/vscode/src/vs/editor/contrib/lineSelection/browser/lineSelection.js +1 -1
  290. package/vscode/src/vs/editor/contrib/linesOperations/browser/linesOperations.js +30 -30
  291. package/vscode/src/vs/editor/contrib/linkedEditing/browser/linkedEditing.js +2 -2
  292. package/vscode/src/vs/editor/contrib/links/browser/links.js +10 -10
  293. package/vscode/src/vs/editor/contrib/message/browser/messageController.js +1 -1
  294. package/vscode/src/vs/editor/contrib/middleScroll/browser/middleScroll.contribution.d.ts +1 -0
  295. package/vscode/src/vs/editor/contrib/middleScroll/browser/middleScroll.contribution.js +5 -0
  296. package/vscode/src/vs/editor/contrib/middleScroll/browser/middleScroll.css +20 -0
  297. package/vscode/src/vs/editor/contrib/middleScroll/browser/middleScrollController.d.ts +9 -0
  298. package/vscode/src/vs/editor/contrib/middleScroll/browser/middleScrollController.js +132 -0
  299. package/vscode/src/vs/editor/contrib/multicursor/browser/multicursor.js +22 -22
  300. package/vscode/src/vs/editor/contrib/parameterHints/browser/parameterHints.js +1 -1
  301. package/vscode/src/vs/editor/contrib/parameterHints/browser/parameterHintsWidget.js +9 -9
  302. package/vscode/src/vs/editor/contrib/peekView/browser/peekView.d.ts +1 -0
  303. package/vscode/src/vs/editor/contrib/peekView/browser/peekView.js +21 -17
  304. package/vscode/src/vs/editor/contrib/placeholderText/browser/placeholderText.contribution.js +1 -1
  305. package/vscode/src/vs/editor/contrib/placeholderText/browser/placeholderText.css +0 -1
  306. package/vscode/src/vs/editor/contrib/readOnlyMessage/browser/contribution.js +2 -2
  307. package/vscode/src/vs/editor/contrib/rename/browser/rename.js +14 -12
  308. package/vscode/src/vs/editor/contrib/rename/browser/renameWidget.js +6 -6
  309. package/vscode/src/vs/editor/contrib/smartSelect/browser/smartSelect.js +4 -4
  310. package/vscode/src/vs/editor/contrib/snippet/browser/snippetController2.d.ts +2 -0
  311. package/vscode/src/vs/editor/contrib/snippet/browser/snippetController2.js +5 -5
  312. package/vscode/src/vs/editor/contrib/snippet/browser/snippetSession.d.ts +2 -1
  313. package/vscode/src/vs/editor/contrib/snippet/browser/snippetSession.js +3 -2
  314. package/vscode/src/vs/editor/contrib/snippet/browser/snippetVariables.js +4 -4
  315. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScroll.css +24 -24
  316. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollActions.js +11 -11
  317. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollController.js +13 -13
  318. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollModelProvider.js +18 -10
  319. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollProvider.d.ts +4 -3
  320. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollProvider.js +34 -39
  321. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollWidget.d.ts +5 -6
  322. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollWidget.js +65 -70
  323. package/vscode/src/vs/editor/contrib/suggest/browser/suggest.js +8 -8
  324. package/vscode/src/vs/editor/contrib/suggest/browser/suggestController.js +13 -11
  325. package/vscode/src/vs/editor/contrib/suggest/browser/suggestInlineCompletions.d.ts +1 -1
  326. package/vscode/src/vs/editor/contrib/suggest/browser/suggestInlineCompletions.js +1 -1
  327. package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidget.d.ts +1 -0
  328. package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidget.js +18 -18
  329. package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidgetDetails.js +2 -2
  330. package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidgetRenderer.js +4 -2
  331. package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidgetStatus.js +1 -1
  332. package/vscode/src/vs/editor/contrib/suggest/browser/wordContextKey.js +1 -1
  333. package/vscode/src/vs/editor/contrib/symbolIcons/browser/symbolIcons.js +33 -33
  334. package/vscode/src/vs/editor/contrib/toggleTabFocusMode/browser/toggleTabFocusMode.js +4 -4
  335. package/vscode/src/vs/editor/contrib/tokenization/browser/tokenization.js +1 -1
  336. package/vscode/src/vs/editor/contrib/unicodeHighlighter/browser/bannerController.js +1 -1
  337. package/vscode/src/vs/editor/contrib/unicodeHighlighter/browser/unicodeHighlighter.js +24 -24
  338. package/vscode/src/vs/editor/contrib/unusualLineTerminators/browser/unusualLineTerminators.js +5 -5
  339. package/vscode/src/vs/editor/contrib/wordHighlighter/browser/highlightDecorations.js +9 -9
  340. package/vscode/src/vs/editor/contrib/wordHighlighter/browser/wordHighlighter.js +3 -3
  341. package/vscode/src/vs/editor/contrib/wordOperations/browser/wordOperations.js +1 -1
  342. package/vscode/src/vs/editor/standalone/browser/standaloneServices.d.ts +1 -1
  343. package/vscode/src/vs/editor/standalone/browser/standaloneServices.js +5 -2
  344. package/vscode/src/vs/platform/accessibility/browser/accessibleView.d.ts +1 -1
  345. package/vscode/src/vs/platform/accessibilitySignal/browser/accessibilitySignalService.js +79 -69
  346. package/vscode/src/vs/platform/action/common/actionCommonCategories.js +6 -6
  347. package/vscode/src/vs/platform/actionWidget/browser/actionList.js +4 -4
  348. package/vscode/src/vs/platform/actionWidget/browser/actionWidget.js +7 -7
  349. package/vscode/src/vs/platform/actions/browser/menuEntryActionViewItem.js +5 -5
  350. package/vscode/src/vs/platform/actions/browser/toolbar.js +2 -2
  351. package/vscode/src/vs/platform/actions/common/actions.d.ts +0 -1
  352. package/vscode/src/vs/platform/actions/common/actions.js +0 -1
  353. package/vscode/src/vs/platform/actions/common/menuResetAction.js +1 -1
  354. package/vscode/src/vs/platform/actions/common/menuService.js +2 -2
  355. package/vscode/src/vs/platform/configuration/common/configuration.js +4 -1
  356. package/vscode/src/vs/platform/configuration/common/configurationRegistry.js +11 -11
  357. package/vscode/src/vs/platform/contextkey/browser/contextKeyService.js +1 -1
  358. package/vscode/src/vs/platform/contextkey/common/contextkey.js +11 -11
  359. package/vscode/src/vs/platform/contextkey/common/contextkeys.js +9 -9
  360. package/vscode/src/vs/platform/contextkey/common/scanner.js +5 -5
  361. package/vscode/src/vs/platform/dialogs/common/dialogs.service.d.ts +1 -1
  362. package/vscode/src/vs/platform/dnd/browser/dnd.js +1 -1
  363. package/vscode/src/vs/platform/environment/common/argv.d.ts +11 -0
  364. package/vscode/src/vs/platform/environment/common/environment.service.d.ts +0 -1
  365. package/vscode/src/vs/platform/extensionManagement/common/extensionManagement.d.ts +1 -0
  366. package/vscode/src/vs/platform/extensionManagement/common/extensionManagement.js +19 -19
  367. package/vscode/src/vs/platform/extensionManagement/common/extensionManagement.service.d.ts +1 -1
  368. package/vscode/src/vs/platform/extensionManagement/common/extensionManagementUtil.js +1 -1
  369. package/vscode/src/vs/platform/extensionManagement/common/extensionNls.js +1 -1
  370. package/vscode/src/vs/platform/extensionManagement/common/extensionsScannerService.js +7 -7
  371. package/vscode/src/vs/platform/extensions/common/extensionValidator.js +20 -20
  372. package/vscode/src/vs/platform/extensions/common/extensionsApiProposals.d.ts +9 -3
  373. package/vscode/src/vs/platform/extensions/common/extensionsApiProposals.js +9 -3
  374. package/vscode/src/vs/platform/files/browser/htmlFileSystemProvider.js +2 -2
  375. package/vscode/src/vs/platform/files/common/files.d.ts +6 -1
  376. package/vscode/src/vs/platform/files/common/files.js +11 -7
  377. package/vscode/src/vs/platform/files/common/files.service.d.ts +1 -0
  378. package/vscode/src/vs/platform/history/browser/contextScopedHistoryWidget.js +1 -1
  379. package/vscode/src/vs/platform/keybinding/common/abstractKeybindingService.d.ts +2 -2
  380. package/vscode/src/vs/platform/keybinding/common/abstractKeybindingService.js +4 -4
  381. package/vscode/src/vs/platform/keybinding/common/keybinding.service.d.ts +2 -1
  382. package/vscode/src/vs/platform/languagePacks/common/languagePacks.service.d.ts +1 -1
  383. package/vscode/src/vs/platform/list/browser/listService.d.ts +1 -7
  384. package/vscode/src/vs/platform/list/browser/listService.js +27 -27
  385. package/vscode/src/vs/platform/log/common/log.d.ts +4 -0
  386. package/vscode/src/vs/platform/log/common/log.js +15 -7
  387. package/vscode/src/vs/platform/markers/common/markerService.js +4 -3
  388. package/vscode/src/vs/platform/markers/common/markers.d.ts +2 -0
  389. package/vscode/src/vs/platform/markers/common/markers.js +6 -6
  390. package/vscode/src/vs/platform/mcp/common/mcpManagement.service.d.ts +9 -4
  391. package/vscode/src/vs/platform/mcp/common/mcpResourceScannerService.service.d.ts +10 -0
  392. package/vscode/src/vs/platform/mcp/common/mcpResourceScannerService.service.js +6 -0
  393. package/vscode/src/vs/platform/notification/common/notification.d.ts +1 -0
  394. package/vscode/src/vs/platform/notification/common/notification.js +12 -2
  395. package/vscode/src/vs/platform/product/common/product.js +3 -3
  396. package/vscode/src/vs/platform/quickinput/browser/quickInput.js +10 -10
  397. package/vscode/src/vs/platform/quickinput/browser/quickInputActions.js +3 -3
  398. package/vscode/src/vs/platform/quickinput/browser/quickInputController.js +7 -6
  399. package/vscode/src/vs/platform/quickinput/browser/quickInputTree.js +7 -12
  400. package/vscode/src/vs/platform/quickinput/browser/quickInputUtils.js +1 -1
  401. package/vscode/src/vs/platform/quickinput/common/quickInput.d.ts +2 -1
  402. package/vscode/src/vs/platform/remote/common/remoteAgentEnvironment.d.ts +1 -0
  403. package/vscode/src/vs/platform/remote/common/remoteAuthorityResolver.d.ts +2 -2
  404. package/vscode/src/vs/platform/request/common/request.d.ts +1 -1
  405. package/vscode/src/vs/platform/request/common/request.js +18 -18
  406. package/vscode/src/vs/platform/request/common/request.service.d.ts +1 -1
  407. package/vscode/src/vs/platform/telemetry/common/commonProperties.d.ts +1 -1
  408. package/vscode/src/vs/platform/telemetry/common/telemetry.d.ts +2 -0
  409. package/vscode/src/vs/platform/telemetry/common/telemetryUtils.js +1 -1
  410. package/vscode/src/vs/platform/terminal/common/terminal.d.ts +2 -1
  411. package/vscode/src/vs/platform/terminal/common/terminal.service.d.ts +2 -1
  412. package/vscode/src/vs/platform/theme/browser/defaultStyles.d.ts +1 -1
  413. package/vscode/src/vs/platform/theme/common/colorUtils.js +2 -2
  414. package/vscode/src/vs/platform/theme/common/colors/baseColors.js +17 -17
  415. package/vscode/src/vs/platform/theme/common/colors/chartsColors.js +8 -8
  416. package/vscode/src/vs/platform/theme/common/colors/editorColors.d.ts +1 -0
  417. package/vscode/src/vs/platform/theme/common/colors/editorColors.js +95 -94
  418. package/vscode/src/vs/platform/theme/common/colors/inputColors.js +47 -47
  419. package/vscode/src/vs/platform/theme/common/colors/listColors.js +36 -36
  420. package/vscode/src/vs/platform/theme/common/colors/menuColors.js +7 -7
  421. package/vscode/src/vs/platform/theme/common/colors/minimapColors.js +11 -11
  422. package/vscode/src/vs/platform/theme/common/colors/miscColors.js +15 -15
  423. package/vscode/src/vs/platform/theme/common/colors/quickpickColors.js +9 -9
  424. package/vscode/src/vs/platform/theme/common/colors/searchColors.js +3 -3
  425. package/vscode/src/vs/platform/theme/common/iconRegistry.js +6 -6
  426. package/vscode/src/vs/platform/theme/common/themeService.d.ts +1 -1
  427. package/vscode/src/vs/platform/undoRedo/common/undoRedoService.js +20 -20
  428. package/vscode/src/vs/platform/userDataProfile/common/userDataProfile.d.ts +3 -1
  429. package/vscode/src/vs/platform/userDataProfile/common/userDataProfile.js +6 -2
  430. package/vscode/src/vs/platform/userDataSync/common/userDataSync.d.ts +2 -1
  431. package/vscode/src/vs/platform/userDataSync/common/userDataSync.js +7 -6
  432. package/vscode/src/vs/platform/userDataSync/common/userDataSync.service.d.ts +1 -1
  433. package/vscode/src/vs/platform/window/common/window.d.ts +1 -0
  434. package/vscode/src/vs/platform/workspace/common/workspace.js +1 -1
  435. package/vscode/src/vs/workbench/api/common/extHost.api.impl.js +5 -7
  436. package/vscode/src/vs/workbench/api/common/extHost.protocol.d.ts +25 -24
  437. package/vscode/src/vs/workbench/api/common/extHostAuthentication.d.ts +10 -4
  438. package/vscode/src/vs/workbench/api/common/extHostAuthentication.js +109 -77
  439. package/vscode/src/vs/workbench/api/common/extHostChatAgents2.d.ts +2 -1
  440. package/vscode/src/vs/workbench/api/common/extHostChatAgents2.js +22 -0
  441. package/vscode/src/vs/workbench/api/common/extHostCommands.js +3 -0
  442. package/vscode/src/vs/workbench/api/common/extHostCustomEditors.d.ts +1 -1
  443. package/vscode/src/vs/workbench/api/common/extHostDiagnostics.js +1 -1
  444. package/vscode/src/vs/workbench/api/common/extHostDocuments.d.ts +4 -2
  445. package/vscode/src/vs/workbench/api/common/extHostDocuments.js +35 -5
  446. package/vscode/src/vs/workbench/api/common/extHostEditorTabs.js +3 -3
  447. package/vscode/src/vs/workbench/api/common/extHostExtensionService.js +3 -4
  448. package/vscode/src/vs/workbench/api/common/extHostLanguageFeatures.d.ts +1 -5
  449. package/vscode/src/vs/workbench/api/common/extHostLanguageFeatures.js +34 -182
  450. package/vscode/src/vs/workbench/api/common/extHostLanguageModelTools.d.ts +2 -2
  451. package/vscode/src/vs/workbench/api/common/extHostLanguageModelTools.js +7 -2
  452. package/vscode/src/vs/workbench/api/common/extHostLanguageModels.js +2 -3
  453. package/vscode/src/vs/workbench/api/common/extHostLogService.js +1 -1
  454. package/vscode/src/vs/workbench/api/common/extHostMcp.d.ts +3 -1
  455. package/vscode/src/vs/workbench/api/common/extHostMcp.js +71 -20
  456. package/vscode/src/vs/workbench/api/common/extHostNotebook.d.ts +1 -1
  457. package/vscode/src/vs/workbench/api/common/extHostNotebook.js +7 -5
  458. package/vscode/src/vs/workbench/api/common/extHostNotebookEditor.js +1 -1
  459. package/vscode/src/vs/workbench/api/common/extHostSCM.d.ts +1 -1
  460. package/vscode/src/vs/workbench/api/common/extHostStatusBar.js +2 -2
  461. package/vscode/src/vs/workbench/api/common/extHostTelemetry.js +2 -1
  462. package/vscode/src/vs/workbench/api/common/extHostTerminalService.js +7 -3
  463. package/vscode/src/vs/workbench/api/common/extHostTerminalShellIntegration.d.ts +4 -3
  464. package/vscode/src/vs/workbench/api/common/extHostTerminalShellIntegration.js +5 -2
  465. package/vscode/src/vs/workbench/api/common/extHostTextEditor.js +3 -0
  466. package/vscode/src/vs/workbench/api/common/extHostTreeViews.js +1 -1
  467. package/vscode/src/vs/workbench/api/common/extHostTunnelService.js +2 -2
  468. package/vscode/src/vs/workbench/api/common/extHostTypeConverters.d.ts +16 -7
  469. package/vscode/src/vs/workbench/api/common/extHostTypeConverters.js +20 -8
  470. package/vscode/src/vs/workbench/api/common/extHostTypes.d.ts +16 -13
  471. package/vscode/src/vs/workbench/api/common/extHostTypes.js +11 -12
  472. package/vscode/src/vs/workbench/api/common/extHostWebviewMessaging.d.ts +2 -2
  473. package/vscode/src/vs/workbench/api/common/extHostWebviewPanels.d.ts +1 -1
  474. package/vscode/src/vs/workbench/api/common/extHostWorkspace.js +1 -1
  475. package/vscode/src/vs/workbench/api/common/jsonValidationExtensionPoint.js +12 -12
  476. package/vscode/src/vs/workbench/browser/actions/developerActions.js +31 -31
  477. package/vscode/src/vs/workbench/browser/actions/textInputActions.js +6 -6
  478. package/vscode/src/vs/workbench/browser/contextkeys.d.ts +1 -0
  479. package/vscode/src/vs/workbench/browser/contextkeys.js +6 -1
  480. package/vscode/src/vs/workbench/browser/parts/editor/breadcrumbs.service.d.ts +1 -1
  481. package/vscode/src/vs/workbench/common/configuration.js +9 -9
  482. package/vscode/src/vs/workbench/common/contextkeys.d.ts +1 -0
  483. package/vscode/src/vs/workbench/common/contextkeys.js +73 -72
  484. package/vscode/src/vs/workbench/common/editor/editorInput.d.ts +1 -1
  485. package/vscode/src/vs/workbench/common/editor.d.ts +2 -1
  486. package/vscode/src/vs/workbench/common/editor.js +6 -6
  487. package/vscode/src/vs/workbench/common/theme.js +160 -160
  488. package/vscode/src/vs/workbench/common/views.js +4 -4
  489. package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibilityConfiguration.js +157 -160
  490. package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibleViewActions.js +12 -12
  491. package/vscode/src/vs/workbench/contrib/chat/browser/chat.service.d.ts +2 -2
  492. package/vscode/src/vs/workbench/contrib/chat/browser/chatAttachmentResolveService.service.d.ts +18 -0
  493. package/vscode/src/vs/workbench/contrib/chat/browser/chatAttachmentResolveService.service.js +6 -0
  494. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatContentParts.d.ts +2 -2
  495. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorContextKeys.js +6 -6
  496. package/vscode/src/vs/workbench/contrib/chat/common/chatAgents.service.d.ts +4 -3
  497. package/vscode/src/vs/workbench/contrib/chat/common/chatContextKeys.d.ts +9 -3
  498. package/vscode/src/vs/workbench/contrib/chat/common/chatContextKeys.js +62 -41
  499. package/vscode/src/vs/workbench/contrib/chat/common/chatEditingService.d.ts +24 -5
  500. package/vscode/src/vs/workbench/contrib/chat/common/chatEditingService.js +2 -2
  501. package/vscode/src/vs/workbench/contrib/chat/common/chatEditingService.service.d.ts +1 -1
  502. package/vscode/src/vs/workbench/contrib/chat/common/chatEntitlementService.service.d.ts +1 -1
  503. package/vscode/src/vs/workbench/contrib/chat/common/chatService.d.ts +29 -9
  504. package/vscode/src/vs/workbench/contrib/chat/common/chatService.service.d.ts +2 -2
  505. package/vscode/src/vs/workbench/contrib/chat/common/chatSlashCommands.service.d.ts +2 -2
  506. package/vscode/src/vs/workbench/contrib/chat/common/chatVariableEntries.d.ts +152 -0
  507. package/vscode/src/vs/workbench/contrib/chat/common/chatVariableEntries.js +160 -0
  508. package/vscode/src/vs/workbench/contrib/chat/common/chatVariables.d.ts +2 -1
  509. package/vscode/src/vs/workbench/contrib/chat/common/chatWidgetHistoryService.service.d.ts +1 -1
  510. package/vscode/src/vs/workbench/contrib/chat/common/constants.d.ts +5 -5
  511. package/vscode/src/vs/workbench/contrib/chat/common/constants.js +11 -24
  512. package/vscode/src/vs/workbench/contrib/chat/common/languageModelToolsService.d.ts +8 -1
  513. package/vscode/src/vs/workbench/contrib/chat/common/languageModelToolsService.js +4 -4
  514. package/vscode/src/vs/workbench/contrib/chat/common/languageModelToolsService.service.d.ts +4 -2
  515. package/vscode/src/vs/workbench/contrib/chat/common/languageModels.d.ts +5 -1
  516. package/vscode/src/vs/workbench/contrib/chat/common/languageModels.js +22 -7
  517. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/frontMatterCodec/tokens/index.d.ts +5 -0
  518. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/codecs/base/simpleCodec/tokens/tokens.d.ts +20 -0
  519. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/contentProviders/types.d.ts +6 -4
  520. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/types.d.ts +2 -17
  521. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/{types.d.ts → promptsService.d.ts} +14 -7
  522. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/{types.service.d.ts → promptsService.service.d.ts} +6 -7
  523. package/vscode/src/vs/workbench/contrib/chat/common/tools/editFileTool.d.ts +2 -2
  524. package/vscode/src/vs/workbench/contrib/chat/common/tools/editFileTool.js +1 -1
  525. package/vscode/src/vs/workbench/contrib/codeActions/browser/codeActionsContribution.js +15 -15
  526. package/vscode/src/vs/workbench/contrib/codeEditor/browser/dictation/editorDictation.js +6 -6
  527. package/vscode/src/vs/workbench/contrib/codeEditor/browser/diffEditorAccessibilityHelp.js +5 -5
  528. package/vscode/src/vs/workbench/contrib/codeEditor/browser/diffEditorHelper.js +3 -3
  529. package/vscode/src/vs/workbench/contrib/codeEditor/browser/largeFileOptimizations.js +3 -3
  530. package/vscode/src/vs/workbench/contrib/codeEditor/browser/saveParticipants.js +4 -4
  531. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleMinimap.js +2 -2
  532. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleMultiCursorModifier.js +4 -4
  533. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleRenderControlCharacter.js +2 -2
  534. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleRenderWhitespace.js +2 -2
  535. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleWordWrap.js +5 -5
  536. package/vscode/src/vs/workbench/contrib/comments/browser/commentService.service.d.ts +1 -1
  537. package/vscode/src/vs/workbench/contrib/comments/browser/commentsAccessibility.js +12 -12
  538. package/vscode/src/vs/workbench/contrib/comments/common/commentContextKeys.js +11 -11
  539. package/vscode/src/vs/workbench/contrib/debug/common/abstractDebugAdapter.js +1 -1
  540. package/vscode/src/vs/workbench/contrib/debug/common/debug.d.ts +1 -0
  541. package/vscode/src/vs/workbench/contrib/debug/common/debug.js +73 -65
  542. package/vscode/src/vs/workbench/contrib/debug/common/debugUtils.js +7 -0
  543. package/vscode/src/vs/workbench/contrib/extensions/common/extensions.js +1 -1
  544. package/vscode/src/vs/workbench/contrib/extensions/common/extensions.service.d.ts +1 -1
  545. package/vscode/src/vs/workbench/contrib/extensions/common/searchExtensionsTool.js +4 -4
  546. package/vscode/src/vs/workbench/contrib/files/browser/fileConstants.js +6 -6
  547. package/vscode/src/vs/workbench/contrib/files/browser/files.service.d.ts +3 -3
  548. package/vscode/src/vs/workbench/contrib/folding/browser/folding.contribution.js +3 -3
  549. package/vscode/src/vs/workbench/contrib/format/browser/formatActionsMultiple.js +20 -20
  550. package/vscode/src/vs/workbench/contrib/format/browser/formatActionsNone.js +4 -4
  551. package/vscode/src/vs/workbench/contrib/format/browser/formatModified.js +1 -1
  552. package/vscode/src/vs/workbench/contrib/inlayHints/browser/inlayHintsAccessibilty.js +4 -4
  553. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionService.d.ts +2 -2
  554. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionService.service.d.ts +1 -1
  555. package/vscode/src/vs/workbench/contrib/list/browser/listResizeColumnAction.js +2 -2
  556. package/vscode/src/vs/workbench/contrib/list/browser/tableColumnResizeQuickPick.js +5 -5
  557. package/vscode/src/vs/workbench/contrib/mcp/common/mcpTypes.d.ts +55 -9
  558. package/vscode/src/vs/workbench/contrib/mcp/common/mcpTypes.js +29 -13
  559. package/vscode/src/vs/workbench/contrib/mcp/common/mcpTypes.service.d.ts +16 -6
  560. package/vscode/src/vs/workbench/contrib/mcp/common/mcpTypes.service.js +2 -1
  561. package/vscode/src/vs/workbench/contrib/mcp/common/modelContextProtocol.d.ts +119 -31
  562. package/vscode/src/vs/workbench/contrib/mcp/common/modelContextProtocol.js +1 -1
  563. package/vscode/src/vs/workbench/contrib/notebook/browser/services/notebookEditorService.service.d.ts +1 -1
  564. package/vscode/src/vs/workbench/contrib/notebook/common/notebookCommon.d.ts +4 -4
  565. package/vscode/src/vs/workbench/contrib/notebook/common/notebookService.service.d.ts +2 -2
  566. package/vscode/src/vs/workbench/contrib/preferences/common/preferences.service.d.ts +1 -1
  567. package/vscode/src/vs/workbench/contrib/remoteCodingAgents/common/remoteCodingAgentsService.service.d.ts +8 -0
  568. package/vscode/src/vs/workbench/contrib/remoteCodingAgents/common/remoteCodingAgentsService.service.js +6 -0
  569. package/vscode/src/vs/workbench/contrib/snippets/browser/snippetCompletionProvider.js +3 -3
  570. package/vscode/src/vs/workbench/contrib/snippets/browser/snippetsFile.js +3 -3
  571. package/vscode/src/vs/workbench/contrib/snippets/browser/snippetsService.js +9 -9
  572. package/vscode/src/vs/workbench/contrib/speech/common/speechService.js +29 -29
  573. package/vscode/src/vs/workbench/contrib/tasks/common/constants.d.ts +3 -0
  574. package/vscode/src/vs/workbench/contrib/tasks/common/constants.js +10 -0
  575. package/vscode/src/vs/workbench/contrib/tasks/common/taskDefinitionRegistry.js +5 -5
  576. package/vscode/src/vs/workbench/contrib/tasks/common/tasks.d.ts +4 -3
  577. package/vscode/src/vs/workbench/contrib/tasks/common/tasks.js +13 -4
  578. package/vscode/src/vs/workbench/contrib/terminal/browser/terminal.d.ts +6 -2
  579. package/vscode/src/vs/workbench/contrib/terminal/browser/terminal.service.d.ts +1 -1
  580. package/vscode/src/vs/workbench/contrib/terminalContrib/suggest/browser/terminalCompletionService.service.d.ts +2 -2
  581. package/vscode/src/vs/workbench/contrib/testing/common/constants.d.ts +2 -0
  582. package/vscode/src/vs/workbench/contrib/testing/common/constants.js +13 -11
  583. package/vscode/src/vs/workbench/contrib/testing/common/testTypes.js +3 -3
  584. package/vscode/src/vs/workbench/contrib/webview/browser/webview.service.d.ts +1 -1
  585. package/vscode/src/vs/workbench/contrib/webviewPanel/browser/webviewWorkbenchService.service.d.ts +2 -2
  586. package/vscode/src/vs/workbench/services/accounts/common/defaultAccount.d.ts +1 -0
  587. package/vscode/src/vs/workbench/services/accounts/common/defaultAccount.js +6 -4
  588. package/vscode/src/vs/workbench/services/authentication/common/authentication.d.ts +4 -0
  589. package/vscode/src/vs/workbench/services/authentication/common/authentication.service.d.ts +1 -0
  590. package/vscode/src/vs/workbench/services/authentication/common/authenticationQuery.d.ts +132 -0
  591. package/vscode/src/vs/workbench/services/authentication/common/authenticationQuery.service.d.ts +20 -0
  592. package/vscode/src/vs/workbench/services/authentication/common/authenticationQuery.service.js +6 -0
  593. package/vscode/src/vs/workbench/services/configurationResolver/common/configurationResolver.service.d.ts +2 -2
  594. package/vscode/src/vs/workbench/services/configurationResolver/common/variableResolver.js +16 -16
  595. package/vscode/src/vs/workbench/services/coreExperimentation/common/coreExperimentationService.service.d.ts +6 -0
  596. package/vscode/src/vs/workbench/services/coreExperimentation/common/coreExperimentationService.service.js +6 -0
  597. package/vscode/src/vs/workbench/services/editor/common/editorGroupsService.d.ts +1 -1
  598. package/vscode/src/vs/workbench/services/editor/common/editorResolverService.js +1 -1
  599. package/vscode/src/vs/workbench/services/editor/common/editorService.d.ts +1 -1
  600. package/vscode/src/vs/workbench/services/editor/common/editorService.service.d.ts +2 -2
  601. package/vscode/src/vs/workbench/services/environment/common/environmentService.service.d.ts +1 -0
  602. package/vscode/src/vs/workbench/services/extensions/common/extensionHostProtocol.d.ts +1 -0
  603. package/vscode/src/vs/workbench/services/extensions/common/extensionsRegistry.js +84 -84
  604. package/vscode/src/vs/workbench/services/filesConfiguration/common/filesConfigurationService.service.d.ts +1 -1
  605. package/vscode/src/vs/workbench/services/host/browser/host.service.d.ts +1 -1
  606. package/vscode/src/vs/workbench/services/language/common/languageService.js +28 -28
  607. package/vscode/src/vs/workbench/services/layout/browser/layoutService.d.ts +2 -2
  608. package/vscode/src/vs/workbench/services/layout/browser/layoutService.js +17 -17
  609. package/vscode/src/vs/workbench/services/layout/browser/layoutService.service.d.ts +5 -1
  610. package/vscode/src/vs/workbench/services/localization/common/locale.service.d.ts +1 -1
  611. package/vscode/src/vs/workbench/services/log/common/logConstants.js +1 -1
  612. package/vscode/src/vs/workbench/services/mcp/common/mcpWorkbenchManagementService.service.d.ts +16 -0
  613. package/vscode/src/vs/workbench/services/mcp/common/mcpWorkbenchManagementService.service.js +6 -0
  614. package/vscode/src/vs/workbench/services/outline/browser/outline.service.d.ts +1 -1
  615. package/vscode/src/vs/workbench/services/preferences/common/preferences.service.d.ts +1 -1
  616. package/vscode/src/vs/workbench/services/remote/common/remoteExplorerService.js +8 -8
  617. package/vscode/src/vs/workbench/services/remote/common/tunnelModel.js +6 -6
  618. package/vscode/src/vs/workbench/services/search/common/queryBuilder.js +3 -3
  619. package/vscode/src/vs/workbench/services/textfile/common/textfiles.d.ts +1 -1
  620. package/vscode/src/vs/workbench/services/themes/common/colorExtensionPoint.js +22 -22
  621. package/vscode/src/vs/workbench/services/themes/common/iconExtensionPoint.js +13 -13
  622. package/vscode/src/vs/workbench/services/themes/common/workbenchThemeService.service.d.ts +24 -0
  623. package/vscode/src/vs/workbench/services/themes/common/workbenchThemeService.service.js +7 -0
  624. package/vscode/src/vs/workbench/services/userDataSync/common/userDataSync.js +13 -12
  625. package/vscode/src/vs/workbench/services/workingCopy/common/workingCopyBackup.d.ts +1 -1
  626. package/vscode/src/vs/workbench/services/workingCopy/common/workingCopyBackup.service.d.ts +1 -1
  627. package/vscode/src/vs/workbench/services/workingCopy/common/workingCopyEditorService.service.d.ts +1 -1
  628. package/vscode/src/vs/workbench/services/workingCopy/common/workingCopyFileService.service.d.ts +2 -2
  629. package/vscode/src/vs/workbench/services/workingCopy/common/workingCopyService.service.d.ts +1 -1
  630. package/vscode-dts/vscode.proposed.authProviderSpecific.d.ts +30 -0
  631. package/vscode-dts/vscode.proposed.chatParticipantAdditions.d.ts +10 -0
  632. package/vscode-dts/vscode.proposed.chatParticipantPrivate.d.ts +10 -0
  633. package/vscode-dts/vscode.proposed.chatProvider.d.ts +139 -10
  634. package/vscode-dts/vscode.proposed.d.ts +3 -1
  635. package/vscode-dts/vscode.proposed.defaultChatParticipant.d.ts +5 -0
  636. package/vscode-dts/vscode.proposed.inlineCompletionsAdditions.d.ts +21 -4
  637. package/vscode-dts/vscode.proposed.languageModelDataPart.d.ts +1 -0
  638. package/vscode-dts/vscode.proposed.remoteCodingAgents.d.ts +8 -0
  639. package/vscode-dts/vscode.proposed.terminalCompletionProvider.d.ts +2 -0
  640. package/vscode-dts/vscode.proposed.textDocumentChangeReason.d.ts +30 -0
  641. package/workbench.d.ts +1 -1
  642. package/vscode/src/vs/base/browser/domImpl/domObservable.d.ts +0 -3
  643. package/vscode/src/vs/base/browser/domImpl/domObservable.js +0 -16
  644. package/vscode/src/vs/base/browser/domImpl/n.d.ts +0 -83
  645. package/vscode/src/vs/base/browser/domImpl/n.js +0 -283
  646. package/vscode/src/vs/editor/common/codecs/frontMatterCodec/tokens/index.d.ts +0 -5
  647. package/vscode/src/vs/editor/common/codecs/simpleCodec/tokens/index.d.ts +0 -20
  648. package/vscode/src/vs/editor/common/tokens/tokenArray.d.ts +0 -25
  649. package/vscode/src/vs/editor/common/tokens/tokenArray.js +0 -84
  650. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/inlineEditsAdapter.d.ts +0 -16
  651. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/inlineEditsAdapter.js +0 -94
  652. package/vscode/src/vs/workbench/contrib/chat/common/chatAgents.d.ts +0 -243
  653. package/vscode/src/vs/workbench/contrib/chat/common/chatAgents.js +0 -426
  654. package/vscode/src/vs/workbench/contrib/chat/common/chatModel.d.ts +0 -601
  655. package/vscode/src/vs/workbench/contrib/chat/common/chatModel.js +0 -1185
  656. package/vscode/src/vs/workbench/contrib/chat/common/chatParserTypes.d.ts +0 -130
  657. package/vscode/src/vs/workbench/contrib/chat/common/chatParserTypes.js +0 -235
  658. package/vscode/src/vs/workbench/contrib/chat/common/modelPicker/modelPickerWidget.d.ts +0 -4
  659. package/vscode/src/vs/workbench/contrib/chat/common/modelPicker/modelPickerWidget.js +0 -6
  660. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/metadata/index.d.ts +0 -3
  661. package/vscode/src/vs/workbench/contrib/mcp/common/mcpConfigPathsService.service.d.ts +0 -7
  662. package/vscode/src/vs/workbench/contrib/mcp/common/mcpConfigPathsService.service.js +0 -6
  663. package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStartedExpService.service.d.ts +0 -6
  664. package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStartedExpService.service.js +0 -6
  665. package/vscode-dts/vscode.proposed.inlineEdit.d.ts +0 -103
  666. /package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/{types.service.js → promptsService.service.js} +0 -0
@@ -19,7 +19,6 @@ import { Event } from '../../../base/common/event.js';
19
19
  import { EditorOption } from '../../common/config/editorOptions.js';
20
20
  import { InlineDecorationType } from '../../common/viewModel.js';
21
21
  import { DecorationStyleCache } from './css/decorationStyleCache.js';
22
- import { ViewportRenderStrategy } from './renderStrategy/viewportRenderStrategy.js';
23
22
  import Severity$1 from '../../../base/common/severity.js';
24
23
  import { observableValue } from '../../../base/common/observableInternal/observables/observableValue.js';
25
24
  import { runOnChange } from '../../../base/common/observableInternal/utils/runOnChange.js';
@@ -49,7 +48,7 @@ let ViewGpuContext = class ViewGpuContext extends Disposable {
49
48
  this._instantiationService = _instantiationService;
50
49
  this._notificationService = _notificationService;
51
50
  this.configurationService = configurationService;
52
- this.maxGpuCols = ViewportRenderStrategy.maxSupportedColumns;
51
+ this.maxGpuCols = 2000;
53
52
  this.canvas = createFastDomNode(document.createElement('canvas'));
54
53
  this.canvas.setClassName('editorCanvas');
55
54
  this._register(Event.runAndSubscribe(configurationService.onDidChangeConfiguration, e => {
@@ -70,7 +69,7 @@ let ViewGpuContext = class ViewGpuContext extends Disposable {
70
69
  }).then(ref => {
71
70
  ViewGpuContext_1.deviceSync = ref.object;
72
71
  if (!ViewGpuContext_1._atlas) {
73
- ViewGpuContext_1._atlas = this._instantiationService.createInstance(TextureAtlas, ref.object.limits.maxTextureDimension2D, undefined);
72
+ ViewGpuContext_1._atlas = this._instantiationService.createInstance(TextureAtlas, ref.object.limits.maxTextureDimension2D, undefined, ViewGpuContext_1.decorationStyleCache);
74
73
  }
75
74
  return ref.object;
76
75
  });
@@ -52,6 +52,7 @@ export declare class ObservableCodeEditor extends Disposable {
52
52
  readonly layoutInfoVerticalScrollbarWidth: IObservable<number>;
53
53
  readonly contentWidth: IObservable<number>;
54
54
  readonly contentHeight: IObservable<number>;
55
+ readonly domNode: IObservableWithChange<HTMLElement | null, void>;
55
56
  getOption<T extends EditorOption>(id: T): IObservable<FindComputedEditorOptionValueById<T>>;
56
57
  setDecorations(decorations: IObservable<IModelDeltaDecoration[]>): IDisposable;
57
58
  private _widgetCounter;
@@ -61,6 +62,11 @@ export declare class ObservableCodeEditor extends Disposable {
61
62
  observePosition(position: IObservable<Position | null>, store: DisposableStore): IObservable<Point | null>;
62
63
  readonly openedPeekWidgets: import("../../base/common/observable.js").ISettableObservable<number, void>;
63
64
  isTargetHovered(predicate: (target: IEditorMouseEvent) => boolean, store: DisposableStore): IObservable<boolean>;
65
+ observeLineHeightForPosition(position: IObservable<Position> | Position): IObservable<number>;
66
+ observeLineHeightForPosition(position: IObservable<null>): IObservable<null>;
67
+ observeLineHeightForLine(lineNumber: IObservable<number> | number): IObservable<number>;
68
+ observeLineHeightForLine(lineNumber: IObservable<null>): IObservable<null>;
69
+ observeLineHeightsForLineRange(lineNumber: IObservable<LineRange> | LineRange): IObservable<number[]>;
64
70
  }
65
71
  interface IObservableOverlayWidget {
66
72
  get domNode(): HTMLElement;
@@ -3,16 +3,17 @@ import { equalsIfDefined, itemsEquals } from '../../base/common/equals.js';
3
3
  import { Disposable, DisposableStore, toDisposable } from '../../base/common/lifecycle.js';
4
4
  import '../../base/common/observableInternal/index.js';
5
5
  import { EditorOption } from '../common/config/editorOptions.js';
6
+ import { LineRange } from '../common/core/ranges/lineRange.js';
6
7
  import { OffsetRange } from '../common/core/ranges/offsetRange.js';
7
8
  import { Position } from '../common/core/position.js';
8
9
  import { Selection } from '../common/core/selection.js';
9
10
  import { ContentWidgetPositionPreference } from './editorBrowser.js';
10
11
  import { Point } from '../common/core/2d/point.js';
11
12
  import { TransactionImpl } from '../../base/common/observableInternal/transaction.js';
13
+ import { observableFromEvent } from '../../base/common/observableInternal/observables/observableFromEvent.js';
12
14
  import { derivedOpts, derivedWithSetter, derived } from '../../base/common/observableInternal/observables/derived.js';
13
15
  import { autorunOpts, autorun } from '../../base/common/observableInternal/reactions/autorun.js';
14
16
  import { observableValue } from '../../base/common/observableInternal/observables/observableValue.js';
15
- import { observableFromEvent } from '../../base/common/observableInternal/observables/observableFromEvent.js';
16
17
  import { observableValueOpts } from '../../base/common/observableInternal/observables/observableValueOpts.js';
17
18
  import { observableSignal } from '../../base/common/observableInternal/observables/observableSignal.js';
18
19
 
@@ -178,6 +179,10 @@ class ObservableCodeEditor extends Disposable {
178
179
  this._endUpdate();
179
180
  }
180
181
  }));
182
+ this.domNode = derived(reader => {
183
+ this.model.read(reader);
184
+ return this.editor.getDomNode();
185
+ });
181
186
  }
182
187
  forceUpdate(cb) {
183
188
  this._beginUpdate();
@@ -324,6 +329,38 @@ class ObservableCodeEditor extends Disposable {
324
329
  }));
325
330
  return isHovered;
326
331
  }
332
+ observeLineHeightForPosition(position) {
333
+ return derived(reader => {
334
+ const pos = position instanceof Position ? position : position.read(reader);
335
+ if (pos === null) {
336
+ return null;
337
+ }
338
+ this.getOption(EditorOption.lineHeight).read(reader);
339
+ return this.editor.getLineHeightForPosition(pos);
340
+ });
341
+ }
342
+ observeLineHeightForLine(lineNumber) {
343
+ if (typeof lineNumber === 'number') {
344
+ return this.observeLineHeightForPosition(( new Position(lineNumber, 1)));
345
+ }
346
+ return derived(reader => {
347
+ const line = lineNumber.read(reader);
348
+ if (line === null) {
349
+ return null;
350
+ }
351
+ return this.observeLineHeightForPosition(( new Position(line, 1))).read(reader);
352
+ });
353
+ }
354
+ observeLineHeightsForLineRange(lineNumber) {
355
+ return derived(reader => {
356
+ const range = lineNumber instanceof LineRange ? lineNumber : lineNumber.read(reader);
357
+ const heights = [];
358
+ for (let i = range.startLineNumber; i < range.endLineNumberExclusive; i++) {
359
+ heights.push(this.observeLineHeightForLine(i).read(reader));
360
+ }
361
+ return heights;
362
+ });
363
+ }
327
364
  }
328
365
 
329
366
  export { ObservableCodeEditor, observableCodeEditor };
@@ -389,6 +389,10 @@ class DecorationTypeOptionsProvider {
389
389
  const options = providerArgs.options;
390
390
  this.isWholeLine = Boolean(options.isWholeLine);
391
391
  this.lineHeight = options.lineHeight;
392
+ this.fontFamily = options.fontFamily;
393
+ this.fontSize = options.fontSize;
394
+ this.fontWeight = options.fontWeight;
395
+ this.fontStyle = options.fontStyle;
392
396
  this.stickiness = options.rangeBehavior;
393
397
  const lightOverviewRulerColor = options.light && options.light.overviewRulerColor || options.overviewRulerColor;
394
398
  const darkOverviewRulerColor = options.dark && options.dark.overviewRulerColor || options.overviewRulerColor;
@@ -414,6 +418,10 @@ class DecorationTypeOptionsProvider {
414
418
  glyphMarginClassName: this.glyphMarginClassName,
415
419
  isWholeLine: this.isWholeLine,
416
420
  lineHeight: this.lineHeight,
421
+ fontFamily: this.fontFamily,
422
+ fontSize: this.fontSize,
423
+ fontWeight: this.fontWeight,
424
+ fontStyle: this.fontStyle,
417
425
  overviewRuler: this.overviewRuler,
418
426
  stickiness: this.stickiness,
419
427
  before: this.beforeInjectedText,
@@ -580,7 +588,7 @@ class DecorationCSSRules {
580
588
  return '';
581
589
  }
582
590
  const cssTextArr = [];
583
- this.collectCSSText(opts, ['fontStyle', 'fontWeight', 'textDecoration', 'cursor', 'color', 'opacity', 'letterSpacing'], cssTextArr);
591
+ this.collectCSSText(opts, ['fontStyle', 'fontWeight', 'fontFamily', 'fontSize', 'textDecoration', 'cursor', 'color', 'opacity', 'letterSpacing'], cssTextArr);
584
592
  if (opts.letterSpacing) {
585
593
  this._hasLetterSpacing = true;
586
594
  }
@@ -4,6 +4,7 @@ import { IProgress, IProgressStep } from "../../../platform/progress/common/prog
4
4
  import { URI } from "../../../base/common/uri.js";
5
5
  import { UndoRedoSource } from "../../../platform/undoRedo/common/undoRedo.js";
6
6
  import { CancellationToken } from "../../../base/common/cancellation.js";
7
+ import { TextModelEditReason } from "../../common/textModelEditReason.js";
7
8
  export declare class ResourceEdit {
8
9
  readonly metadata?: WorkspaceEditMetadata | undefined;
9
10
  protected constructor(metadata?: WorkspaceEditMetadata | undefined);
@@ -43,6 +44,7 @@ export interface IBulkEditOptions {
43
44
  undoRedoGroupId?: number;
44
45
  confirmBeforeUndo?: boolean;
45
46
  respectAutoSaveConfig?: boolean;
47
+ reason?: TextModelEditReason;
46
48
  }
47
49
  export interface IBulkEditResult {
48
50
  ariaSummary: string;
@@ -16,6 +16,7 @@ import { ILanguageFeaturesService } from "../../common/services/languageFeatures
16
16
  import { IChange } from "../../common/diff/legacyLinesDiffComputer.js";
17
17
  import { IDocumentDiff, IDocumentDiffProviderOptions } from "@codingame/monaco-vscode-chat-service-override/vscode/vs/editor/common/diff/documentDiffProvider";
18
18
  import { SectionHeader, FindSectionHeaderOptions } from "../../common/services/findSectionHeaders.js";
19
+ import { StringEdit } from "../../common/core/edits/stringEdit.js";
19
20
  export declare abstract class EditorWorkerService extends Disposable implements IEditorWorkerService {
20
21
  private readonly _languageConfigurationService;
21
22
  readonly _serviceBrand: undefined;
@@ -31,6 +32,9 @@ export declare abstract class EditorWorkerService extends Disposable implements
31
32
  computeDirtyDiff(original: URI, modified: URI, ignoreTrimWhitespace: boolean): Promise<IChange[] | null>;
32
33
  computeMoreMinimalEdits(resource: URI, edits: languages.TextEdit[] | null | undefined, pretty?: boolean): Promise<languages.TextEdit[] | undefined>;
33
34
  computeHumanReadableDiff(resource: URI, edits: languages.TextEdit[] | null | undefined): Promise<languages.TextEdit[] | undefined>;
35
+ computeStringEditFromDiff(original: string, modified: string, options: {
36
+ maxComputationTimeMs: number;
37
+ }, algorithm: DiffAlgorithmName): Promise<StringEdit>;
34
38
  canNavigateValueSet(resource: URI): boolean;
35
39
  navigateValueSet(resource: URI, range: IRange, up: boolean): Promise<languages.IInplaceReplaceSupportResult | null>;
36
40
  canComputeWordRanges(resource: URI): boolean;
@@ -22,6 +22,8 @@ import { mainWindow } from '../../../base/browser/window.js';
22
22
  import { WindowIntervalTimer } from '../../../base/browser/dom.js';
23
23
  import { WorkerTextModelSyncClient } from '../../common/services/textModelSync/textModelSync.impl.js';
24
24
  import { EditorWorkerHost } from '../../common/services/editorWorkerHost.js';
25
+ import { StringEdit } from '../../common/core/edits/stringEdit.js';
26
+ import { OffsetRange } from '../../common/core/ranges/offsetRange.js';
25
27
 
26
28
  const STOP_WORKER_DELTA_TIME_MS = 5 * 60 * 1000;
27
29
  function canSyncModel(modelService, resource) {
@@ -55,7 +57,8 @@ let EditorWorkerService = class EditorWorkerService extends Disposable {
55
57
  this._workerManager,
56
58
  configurationService,
57
59
  this._modelService,
58
- this._languageConfigurationService
60
+ this._languageConfigurationService,
61
+ this._logService
59
62
  ))));
60
63
  }
61
64
  dispose() {
@@ -126,6 +129,17 @@ let EditorWorkerService = class EditorWorkerService extends Disposable {
126
129
  return Promise.resolve(undefined);
127
130
  }
128
131
  }
132
+ async computeStringEditFromDiff(original, modified, options, algorithm) {
133
+ try {
134
+ const worker = await this._workerWithResources([]);
135
+ const edit = await worker.$computeStringDiff(original, modified, options, algorithm);
136
+ return StringEdit.fromJson(edit);
137
+ }
138
+ catch (e) {
139
+ onUnexpectedError(e);
140
+ return StringEdit.replace(OffsetRange.ofLength(original.length), modified);
141
+ }
142
+ }
129
143
  canNavigateValueSet(resource) {
130
144
  return (canSyncModel(this._modelService, resource));
131
145
  }
@@ -175,8 +189,9 @@ EditorWorkerService = ( __decorate([
175
189
  ( __param(5, ILanguageFeaturesService))
176
190
  ], EditorWorkerService));
177
191
  class WordBasedCompletionItemProvider {
178
- constructor(workerManager, configurationService, modelService, languageConfigurationService) {
192
+ constructor(workerManager, configurationService, modelService, languageConfigurationService, logService) {
179
193
  this.languageConfigurationService = languageConfigurationService;
194
+ this.logService = logService;
180
195
  this._debugDisplayName = 'wordbasedCompletions';
181
196
  this._workerManager = workerManager;
182
197
  this._configurationService = configurationService;
@@ -213,6 +228,7 @@ class WordBasedCompletionItemProvider {
213
228
  const word = model.getWordAtPosition(position);
214
229
  const replace = !word ? Range.fromPositions(position) : ( new Range(position.lineNumber, word.startColumn, position.lineNumber, word.endColumn));
215
230
  const insert = replace.setEndPosition(position.lineNumber, position.column);
231
+ this.logService.trace('[WordBasedCompletionItemProvider]', `word: "${word?.word || ''}", wordDef: "${wordDefRegExp}", replace: [${( replace.toString())}], insert: [${( insert.toString())}]`);
216
232
  const client = await this._workerManager.withWorker();
217
233
  const data = await client.textualSuggest(models, word?.word, wordDefRegExp);
218
234
  if (!data) {
@@ -0,0 +1,32 @@
1
+ import { Event } from "../../../base/common/event.js";
2
+ import { Disposable } from "../../../base/common/lifecycle.js";
3
+ import { Action2 } from "../../../platform/actions/common/actions.js";
4
+ import { IContextKeyService } from "../../../platform/contextkey/common/contextkey.service.js";
5
+ import { ServicesAccessor } from "../../../platform/instantiation/common/instantiation.js";
6
+ import { IInlineCompletionsService } from "./inlineCompletionsService.service.js";
7
+ export declare class InlineCompletionsService extends Disposable implements IInlineCompletionsService {
8
+ private _contextKeyService;
9
+ readonly _serviceBrand: undefined;
10
+ private _onDidChangeIsSnoozing;
11
+ readonly onDidChangeIsSnoozing: Event<boolean>;
12
+ private static readonly SNOOZE_DURATION;
13
+ private _snoozeTimeEnd;
14
+ get snoozeTimeLeft(): number;
15
+ private _timer;
16
+ constructor(_contextKeyService: IContextKeyService);
17
+ snooze(durationMs?: number): void;
18
+ setSnoozeDuration(durationMs: number): void;
19
+ isSnoozing(): boolean;
20
+ cancelSnooze(): void;
21
+ }
22
+ export declare class SnoozeInlineCompletion extends Action2 {
23
+ static ID: string;
24
+ constructor();
25
+ run(accessor: ServicesAccessor, ...args: unknown[]): Promise<void>;
26
+ private getDurationFromUser;
27
+ }
28
+ export declare class CancelSnoozeInlineCompletion extends Action2 {
29
+ static ID: string;
30
+ constructor();
31
+ run(accessor: ServicesAccessor): Promise<void>;
32
+ }
@@ -0,0 +1,141 @@
1
+
2
+ import { __decorate, __param } from '../../../../../../external/tslib/tslib.es6.js';
3
+ import { WindowIntervalTimer } from '../../../base/browser/dom.js';
4
+ import { BugIndicatingError } from '../../../base/common/errors.js';
5
+ import { Emitter } from '../../../base/common/event.js';
6
+ import { Disposable } from '../../../base/common/lifecycle.js';
7
+ import { localize, localize2 } from '../../../nls.js';
8
+ import { Action2 } from '../../../platform/actions/common/actions.js';
9
+ import { RawContextKey, ContextKeyExpr } from '../../../platform/contextkey/common/contextkey.js';
10
+ import { IContextKeyService } from '../../../platform/contextkey/common/contextkey.service.js';
11
+ import '../../../platform/instantiation/common/extensions.js';
12
+ import { IQuickInputService } from '../../../platform/quickinput/common/quickInput.service.js';
13
+ import { StorageScope, StorageTarget } from '../../../platform/storage/common/storage.js';
14
+ import { IStorageService } from '../../../platform/storage/common/storage.service.js';
15
+ import { IInlineCompletionsService } from './inlineCompletionsService.service.js';
16
+
17
+ var InlineCompletionsService_1;
18
+ const InlineCompletionsSnoozing = ( new RawContextKey('inlineCompletions.snoozed', false, ( localize(147, "Whether inline completions are currently snoozed"))));
19
+ let InlineCompletionsService = class InlineCompletionsService extends Disposable {
20
+ static { InlineCompletionsService_1 = this; }
21
+ static { this.SNOOZE_DURATION = 300_000; }
22
+ get snoozeTimeLeft() {
23
+ if (this._snoozeTimeEnd === undefined) {
24
+ return 0;
25
+ }
26
+ return Math.max(0, this._snoozeTimeEnd - Date.now());
27
+ }
28
+ constructor(_contextKeyService) {
29
+ super();
30
+ this._contextKeyService = _contextKeyService;
31
+ this._onDidChangeIsSnoozing = this._register(( new Emitter()));
32
+ this.onDidChangeIsSnoozing = this._onDidChangeIsSnoozing.event;
33
+ this._snoozeTimeEnd = undefined;
34
+ this._timer = this._register(( new WindowIntervalTimer()));
35
+ const inlineCompletionsSnoozing = InlineCompletionsSnoozing.bindTo(this._contextKeyService);
36
+ this._register(this.onDidChangeIsSnoozing(() => inlineCompletionsSnoozing.set(this.isSnoozing())));
37
+ }
38
+ snooze(durationMs = InlineCompletionsService_1.SNOOZE_DURATION) {
39
+ this.setSnoozeDuration(durationMs + this.snoozeTimeLeft);
40
+ }
41
+ setSnoozeDuration(durationMs) {
42
+ if (durationMs < 0) {
43
+ throw ( new BugIndicatingError(`Invalid snooze duration: ${durationMs}. Duration must be non-negative.`));
44
+ }
45
+ if (durationMs === 0) {
46
+ this.cancelSnooze();
47
+ return;
48
+ }
49
+ const wasSnoozing = this.isSnoozing();
50
+ this._snoozeTimeEnd = Date.now() + durationMs;
51
+ if (!wasSnoozing) {
52
+ this._onDidChangeIsSnoozing.fire(true);
53
+ }
54
+ this._timer.cancelAndSet(() => {
55
+ if (!this.isSnoozing()) {
56
+ this._onDidChangeIsSnoozing.fire(false);
57
+ }
58
+ else {
59
+ throw ( new BugIndicatingError('Snooze timer did not fire as expected'));
60
+ }
61
+ }, this.snoozeTimeLeft + 1);
62
+ }
63
+ isSnoozing() {
64
+ return this.snoozeTimeLeft > 0;
65
+ }
66
+ cancelSnooze() {
67
+ if (this.isSnoozing()) {
68
+ this._snoozeTimeEnd = undefined;
69
+ this._timer.cancel();
70
+ this._onDidChangeIsSnoozing.fire(false);
71
+ }
72
+ }
73
+ };
74
+ InlineCompletionsService = InlineCompletionsService_1 = ( __decorate([
75
+ ( __param(0, IContextKeyService))
76
+ ], InlineCompletionsService));
77
+ const snoozeInlineSuggestId = 'editor.action.inlineSuggest.snooze';
78
+ const cancelSnoozeInlineSuggestId = 'editor.action.inlineSuggest.cancelSnooze';
79
+ const LAST_SNOOZE_DURATION_KEY = 'inlineCompletions.lastSnoozeDuration';
80
+ class SnoozeInlineCompletion extends Action2 {
81
+ static { this.ID = snoozeInlineSuggestId; }
82
+ constructor() {
83
+ super({
84
+ id: SnoozeInlineCompletion.ID,
85
+ title: ( localize2(148, "Snooze Inline Suggestions")),
86
+ precondition: ContextKeyExpr.true(),
87
+ f1: true,
88
+ });
89
+ }
90
+ async run(accessor, ...args) {
91
+ const quickInputService = accessor.get(IQuickInputService);
92
+ const inlineCompletionsService = accessor.get(IInlineCompletionsService);
93
+ const storageService = accessor.get(IStorageService);
94
+ let durationMinutes;
95
+ if (args.length > 0 && typeof args[0] === 'number') {
96
+ durationMinutes = args[0];
97
+ }
98
+ if (!durationMinutes) {
99
+ durationMinutes = await this.getDurationFromUser(quickInputService, storageService);
100
+ }
101
+ if (durationMinutes) {
102
+ inlineCompletionsService.setSnoozeDuration(durationMinutes);
103
+ }
104
+ }
105
+ async getDurationFromUser(quickInputService, storageService) {
106
+ const lastSelectedDuration = storageService.getNumber(LAST_SNOOZE_DURATION_KEY, StorageScope.PROFILE, 300_000);
107
+ const items = [
108
+ { label: '1 minute', id: '1', value: 60_000 },
109
+ { label: '5 minutes', id: '5', value: 300_000 },
110
+ { label: '10 minutes', id: '10', value: 600_000 },
111
+ { label: '15 minutes', id: '15', value: 900_000 },
112
+ { label: '30 minutes', id: '30', value: 1_800_000 },
113
+ { label: '60 minutes', id: '60', value: 3_600_000 }
114
+ ];
115
+ const picked = await quickInputService.pick(items, {
116
+ placeHolder: ( localize(149, "Select snooze duration for Code completions and NES")),
117
+ activeItem: items.find(item => item.value === lastSelectedDuration),
118
+ });
119
+ if (picked) {
120
+ storageService.store(LAST_SNOOZE_DURATION_KEY, picked.value, StorageScope.PROFILE, StorageTarget.USER);
121
+ return picked.value;
122
+ }
123
+ return undefined;
124
+ }
125
+ }
126
+ class CancelSnoozeInlineCompletion extends Action2 {
127
+ static { this.ID = cancelSnoozeInlineSuggestId; }
128
+ constructor() {
129
+ super({
130
+ id: CancelSnoozeInlineCompletion.ID,
131
+ title: ( localize2(150, "Cancel Snooze Inline Suggestions")),
132
+ precondition: InlineCompletionsSnoozing,
133
+ f1: true,
134
+ });
135
+ }
136
+ async run(accessor) {
137
+ accessor.get(IInlineCompletionsService).cancelSnooze();
138
+ }
139
+ }
140
+
141
+ export { CancelSnoozeInlineCompletion, InlineCompletionsService, SnoozeInlineCompletion };
@@ -0,0 +1,11 @@
1
+ import { Event } from "../../../base/common/event.js";
2
+ export declare const IInlineCompletionsService: import("../../../platform/instantiation/common/instantiation.js").ServiceIdentifier<IInlineCompletionsService>;
3
+ export interface IInlineCompletionsService {
4
+ readonly _serviceBrand: undefined;
5
+ onDidChangeIsSnoozing: Event<boolean>;
6
+ readonly snoozeTimeLeft: number;
7
+ snooze(durationMs?: number): void;
8
+ setSnoozeDuration(durationMs: number): void;
9
+ isSnoozing(): boolean;
10
+ cancelSnooze(): void;
11
+ }
@@ -0,0 +1,6 @@
1
+
2
+ import { createDecorator } from '../../../platform/instantiation/common/instantiation.js';
3
+
4
+ const IInlineCompletionsService = ( createDecorator('IInlineCompletionsService'));
5
+
6
+ export { IInlineCompletionsService };
@@ -2,7 +2,7 @@
2
2
  import { createTrustedTypesPolicy } from '../../../base/browser/trustedTypes.js';
3
3
  import { CharCode } from '../../../base/common/charCode.js';
4
4
  import { firstNonWhitespaceIndex, isFullWidthCharacter } from '../../../base/common/strings.js';
5
- import { assertIsDefined } from '../../../base/common/types.js';
5
+ import { assertReturnsDefined } from '../../../base/common/types.js';
6
6
  import { applyFontInfo } from '../config/domFontInfo.js';
7
7
  import { WrappingIndent } from '../../common/config/editorOptions.js';
8
8
  import { StringBuilder } from '../../common/core/stringBuilder.js';
@@ -26,7 +26,7 @@ class DOMLineBreaksComputerFactory {
26
26
  injectedTexts.push(injectedText);
27
27
  },
28
28
  finalize: () => {
29
- return createLineBreaks(assertIsDefined(this.targetWindow.deref()), requests, fontInfo, tabSize, wrappingColumn, wrappingIndent, wordBreak, injectedTexts);
29
+ return createLineBreaks(assertReturnsDefined(this.targetWindow.deref()), requests, fontInfo, tabSize, wrappingColumn, wrappingIndent, wordBreak, injectedTexts);
30
30
  }
31
31
  };
32
32
  }
@@ -70,8 +70,12 @@ class ViewController {
70
70
  const options = this.configuration.options;
71
71
  const selectionClipboardIsOn = (isLinux && options.get(EditorOption.selectionClipboard));
72
72
  const columnSelection = options.get(EditorOption.columnSelection);
73
+ const scrollOnMiddleClick = options.get(EditorOption.scrollOnMiddleClick);
73
74
  if (data.middleButton && !selectionClipboardIsOn) {
74
- this._columnSelect(data.position, data.mouseColumn, data.inSelectionMode);
75
+ if (scrollOnMiddleClick) ;
76
+ else {
77
+ this._columnSelect(data.position, data.mouseColumn, data.inSelectionMode);
78
+ }
75
79
  }
76
80
  else if (data.startedOnLineNumbers) {
77
81
  if (this._hasMulticursorModifier(data)) {
@@ -38,7 +38,7 @@ export declare class View extends ViewEventHandler {
38
38
  private readonly _viewCursors;
39
39
  private readonly _viewParts;
40
40
  private readonly _viewController;
41
- private _experimentalEditContextEnabled;
41
+ private _editContextEnabled;
42
42
  private _accessibilitySupport;
43
43
  private _editContext;
44
44
  private readonly _pointerHandler;
@@ -72,7 +72,7 @@ let View = class View extends ViewEventHandler {
72
72
  this._context = ( new ViewContext(configuration, colorTheme, model));
73
73
  this._context.addEventHandler(this);
74
74
  this._viewParts = [];
75
- this._experimentalEditContextEnabled = this._context.configuration.options.get(EditorOption.effectiveExperimentalEditContextEnabled);
75
+ this._editContextEnabled = this._context.configuration.options.get(EditorOption.effectiveEditContext);
76
76
  this._accessibilitySupport = this._context.configuration.options.get(EditorOption.accessibilitySupport);
77
77
  this._editContext = this._instantiateEditContext();
78
78
  this._viewParts.push(this._editContext);
@@ -173,7 +173,7 @@ let View = class View extends ViewEventHandler {
173
173
  this._pointerHandler = this._register(( new PointerHandler(this._context, this._viewController, this._createPointerHandlerHelper())));
174
174
  }
175
175
  _instantiateEditContext() {
176
- const usingExperimentalEditContext = this._context.configuration.options.get(EditorOption.effectiveExperimentalEditContextEnabled);
176
+ const usingExperimentalEditContext = this._context.configuration.options.get(EditorOption.effectiveEditContext);
177
177
  if (usingExperimentalEditContext) {
178
178
  return this._instantiationService.createInstance(NativeEditContext, this._ownerID, this._context, this._overflowGuardContainer, this._viewController, this._createTextAreaHandlerHelper());
179
179
  }
@@ -182,12 +182,12 @@ let View = class View extends ViewEventHandler {
182
182
  }
183
183
  }
184
184
  _updateEditContext() {
185
- const experimentalEditContextEnabled = this._context.configuration.options.get(EditorOption.effectiveExperimentalEditContextEnabled);
185
+ const editContextEnabled = this._context.configuration.options.get(EditorOption.effectiveEditContext);
186
186
  const accessibilitySupport = this._context.configuration.options.get(EditorOption.accessibilitySupport);
187
- if (this._experimentalEditContextEnabled === experimentalEditContextEnabled && this._accessibilitySupport === accessibilitySupport) {
187
+ if (this._editContextEnabled === editContextEnabled && this._accessibilitySupport === accessibilitySupport) {
188
188
  return;
189
189
  }
190
- this._experimentalEditContextEnabled = experimentalEditContextEnabled;
190
+ this._editContextEnabled = editContextEnabled;
191
191
  this._accessibilitySupport = accessibilitySupport;
192
192
  const isEditContextFocused = this._editContext.isFocused();
193
193
  const indexOfEditContext = this._viewParts.indexOf(this._editContext);
@@ -10,7 +10,7 @@ export declare class ViewCursors extends ViewPart {
10
10
  private _cursorBlinking;
11
11
  private _cursorStyle;
12
12
  private _cursorSmoothCaretAnimation;
13
- private _experimentalEditContextEnabled;
13
+ private _editContextEnabled;
14
14
  private _selectionIsEmpty;
15
15
  private _isComposingInput;
16
16
  private _isVisible;
@@ -22,7 +22,7 @@ class ViewCursors extends ViewPart {
22
22
  this._cursorBlinking = options.get(EditorOption.cursorBlinking);
23
23
  this._cursorStyle = options.get(EditorOption.effectiveCursorStyle);
24
24
  this._cursorSmoothCaretAnimation = options.get(EditorOption.cursorSmoothCaretAnimation);
25
- this._experimentalEditContextEnabled = options.get(EditorOption.effectiveExperimentalEditContextEnabled);
25
+ this._editContextEnabled = options.get(EditorOption.effectiveEditContext);
26
26
  this._selectionIsEmpty = true;
27
27
  this._isComposingInput = false;
28
28
  this._isVisible = false;
@@ -64,7 +64,7 @@ class ViewCursors extends ViewPart {
64
64
  this._cursorBlinking = options.get(EditorOption.cursorBlinking);
65
65
  this._cursorStyle = options.get(EditorOption.effectiveCursorStyle);
66
66
  this._cursorSmoothCaretAnimation = options.get(EditorOption.cursorSmoothCaretAnimation);
67
- this._experimentalEditContextEnabled = options.get(EditorOption.effectiveExperimentalEditContextEnabled);
67
+ this._editContextEnabled = options.get(EditorOption.effectiveEditContext);
68
68
  this._updateBlinking();
69
69
  this._updateDomClassName();
70
70
  this._primaryCursor.onConfigurationChanged(e);
@@ -157,7 +157,7 @@ class ViewCursors extends ViewPart {
157
157
  return true;
158
158
  }
159
159
  _getCursorBlinking() {
160
- if (this._isComposingInput && !this._experimentalEditContextEnabled) {
160
+ if (this._isComposingInput && !this._editContextEnabled) {
161
161
  return TextEditorCursorBlinkingStyle.Hidden;
162
162
  }
163
163
  if (!this._editorHasFocus) {
@@ -5,7 +5,7 @@ import { isNative, isLinux } from '../../../../base/common/platform.js';
5
5
  import { RangeUtil } from './rangeUtil.js';
6
6
  import { VisibleRanges, FloatHorizontalRange } from '../../view/renderingContext.js';
7
7
  import { LineDecoration } from '../../../common/viewLayout/lineDecorations.js';
8
- import { RenderLineInput, renderViewLine, ForeignElementType, DomPosition } from '../../../common/viewLayout/viewLineRenderer.js';
8
+ import { RenderWhitespace, RenderLineInput, renderViewLine, ForeignElementType, DomPosition } from '../../../common/viewLayout/viewLineRenderer.js';
9
9
  import { InlineDecorationType } from '../../../common/viewModel.js';
10
10
  import { isHighContrast } from '../../../../platform/theme/common/theme.js';
11
11
  import { EditorFontLigatures } from '../../../common/config/editorOptions.js';
@@ -57,7 +57,7 @@ class ViewLine {
57
57
  this._options = newOptions;
58
58
  }
59
59
  onSelectionChanged() {
60
- if (isHighContrast(this._options.themeType) || this._options.renderWhitespace === 'selection') {
60
+ if (isHighContrast(this._options.themeType) || this._renderedViewLine?.getRenderWhitespace() === RenderWhitespace.Selection) {
61
61
  this._isMaybeInvalid = true;
62
62
  return true;
63
63
  }
@@ -76,8 +76,10 @@ class ViewLine {
76
76
  const lineData = viewportData.getViewLineRenderingData(lineNumber);
77
77
  const options = this._options;
78
78
  const actualInlineDecorations = LineDecoration.filter(lineData.inlineDecorations, lineNumber, lineData.minColumn, lineData.maxColumn);
79
+ const renderWhitespace = (lineData.hasVariableFonts || options.experimentalWhitespaceRendering === 'off') ? options.renderWhitespace : 'none';
80
+ const allowFastRendering = !lineData.hasVariableFonts;
79
81
  let selectionsOnLine = null;
80
- if (isHighContrast(options.themeType) || this._options.renderWhitespace === 'selection') {
82
+ if (isHighContrast(options.themeType) || renderWhitespace === 'selection') {
81
83
  const selections = viewportData.selections;
82
84
  for (const selection of selections) {
83
85
  if (selection.endLineNumber < lineNumber || selection.startLineNumber > lineNumber) {
@@ -94,7 +96,7 @@ class ViewLine {
94
96
  InlineDecorationType.Regular
95
97
  )));
96
98
  }
97
- if (this._options.renderWhitespace === 'selection') {
99
+ if (renderWhitespace === 'selection') {
98
100
  if (!selectionsOnLine) {
99
101
  selectionsOnLine = [];
100
102
  }
@@ -119,7 +121,7 @@ class ViewLine {
119
121
  options.middotWidth,
120
122
  options.wsmiddotWidth,
121
123
  options.stopRenderingLineAfter,
122
- options.renderWhitespace,
124
+ renderWhitespace,
123
125
  options.renderControlCharacters,
124
126
  options.fontLigatures !== EditorFontLigatures.OFF,
125
127
  selectionsOnLine
@@ -139,7 +141,7 @@ class ViewLine {
139
141
  const output = renderViewLine(renderLineInput, sb);
140
142
  sb.appendString('</div>');
141
143
  let renderedViewLine = null;
142
- if (monospaceAssumptionsAreValid && canUseFastRenderedViewLine && lineData.isBasicASCII && options.useMonospaceOptimizations && output.containsForeignElements === ForeignElementType.None) {
144
+ if (allowFastRendering && monospaceAssumptionsAreValid && canUseFastRenderedViewLine && lineData.isBasicASCII && options.useMonospaceOptimizations && output.containsForeignElements === ForeignElementType.None) {
143
145
  renderedViewLine = ( new FastRenderedViewLine(
144
146
  this._renderedViewLine ? this._renderedViewLine.domNode : null,
145
147
  renderLineInput,
@@ -242,6 +244,9 @@ class FastRenderedViewLine {
242
244
  this._characterMapping = characterMapping;
243
245
  this._charWidth = renderLineInput.spaceWidth;
244
246
  }
247
+ getRenderWhitespace() {
248
+ return this.input.renderWhitespace;
249
+ }
245
250
  getWidth(context) {
246
251
  if (!this.domNode || this.input.lineContent.length < Constants.MaxMonospaceDistance) {
247
252
  const horizontalOffset = this._characterMapping.getHorizontalOffset(this._characterMapping.length);
@@ -338,6 +343,9 @@ class RenderedViewLine {
338
343
  _getReadingTarget(myDomNode) {
339
344
  return myDomNode.domNode.firstChild;
340
345
  }
346
+ getRenderWhitespace() {
347
+ return this.input.renderWhitespace;
348
+ }
341
349
  getWidth(context) {
342
350
  if (!this.domNode) {
343
351
  return 0;
@@ -3,6 +3,7 @@ import type { IEditorConfiguration } from "../../../common/config/editorConfigur
3
3
  export declare class ViewLineOptions {
4
4
  readonly themeType: ColorScheme;
5
5
  readonly renderWhitespace: "none" | "boundary" | "selection" | "trailing" | "all";
6
+ readonly experimentalWhitespaceRendering: "svg" | "font" | "off";
6
7
  readonly renderControlCharacters: boolean;
7
8
  readonly spaceWidth: number;
8
9
  readonly middotWidth: number;