@codingame/monaco-vscode-api 1.83.16 → 1.85.0-next.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 (328) hide show
  1. package/api.js +13 -7
  2. package/assets/clear.mp3 +0 -0
  3. package/assets/format.mp3 +0 -0
  4. package/assets/save.mp3 +0 -0
  5. package/extensions.d.ts +13 -3
  6. package/external/{xterm-addon-image/typings/xterm-addon-image.d.ts → @xterm/addon-image/typings/addon-image.d.ts} +1 -1
  7. package/external/{xterm → @xterm/xterm}/typings/xterm.d.ts +13 -1
  8. package/lifecycle.js +2 -2
  9. package/localExtensionHost.js +3 -1
  10. package/missing-services.js +115 -23
  11. package/monaco-editor-treemending.patch +6884 -18018
  12. package/monaco-treemending.js +2 -2
  13. package/package.json +7 -7
  14. package/service-override/tools/editor.d.ts +8 -8
  15. package/service-override/tools/editor.js +44 -19
  16. package/services.d.ts +2 -2
  17. package/services.js +3 -3
  18. package/vscode/src/vs/base/browser/broadcast.js +6 -5
  19. package/vscode/src/vs/base/browser/dnd.d.ts +6 -0
  20. package/vscode/src/vs/base/browser/mouseEvent.d.ts +1 -1
  21. package/vscode/src/vs/base/browser/touch.d.ts +10 -0
  22. package/vscode/src/vs/base/browser/ui/actionbar/actionbar.d.ts +1 -0
  23. package/vscode/src/vs/base/browser/ui/iconLabel/iconHoverDelegate.d.ts +22 -15
  24. package/vscode/src/vs/base/browser/ui/menu/menubar.js +4 -3
  25. package/vscode/src/vs/base/browser/ui/splitview/paneview.css.js +1 -1
  26. package/vscode/src/vs/base/browser/ui/splitview/paneview.d.ts +3 -0
  27. package/vscode/src/vs/base/browser/ui/splitview/paneview.js +34 -11
  28. package/vscode/src/vs/base/common/actions.d.ts +1 -15
  29. package/vscode/src/vs/base/common/async.d.ts +1 -31
  30. package/vscode/src/vs/base/common/event.d.ts +2 -1
  31. package/vscode/src/vs/base/common/observableInternal/base.d.ts +23 -10
  32. package/vscode/src/vs/base/common/prefixTree.js +21 -11
  33. package/vscode/src/vs/base/common/product.d.ts +16 -2
  34. package/vscode/src/vs/base/common/resourceTree.js +135 -0
  35. package/vscode/src/vs/base/common/skipList.js +1 -0
  36. package/vscode/src/vs/base/common/tfIdf.js +137 -0
  37. package/vscode/src/vs/base/common/types.d.ts +13 -1
  38. package/vscode/src/vs/base/common/verifier.js +62 -0
  39. package/vscode/src/vs/editor/browser/editorBrowser.d.ts +4 -2
  40. package/vscode/src/vs/editor/common/config/editorOptions.d.ts +23 -4
  41. package/vscode/src/vs/editor/common/core/lineRange.d.ts +1 -0
  42. package/vscode/src/vs/editor/common/core/offsetRange.d.ts +3 -0
  43. package/vscode/src/vs/editor/common/core/position.d.ts +1 -0
  44. package/vscode/src/vs/editor/common/editorCommon.d.ts +2 -1
  45. package/vscode/src/vs/editor/common/languages.d.ts +23 -1
  46. package/vscode/src/vs/editor/common/services/languageFeatures.d.ts +2 -1
  47. package/vscode/src/vs/editor/common/services/resolverService.d.ts +11 -2
  48. package/vscode/src/vs/platform/accessibility/common/accessibility.d.ts +16 -1
  49. package/vscode/src/vs/platform/action/common/action.d.ts +8 -0
  50. package/vscode/src/vs/platform/actions/browser/dropdownWithPrimaryActionViewItem.js +4 -0
  51. package/vscode/src/vs/platform/actions/common/actions.d.ts +8 -0
  52. package/vscode/src/vs/platform/audioCues/browser/audioCueService.d.ts +6 -0
  53. package/vscode/src/vs/platform/commands/common/commands.d.ts +13 -5
  54. package/vscode/src/vs/platform/dialogs/common/dialogs.d.ts +9 -3
  55. package/vscode/src/vs/platform/dialogs/common/dialogs.js +5 -2
  56. package/vscode/src/vs/platform/editor/common/editor.d.ts +3 -15
  57. package/vscode/src/vs/platform/extensionManagement/common/extensionManagement.d.ts +1 -0
  58. package/vscode/src/vs/platform/extensionManagement/common/extensionManagement.js +3 -15
  59. package/vscode/src/vs/platform/extensionManagement/common/implicitActivationEvents.js +5 -0
  60. package/vscode/src/vs/platform/extensions/common/extensions.d.ts +0 -1
  61. package/vscode/src/vs/platform/files/common/files.d.ts +72 -8
  62. package/vscode/src/vs/platform/files/common/watcher.js +77 -0
  63. package/vscode/src/vs/platform/keybinding/common/keybindingsRegistry.d.ts +2 -2
  64. package/vscode/src/vs/platform/layout/browser/layoutService.d.ts +52 -21
  65. package/vscode/src/vs/platform/request/browser/requestService.js +3 -0
  66. package/vscode/src/vs/platform/request/common/requestIpc.js +17 -0
  67. package/vscode/src/vs/platform/storage/common/storage.js +2 -2
  68. package/vscode/src/vs/platform/telemetry/common/telemetry.d.ts +1 -0
  69. package/vscode/src/vs/platform/terminal/common/capabilities/capabilities.d.ts +12 -7
  70. package/vscode/src/vs/platform/terminal/common/capabilities/{commandDetectionCapability.d.ts → commandDetection/terminalCommand.d.ts} +3 -2
  71. package/vscode/src/vs/platform/terminal/common/capabilities/commandDetection/terminalCommand.js +257 -0
  72. package/vscode/src/vs/platform/terminal/common/capabilities/commandDetectionCapability.js +439 -354
  73. package/vscode/src/vs/platform/window/common/window.d.ts +9 -2
  74. package/vscode/src/vs/platform/window/common/window.js +6 -1
  75. package/vscode/src/vs/platform/workspaces/common/workspaces.d.ts +2 -43
  76. package/vscode/src/vs/workbench/api/common/extHost.api.impl.js +113 -81
  77. package/vscode/src/vs/workbench/api/common/extHost.protocol.js +5 -4
  78. package/vscode/src/vs/workbench/api/common/extHostApiCommands.js +25 -3
  79. package/vscode/src/vs/workbench/api/common/extHostChat.js +13 -163
  80. package/vscode/src/vs/workbench/api/common/extHostChatAgents2.js +412 -0
  81. package/vscode/src/vs/workbench/api/common/extHostChatProvider.js +79 -11
  82. package/vscode/src/vs/workbench/api/common/extHostCommands.js +13 -12
  83. package/vscode/src/vs/workbench/api/common/extHostComments.js +1 -1
  84. package/vscode/src/vs/workbench/api/common/extHostEditorTabs.js +8 -6
  85. package/vscode/src/vs/workbench/api/common/extHostExtensionService.js +1 -1
  86. package/vscode/src/vs/workbench/api/common/extHostFileSystemEventService.js +36 -19
  87. package/vscode/src/vs/workbench/api/common/extHostInlineChat.js +52 -31
  88. package/vscode/src/vs/workbench/api/common/extHostIssueReporter.js +38 -0
  89. package/vscode/src/vs/workbench/api/common/extHostLanguageFeatures.js +28 -3
  90. package/vscode/src/vs/workbench/api/common/extHostLanguages.js +10 -0
  91. package/vscode/src/vs/workbench/api/common/extHostNotebook.js +117 -2
  92. package/vscode/src/vs/workbench/api/common/extHostNotebookKernels.js +32 -4
  93. package/vscode/src/vs/workbench/api/common/extHostSCM.js +85 -23
  94. package/vscode/src/vs/workbench/api/common/extHostSearch.js +3 -0
  95. package/vscode/src/vs/workbench/api/common/extHostSpeech.js +42 -0
  96. package/vscode/src/vs/workbench/api/common/extHostTask.js +2 -1
  97. package/vscode/src/vs/workbench/api/common/extHostTelemetry.js +1 -0
  98. package/vscode/src/vs/workbench/api/common/extHostTerminalService.js +3 -3
  99. package/vscode/src/vs/workbench/api/common/extHostTesting.js +97 -47
  100. package/vscode/src/vs/workbench/api/common/extHostTypeConverters.js +115 -16
  101. package/vscode/src/vs/workbench/api/common/extHostTypes.js +66 -36
  102. package/vscode/src/vs/workbench/api/common/extHostWorkspace.js +6 -1
  103. package/vscode/src/vs/workbench/browser/actions/layoutActions.js +182 -75
  104. package/vscode/src/vs/workbench/browser/actions/windowActions.js +176 -4
  105. package/vscode/src/vs/workbench/browser/actions/workspaceActions.js +143 -2
  106. package/vscode/src/vs/workbench/browser/actions/workspaceCommands.js +237 -0
  107. package/vscode/src/vs/workbench/browser/composite.d.ts +0 -4
  108. package/vscode/src/vs/workbench/browser/composite.js +5 -4
  109. package/vscode/src/vs/workbench/browser/dnd.js +72 -23
  110. package/vscode/src/vs/workbench/browser/labels.js +7 -3
  111. package/vscode/src/vs/workbench/browser/media/part.css.js +1 -1
  112. package/vscode/src/vs/workbench/browser/panecomposite.d.ts +2 -2
  113. package/vscode/src/vs/workbench/browser/panecomposite.js +2 -0
  114. package/vscode/src/vs/workbench/browser/part.js +33 -2
  115. package/vscode/src/vs/workbench/browser/parts/compositeBarActions.js +99 -117
  116. package/vscode/src/vs/workbench/browser/parts/editor/editor.contribution.js +173 -33
  117. package/vscode/src/vs/workbench/browser/parts/editor/editor.js +102 -6
  118. package/vscode/src/vs/workbench/browser/parts/editor/editorActions.js +256 -17
  119. package/vscode/src/vs/workbench/browser/parts/editor/editorAutoSave.js +4 -0
  120. package/vscode/src/vs/workbench/browser/parts/editor/editorCommands.js +68 -35
  121. package/vscode/src/vs/workbench/browser/parts/editor/editorPlaceholder.js +5 -5
  122. package/vscode/src/vs/workbench/browser/parts/editor/editorStatus.js +35 -16
  123. package/vscode/src/vs/workbench/browser/parts/editor/editorTabsControl.js +348 -0
  124. package/vscode/src/vs/workbench/browser/parts/editor/editorsObserver.js +43 -31
  125. package/vscode/src/vs/workbench/browser/parts/editor/media/editortabscontrol.css.js +4 -0
  126. package/vscode/src/vs/workbench/browser/parts/editor/sideBySideEditor.js +1 -0
  127. package/vscode/src/vs/workbench/browser/parts/editor/textCodeEditor.js +1 -0
  128. package/vscode/src/vs/workbench/browser/parts/editor/textDiffEditor.js +14 -2
  129. package/vscode/src/vs/workbench/browser/parts/editor/textEditor.js +4 -4
  130. package/vscode/src/vs/workbench/browser/parts/globalCompositeBar.js +277 -0
  131. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsCommands.js +5 -2
  132. package/vscode/src/vs/workbench/browser/parts/panel/media/panelpart.css.js +1 -1
  133. package/vscode/src/vs/workbench/browser/parts/panel/panelActions.js +3 -38
  134. package/vscode/src/vs/workbench/browser/parts/statusbar/statusbarPart.d.ts +54 -52
  135. package/vscode/src/vs/workbench/browser/parts/titlebar/menubarControl.js +2 -1
  136. package/vscode/src/vs/workbench/browser/parts/titlebar/titlebarPart.d.ts +25 -0
  137. package/vscode/src/vs/workbench/browser/parts/titlebar/windowTitle.js +258 -0
  138. package/vscode/src/vs/workbench/browser/parts/views/media/paneviewlet.css.js +1 -1
  139. package/vscode/src/vs/workbench/browser/parts/views/viewPane.d.ts +2 -5
  140. package/vscode/src/vs/workbench/browser/parts/views/viewPane.js +157 -117
  141. package/vscode/src/vs/workbench/browser/parts/views/viewPaneContainer.js +50 -23
  142. package/vscode/src/vs/workbench/browser/parts/views/viewsService.js +26 -11
  143. package/vscode/src/vs/workbench/browser/parts/views/viewsViewlet.js +10 -6
  144. package/vscode/src/vs/workbench/browser/style.js +2 -1
  145. package/vscode/src/vs/workbench/browser/web.api.d.ts +39 -2
  146. package/vscode/src/vs/workbench/browser/window.js +55 -0
  147. package/vscode/src/vs/workbench/browser/workbench.contribution.js +220 -40
  148. package/vscode/src/vs/workbench/common/activity.js +3 -0
  149. package/vscode/src/vs/workbench/common/contextkeys.js +35 -5
  150. package/vscode/src/vs/workbench/common/contributions.js +4 -3
  151. package/vscode/src/vs/workbench/common/editor/diffEditorInput.js +14 -4
  152. package/vscode/src/vs/workbench/common/editor/diffEditorModel.js +1 -1
  153. package/vscode/src/vs/workbench/common/editor/editorGroupModel.js +22 -19
  154. package/vscode/src/vs/workbench/common/editor/editorInput.d.ts +4 -3
  155. package/vscode/src/vs/workbench/common/editor/editorModel.d.ts +1 -2
  156. package/vscode/src/vs/workbench/common/editor/sideBySideEditorInput.js +22 -4
  157. package/vscode/src/vs/workbench/common/editor/textResourceEditorInput.js +3 -3
  158. package/vscode/src/vs/workbench/common/editor.d.ts +60 -30
  159. package/vscode/src/vs/workbench/common/editor.js +11 -3
  160. package/vscode/src/vs/workbench/common/theme.js +2 -2
  161. package/vscode/src/vs/workbench/common/views.d.ts +4 -4
  162. package/vscode/src/vs/workbench/common/views.js +3 -1
  163. package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibilityConfiguration.js +97 -8
  164. package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibilityContributions.js +17 -99
  165. package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibleView.js +103 -37
  166. package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibleViewActions.js +2 -3
  167. package/vscode/src/vs/workbench/contrib/accessibility/browser/editorAccessibilityHelp.js +127 -0
  168. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatActions.js +71 -0
  169. package/vscode/src/vs/workbench/contrib/chat/browser/chat.js +2 -1
  170. package/vscode/src/vs/workbench/contrib/chat/common/chatAgents.js +33 -110
  171. package/vscode/src/vs/workbench/contrib/chat/common/chatContextKeys.js +64 -0
  172. package/vscode/src/vs/workbench/contrib/chat/common/chatParserTypes.js +94 -0
  173. package/vscode/src/vs/workbench/contrib/chat/common/chatService.js +6 -1
  174. package/vscode/src/vs/workbench/contrib/chat/common/chatSlashCommands.js +1 -88
  175. package/vscode/src/vs/workbench/contrib/codeActions/browser/codeActionsContribution.js +4 -4
  176. package/vscode/src/vs/workbench/contrib/codeEditor/browser/diffEditorHelper.js +3 -2
  177. package/vscode/src/vs/workbench/contrib/codeEditor/browser/quickaccess/gotoSymbolQuickAccess.js +3 -1
  178. package/vscode/src/vs/workbench/contrib/codeEditor/browser/saveParticipants.js +15 -16
  179. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleWordWrap.js +9 -3
  180. package/vscode/src/vs/workbench/contrib/comments/browser/comments.contribution.js +3 -1
  181. package/vscode/src/vs/workbench/contrib/comments/browser/simpleCommentEditor.js +2 -3
  182. package/vscode/src/vs/workbench/contrib/customEditor/browser/customEditorInput.js +1 -0
  183. package/vscode/src/vs/workbench/contrib/debug/common/debug.d.ts +9 -1
  184. package/vscode/src/vs/workbench/contrib/debug/common/debug.js +10 -1
  185. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsActions.js +114 -22
  186. package/vscode/src/vs/workbench/contrib/extensions/browser/media/extensionActions.css.js +1 -1
  187. package/vscode/src/vs/workbench/contrib/extensions/common/extensions.js +4 -1
  188. package/vscode/src/vs/workbench/contrib/files/browser/explorerFileContrib.js +19 -0
  189. package/vscode/src/vs/workbench/contrib/files/browser/explorerViewlet.js +10 -8
  190. package/vscode/src/vs/workbench/contrib/files/browser/fileActions.js +62 -10
  191. package/vscode/src/vs/workbench/contrib/files/browser/fileConstants.js +2 -1
  192. package/vscode/src/vs/workbench/contrib/files/browser/fileImportExport.js +9 -8
  193. package/vscode/src/vs/workbench/contrib/files/browser/files.contribution.js +10 -1
  194. package/vscode/src/vs/workbench/contrib/files/browser/files.d.ts +1 -0
  195. package/vscode/src/vs/workbench/contrib/files/browser/files.js +7 -3
  196. package/vscode/src/vs/workbench/contrib/files/browser/views/emptyView.js +4 -4
  197. package/vscode/src/vs/workbench/contrib/files/browser/views/explorerView.js +64 -36
  198. package/vscode/src/vs/workbench/contrib/files/browser/views/explorerViewer.js +42 -17
  199. package/vscode/src/vs/workbench/contrib/files/browser/views/openEditorsView.js +145 -25
  200. package/vscode/src/vs/workbench/contrib/format/browser/formatActionsMultiple.js +1 -1
  201. package/vscode/src/vs/workbench/contrib/format/browser/formatModified.js +1 -1
  202. package/vscode/src/vs/workbench/contrib/inlineChat/common/inlineChat.js +36 -0
  203. package/vscode/src/vs/workbench/contrib/notebook/common/notebookCommon.js +3 -1
  204. package/vscode/src/vs/workbench/contrib/preferences/common/preferences.js +24 -3
  205. package/vscode/src/vs/workbench/contrib/scm/browser/dirtydiffDecorator.js +11 -6
  206. package/vscode/src/vs/workbench/contrib/scm/common/scm.js +1 -2
  207. package/vscode/src/vs/workbench/contrib/search/browser/notebookSearch/searchNotebookHelpers.js +31 -0
  208. package/vscode/src/vs/workbench/contrib/search/browser/searchModel.js +61 -41
  209. package/vscode/src/vs/workbench/contrib/search/{browser/searchNotebookHelpers.js → common/cellSearchModel.js} +4 -63
  210. package/vscode/src/vs/workbench/contrib/search/common/searchNotebookHelpers.js +40 -0
  211. package/vscode/src/vs/workbench/contrib/snippets/browser/snippetsFile.js +2 -2
  212. package/vscode/src/vs/workbench/{services/editor/browser/editorDropService.js → contrib/speech/common/speechService.js} +2 -2
  213. package/vscode/src/vs/workbench/contrib/terminal/browser/detachedTerminal.js +29 -4
  214. package/vscode/src/vs/workbench/contrib/terminal/browser/terminal.d.ts +100 -79
  215. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalConfigHelper.d.ts +3 -3
  216. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalEditorInput.js +1 -1
  217. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalIcon.js +7 -4
  218. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/decorationAddon.js +5 -3
  219. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/markNavigationAddon.js +143 -41
  220. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/xtermTerminal.d.ts +17 -11
  221. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/xtermTerminal.js +41 -26
  222. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm-private.d.ts +5 -2
  223. package/vscode/src/vs/workbench/contrib/terminal/common/terminal.d.ts +2 -8
  224. package/vscode/src/vs/workbench/contrib/terminal/common/terminal.js +2 -0
  225. package/vscode/src/vs/workbench/contrib/testing/common/testCoverage.js +115 -0
  226. package/vscode/src/vs/workbench/contrib/testing/common/testCoverageService.js +74 -0
  227. package/vscode/src/vs/workbench/contrib/testing/common/testResult.js +3 -3
  228. package/vscode/src/vs/workbench/contrib/testing/common/testTypes.js +64 -1
  229. package/vscode/src/vs/workbench/contrib/testing/common/testingContextKeys.js +9 -0
  230. package/vscode/src/vs/workbench/contrib/webview/browser/webviewWindowDragMonitor.js +4 -3
  231. package/vscode/src/vs/workbench/contrib/webviewPanel/browser/webviewEditor.js +8 -9
  232. package/vscode/src/vs/workbench/contrib/webviewPanel/browser/webviewEditorInput.js +1 -1
  233. package/vscode/src/vs/workbench/contrib/webviewPanel/browser/webviewIconManager.js +5 -2
  234. package/vscode/src/vs/workbench/services/activity/browser/activityService.d.ts +16 -10
  235. package/vscode/src/vs/workbench/services/activity/common/activity.d.ts +14 -1
  236. package/vscode/src/vs/workbench/services/activity/common/activity.js +1 -7
  237. package/vscode/src/vs/workbench/services/authentication/browser/authenticationService.js +9 -28
  238. package/vscode/src/vs/workbench/services/auxiliaryWindow/browser/auxiliaryWindowService.js +273 -0
  239. package/vscode/src/vs/workbench/services/configurationResolver/common/configurationResolver.js +1 -0
  240. package/vscode/src/vs/workbench/services/configurationResolver/common/variableResolver.js +2 -0
  241. package/vscode/src/vs/workbench/services/decorations/browser/decorationsService.js +2 -3
  242. package/vscode/src/vs/workbench/services/editor/browser/editorService.d.ts +7 -5
  243. package/vscode/src/vs/workbench/services/editor/browser/editorService.js +59 -37
  244. package/vscode/src/vs/workbench/services/editor/common/editorGroupsService.d.ts +193 -94
  245. package/vscode/src/vs/workbench/services/editor/common/editorGroupsService.js +2 -2
  246. package/vscode/src/vs/workbench/services/editor/common/editorResolverService.d.ts +8 -2
  247. package/vscode/src/vs/workbench/services/editor/common/editorService.d.ts +8 -1
  248. package/vscode/src/vs/workbench/services/extensionRecommendations/common/workspaceExtensionsConfig.js +62 -16
  249. package/vscode/src/vs/workbench/services/extensions/browser/extensionUrlHandler.js +5 -3
  250. package/vscode/src/vs/workbench/services/extensions/common/abstractExtensionService.d.ts +3 -2
  251. package/vscode/src/vs/workbench/services/extensions/common/extensionDescriptionRegistry.js +4 -9
  252. package/vscode/src/vs/workbench/services/extensions/common/{extensionHostManager.d.ts → extensionHostManagers.d.ts} +2 -0
  253. package/vscode/src/vs/workbench/services/extensions/common/extensionRunningLocationTracker.d.ts +1 -1
  254. package/vscode/src/vs/workbench/services/extensions/common/extensions.d.ts +9 -0
  255. package/vscode/src/vs/workbench/services/extensions/common/extensions.js +22 -0
  256. package/vscode/src/vs/workbench/services/extensions/common/extensionsApiProposals.js +14 -3
  257. package/vscode/src/vs/workbench/services/extensions/common/extensionsRegistry.js +9 -0
  258. package/vscode/src/vs/workbench/services/filesConfiguration/common/filesConfigurationService.js +3 -3
  259. package/vscode/src/vs/workbench/services/history/common/history.d.ts +2 -2
  260. package/vscode/src/vs/workbench/services/host/browser/browserHostService.js +49 -18
  261. package/vscode/src/vs/workbench/services/host/browser/host.d.ts +29 -7
  262. package/vscode/src/vs/workbench/services/hover/browser/hover.d.ts +51 -28
  263. package/vscode/src/vs/workbench/services/hover/browser/hoverService.d.ts +5 -2
  264. package/vscode/src/vs/workbench/services/keybinding/browser/unboundCommands.js +2 -2
  265. package/vscode/src/vs/workbench/services/languageStatus/common/languageStatusService.d.ts +4 -1
  266. package/vscode/src/vs/workbench/services/layout/browser/layoutService.d.ts +40 -36
  267. package/vscode/src/vs/workbench/services/panecomposite/browser/panecomposite.d.ts +0 -6
  268. package/vscode/src/vs/workbench/services/preferences/common/preferences.d.ts +3 -0
  269. package/vscode/src/vs/workbench/services/progress/browser/progressIndicator.js +2 -2
  270. package/vscode/src/vs/workbench/services/remote/common/remoteExplorerService.d.ts +16 -1
  271. package/vscode/src/vs/workbench/services/request/browser/requestService.js +48 -0
  272. package/vscode/src/vs/workbench/services/search/common/searchHelpers.js +4 -4
  273. package/vscode/src/vs/workbench/services/statusbar/browser/statusbar.d.ts +10 -51
  274. package/vscode/src/vs/workbench/services/suggest/browser/simpleSuggestWidget.js +2 -2
  275. package/vscode/src/vs/workbench/services/textfile/browser/textFileService.js +32 -1
  276. package/vscode/src/vs/workbench/services/textfile/common/textEditorService.js +1 -5
  277. package/vscode/src/vs/workbench/services/themes/browser/browserHostColorSchemeService.js +4 -3
  278. package/vscode/src/vs/workbench/services/themes/common/iconExtensionPoint.js +9 -3
  279. package/vscode/src/vs/workbench/services/title/browser/titleService.d.ts +18 -0
  280. package/vscode/src/vs/workbench/services/untitled/common/untitledTextEditorInput.js +18 -3
  281. package/vscode/src/vs/workbench/services/untitled/common/untitledTextEditorModel.js +16 -7
  282. package/vscode/src/vs/workbench/services/untitled/common/untitledTextEditorService.d.ts +6 -0
  283. package/vscode/src/vs/workbench/services/untitled/common/untitledTextEditorService.js +13 -0
  284. package/vscode/src/vs/workbench/services/url/browser/urlService.js +2 -1
  285. package/vscode/src/vs/workbench/services/userActivity/common/userActivityService.js +2 -2
  286. package/vscode/src/vs/workbench/services/userDataProfile/common/userDataProfileIcons.js +9 -0
  287. package/vscode-dts/vscode.proposed.chatAgents2.d.ts +375 -0
  288. package/vscode-dts/vscode.proposed.chatAgents2Additions.d.ts +80 -0
  289. package/vscode-dts/vscode.proposed.chatProvider.d.ts +5 -1
  290. package/vscode-dts/vscode.proposed.chatRequestAccess.d.ts +68 -10
  291. package/vscode-dts/vscode.proposed.chatTab.d.ts +21 -0
  292. package/vscode-dts/vscode.proposed.chatVariables.d.ts +5 -1
  293. package/vscode-dts/vscode.proposed.codeActionAI.d.ts +16 -0
  294. package/vscode-dts/vscode.proposed.contribSourceControlInputBoxMenu.d.ts +7 -0
  295. package/vscode-dts/vscode.proposed.createFileSystemWatcher.d.ts +51 -0
  296. package/vscode-dts/vscode.proposed.defaultChatAgent.d.ts +30 -0
  297. package/vscode-dts/vscode.proposed.handleIssueUri.d.ts +26 -0
  298. package/vscode-dts/vscode.proposed.interactive.d.ts +26 -100
  299. package/vscode-dts/vscode.proposed.interactiveUserActions.d.ts +14 -7
  300. package/vscode-dts/vscode.proposed.languageStatusText.d.ts +12 -0
  301. package/vscode-dts/vscode.proposed.multiDocumentHighlightProvider.d.ts +63 -0
  302. package/vscode-dts/vscode.proposed.notebookVariableProvider.d.ts +43 -0
  303. package/vscode-dts/vscode.proposed.resolvers.d.ts +100 -1
  304. package/vscode-dts/vscode.proposed.scmHistoryProvider.d.ts +9 -1
  305. package/vscode-dts/vscode.proposed.scmInputBoxActionButton.d.ts +19 -0
  306. package/vscode-dts/vscode.proposed.scmInputBoxValueProvider.d.ts +25 -0
  307. package/vscode-dts/vscode.proposed.speech.d.ts +35 -0
  308. package/vscode-dts/vscode.proposed.terminalQuickFixProvider.d.ts +11 -7
  309. package/vscode-dts/vscode.proposed.testCoverage.d.ts +6 -1
  310. package/vscode-dts/vscode.proposed.testingActiveProfile.d.ts +21 -0
  311. package/external/xterm-headless/typings/xterm-headless.d.ts +0 -49
  312. package/vscode/src/vs/platform/backup/common/backup.d.ts +0 -14
  313. package/vscode/src/vs/platform/update/common/update.d.ts +0 -112
  314. package/vscode/src/vs/workbench/api/common/extHostChatAgents.js +0 -62
  315. package/vscode/src/vs/workbench/api/common/extHostChatSlashCommand.js +0 -62
  316. package/vscode/src/vs/workbench/browser/parts/paneCompositePart.d.ts +0 -56
  317. package/vscode/src/vs/workbench/services/files/common/files.js +0 -4
  318. package/vscode/src/vs/workbench/services/host/browser/browserHostService.d.ts +0 -41
  319. package/vscode/src/vs/workbench/services/title/common/titleService.d.ts +0 -31
  320. package/vscode-dts/vscode.proposed.chatAgents.d.ts +0 -39
  321. package/vscode-dts/vscode.proposed.chatSlashCommands.d.ts +0 -47
  322. package/vscode-dts/vscode.proposed.testMessageContextValue.d.ts +0 -45
  323. /package/external/{xterm-addon-canvas/typings/xterm-addon-canvas.d.ts → @xterm/addon-canvas/typings/addon-canvas.d.ts} +0 -0
  324. /package/external/{xterm-addon-search/typings/xterm-addon-search.d.ts → @xterm/addon-search/typings/addon-search.d.ts} +0 -0
  325. /package/external/{xterm-addon-serialize/typings/xterm-addon-serialize.d.ts → @xterm/addon-serialize/typings/addon-serialize.d.ts} +0 -0
  326. /package/external/{xterm-addon-unicode11/typings/xterm-addon-unicode11.d.ts → @xterm/addon-unicode11/typings/addon-unicode11.d.ts} +0 -0
  327. /package/external/{xterm-addon-webgl/typings/xterm-addon-webgl.d.ts → @xterm/addon-webgl/typings/addon-webgl.d.ts} +0 -0
  328. /package/vscode/src/vs/workbench/services/title/{common → browser}/titleService.js +0 -0
@@ -1,7 +1,7 @@
1
1
  import { __decorate, __param } from '../../../../../../../external/tslib/tslib.es6.js';
2
2
  import { Disposable, toDisposable, DisposableStore } from 'monaco-editor/esm/vs/base/common/lifecycle.js';
3
3
  import { IViewDescriptorService, IViewsService } from '../../../common/views.js';
4
- import { FocusedViewContext, getEnabledViewContainerContextKey, getVisbileViewContextKey } from '../../../common/contextkeys.js';
4
+ import { FocusedViewContext, getVisbileViewContextKey } from '../../../common/contextkeys.js';
5
5
  import { Registry } from 'monaco-editor/esm/vs/platform/registry/common/platform.js';
6
6
  import { IStorageService } from 'monaco-editor/esm/vs/platform/storage/common/storage.js';
7
7
  import { RawContextKey, ContextKeyExpr, IContextKeyService } from 'monaco-editor/esm/vs/platform/contextkey/common/contextkey.js';
@@ -22,13 +22,15 @@ import { Categories } from 'monaco-editor/esm/vs/platform/action/common/actionCo
22
22
  import { IEditorGroupsService } from '../../../services/editor/common/editorGroupsService.js';
23
23
  import { FilterViewPaneContainer } from './viewsViewlet.js';
24
24
  import { IPaneCompositePartService } from '../../../services/panecomposite/browser/panecomposite.js';
25
+ import { IEditorService } from '../../../services/editor/common/editorService.js';
25
26
  let ViewsService = class ViewsService extends Disposable {
26
- constructor(viewDescriptorService, paneCompositeService, contextKeyService, layoutService) {
27
+ constructor(viewDescriptorService, paneCompositeService, contextKeyService, layoutService, editorService) {
27
28
  super();
28
29
  this.viewDescriptorService = viewDescriptorService;
29
30
  this.paneCompositeService = paneCompositeService;
30
31
  this.contextKeyService = contextKeyService;
31
32
  this.layoutService = layoutService;
33
+ this.editorService = editorService;
32
34
  this._onDidChangeViewVisibility = this._register(( new Emitter()));
33
35
  this.onDidChangeViewVisibility = this._onDidChangeViewVisibility.event;
34
36
  this._onDidChangeViewContainerVisibility = this._register(( new Emitter()));
@@ -36,6 +38,7 @@ let ViewsService = class ViewsService extends Disposable {
36
38
  this._onDidChangeFocusedView = this._register(( new Emitter()));
37
39
  this.onDidChangeFocusedView = this._onDidChangeFocusedView.event;
38
40
  this.viewDisposable = ( new Map());
41
+ this.enabledViewContainersContextKeys = ( new Map());
39
42
  this.visibleViewContextKeys = ( new Map());
40
43
  this.viewPaneContainers = ( new Map());
41
44
  this._register(toDisposable(() => {
@@ -88,6 +91,8 @@ let ViewsService = class ViewsService extends Disposable {
88
91
  this.onViewDescriptorsAdded(added, viewContainer);
89
92
  this.onViewDescriptorsRemoved(removed);
90
93
  }));
94
+ this.updateViewContainerEnablementContextKey(viewContainer);
95
+ this._register(viewContainerModel.onDidChangeActiveViewDescriptors(() => this.updateViewContainerEnablementContextKey(viewContainer)));
91
96
  this._register(this.registerOpenViewContainerAction(viewContainer));
92
97
  }
93
98
  onDidChangeContainerLocation(viewContainer, from, to) {
@@ -99,11 +104,10 @@ let ViewsService = class ViewsService extends Disposable {
99
104
  if (location === null) {
100
105
  return;
101
106
  }
102
- const composite = this.getComposite(container.id, location);
103
107
  for (const viewDescriptor of views) {
104
108
  const disposables = ( new DisposableStore());
105
109
  disposables.add(this.registerOpenViewAction(viewDescriptor));
106
- disposables.add(this.registerFocusViewAction(viewDescriptor, composite?.name && composite.name !== composite.id ? composite.name : Categories.View));
110
+ disposables.add(this.registerFocusViewAction(viewDescriptor, container.title));
107
111
  disposables.add(this.registerResetViewLocationAction(viewDescriptor));
108
112
  this.viewDisposable.set(viewDescriptor, disposables);
109
113
  }
@@ -117,6 +121,14 @@ let ViewsService = class ViewsService extends Disposable {
117
121
  }
118
122
  }
119
123
  }
124
+ updateViewContainerEnablementContextKey(viewContainer) {
125
+ let contextKey = this.enabledViewContainersContextKeys.get(viewContainer.id);
126
+ if (!contextKey) {
127
+ contextKey = this.contextKeyService.createKey(getEnabledViewContainerContextKey(viewContainer.id), false);
128
+ this.enabledViewContainersContextKeys.set(viewContainer.id, contextKey);
129
+ }
130
+ contextKey.set(!(viewContainer.hideIfEmpty && this.viewDescriptorService.getViewContainerModel(viewContainer).activeViewDescriptors.length === 0));
131
+ }
120
132
  async openComposite(compositeId, location, focus) {
121
133
  return this.paneCompositeService.openPaneComposite(compositeId, location, focus);
122
134
  }
@@ -188,7 +200,8 @@ let ViewsService = class ViewsService extends Disposable {
188
200
  }
189
201
  getFocusedViewName() {
190
202
  const viewId = this.contextKeyService.getContextKeyValue(FocusedViewContext.key) ?? '';
191
- return this.viewDescriptorService.getViewDescriptorById(( viewId.toString()))?.name ?? '';
203
+ const textEditorFocused = this.editorService.activeTextEditorControl?.hasTextFocus() ? ( localizeWithPath('vs/workbench/browser/parts/views/viewsService', 'editor', "Text Editor")) : undefined;
204
+ return this.viewDescriptorService.getViewDescriptorById(( viewId.toString()))?.name?.value ?? textEditorFocused ?? '';
192
205
  }
193
206
  async openView(id, focus) {
194
207
  const viewContainer = this.viewDescriptorService.getViewContainerByViewId(id);
@@ -437,11 +450,11 @@ let ViewsService = class ViewsService extends Disposable {
437
450
  'vs/workbench/browser/parts/views/viewsService',
438
451
  { key: 'focus view', comment: ['{0} indicates the name of the view to be focused.'] },
439
452
  "Focus on {0} View",
440
- viewDescriptor.name
453
+ viewDescriptor.name.value
441
454
  ));
442
455
  super({
443
456
  id: viewDescriptor.focusCommand ? viewDescriptor.focusCommand.id : `${viewDescriptor.id}.focus`,
444
- title: { original: `Focus on ${viewDescriptor.name} View`, value: title },
457
+ title: { original: `Focus on ${viewDescriptor.name.original} View`, value: title },
445
458
  category,
446
459
  menu: [{
447
460
  id: MenuId.CommandPalette,
@@ -456,7 +469,7 @@ let ViewsService = class ViewsService extends Disposable {
456
469
  mac: viewDescriptor.focusCommand?.keybindings?.mac,
457
470
  win: viewDescriptor.focusCommand?.keybindings?.win
458
471
  },
459
- description: {
472
+ metadata: {
460
473
  description: title,
461
474
  args: [
462
475
  {
@@ -508,9 +521,9 @@ let ViewsService = class ViewsService extends Disposable {
508
521
  const containerModel = viewDescriptorService.getViewContainerModel(defaultContainer);
509
522
  if (defaultContainer.hideIfEmpty && containerModel.visibleViewDescriptors.length === 0) {
510
523
  const defaultLocation = viewDescriptorService.getDefaultViewContainerLocation(defaultContainer);
511
- viewDescriptorService.moveViewContainerToLocation(defaultContainer, defaultLocation);
524
+ viewDescriptorService.moveViewContainerToLocation(defaultContainer, defaultLocation, undefined, this.desc.id);
512
525
  }
513
- viewDescriptorService.moveViewsToContainer([viewDescriptor], viewDescriptorService.getDefaultContainerById(viewDescriptor.id));
526
+ viewDescriptorService.moveViewsToContainer([viewDescriptor], viewDescriptorService.getDefaultContainerById(viewDescriptor.id), undefined, this.desc.id);
514
527
  accessor.get(IViewsService).openView(viewDescriptor.id, true);
515
528
  }
516
529
  });
@@ -572,8 +585,10 @@ ViewsService = ( __decorate([
572
585
  ( __param(0, IViewDescriptorService)),
573
586
  ( __param(1, IPaneCompositePartService)),
574
587
  ( __param(2, IContextKeyService)),
575
- ( __param(3, IWorkbenchLayoutService))
588
+ ( __param(3, IWorkbenchLayoutService)),
589
+ ( __param(4, IEditorService))
576
590
  ], ViewsService));
591
+ function getEnabledViewContainerContextKey(viewContainerId) { return `viewContainer.${viewContainerId}.enabled`; }
577
592
  function getPaneCompositeExtension(viewContainerLocation) {
578
593
  switch (viewContainerLocation) {
579
594
  case 2 :
@@ -19,12 +19,6 @@ let FilterViewPaneContainer = class FilterViewPaneContainer extends ViewPaneCont
19
19
  this.filterValue = newFilterValue;
20
20
  this.onFilterChanged(newFilterValue);
21
21
  }));
22
- this._register(this.onDidChangeViewVisibility(view => {
23
- const descriptorMap = Array.from(this.allViews.entries()).find(entry => ( entry[1].has(view.id)));
24
- if (descriptorMap && !this.filterValue?.includes(descriptorMap[0])) {
25
- this.setFilter(descriptorMap[1].get(view.id));
26
- }
27
- }));
28
22
  this._register(this.viewContainerModel.onDidChangeActiveViewDescriptors(() => {
29
23
  this.updateAllViews(this.viewContainerModel.activeViewDescriptors);
30
24
  }));
@@ -93,6 +87,16 @@ let FilterViewPaneContainer = class FilterViewPaneContainer extends ViewPaneCont
93
87
  }
94
88
  return panes;
95
89
  }
90
+ openView(id, focus) {
91
+ const result = super.openView(id, focus);
92
+ if (result) {
93
+ const descriptorMap = Array.from(this.allViews.entries()).find(entry => ( entry[1].has(id)));
94
+ if (descriptorMap && !this.filterValue?.includes(descriptorMap[0])) {
95
+ this.setFilter(descriptorMap[1].get(id));
96
+ }
97
+ }
98
+ return result;
99
+ }
96
100
  };
97
101
  FilterViewPaneContainer = ( __decorate([
98
102
  ( __param(2, IConfigurationService)),
@@ -4,6 +4,7 @@ import { isWeb, isIOS, isWindows, isMacintosh } from 'monaco-editor/esm/vs/base/
4
4
  import { createMetaElement } from 'monaco-editor/esm/vs/base/browser/dom.js';
5
5
  import { isSafari, isStandalone } from 'monaco-editor/esm/vs/base/browser/browser.js';
6
6
  import { selectionBackground } from 'monaco-editor/esm/vs/platform/theme/common/colorRegistry.js';
7
+ import { mainWindow } from 'monaco-editor/esm/vs/base/browser/window.js';
7
8
  registerThemingParticipant((theme, collector) => {
8
9
  const workbenchBackground = WORKBENCH_BACKGROUND(theme);
9
10
  collector.addRule(`.monaco-workbench { background-color: ${workbenchBackground}; }`);
@@ -15,7 +16,7 @@ registerThemingParticipant((theme, collector) => {
15
16
  const titleBackground = theme.getColor(TITLE_BAR_ACTIVE_BACKGROUND);
16
17
  if (titleBackground) {
17
18
  const metaElementId = 'monaco-workbench-meta-theme-color';
18
- let metaElement = document.getElementById(metaElementId);
19
+ let metaElement = mainWindow.document.getElementById(metaElementId);
19
20
  if (!metaElement) {
20
21
  metaElement = createMetaElement();
21
22
  metaElement.name = 'theme-color';
@@ -4,11 +4,11 @@ import { IURLCallbackProvider } from '../services/url/browser/urlService.js';
4
4
  import { LogLevel } from '../../platform/log/common/log.js';
5
5
  import { IUpdateProvider } from '../services/update/browser/updateService.js';
6
6
  import { Event } from '../../base/common/event.js';
7
- import { IWorkspaceProvider } from '../services/host/browser/browserHostService.js';
8
7
  import { IProductConfiguration } from '../../base/common/product.js';
9
8
  import { ISecretStorageProvider } from '../../platform/secrets/common/secrets.js';
10
9
  import { TunnelProviderFeatures } from '../../platform/tunnel/common/tunnel.js';
11
10
  import { ITextEditorOptions } from '../../platform/editor/common/editor.js';
11
+ import { IWorkspaceToOpen, IFolderToOpen } from '../../platform/window/common/window.js';
12
12
  import { EditorGroupLayout } from '../services/editor/common/editorGroupsService.js';
13
13
 
14
14
  interface IWorkbenchConstructionOptions {
@@ -178,6 +178,43 @@ interface IWorkbenchConstructionOptions {
178
178
  readonly messagePorts?: ReadonlyMap<ExtensionId, MessagePort>;
179
179
  readonly developmentOptions?: IDevelopmentOptions;
180
180
  }
181
+ /**
182
+ * A workspace to open in the workbench can either be:
183
+ * - a workspace file with 0-N folders (via `workspaceUri`)
184
+ * - a single folder (via `folderUri`)
185
+ * - empty (via `undefined`)
186
+ */
187
+ type IWorkspace = IWorkspaceToOpen | IFolderToOpen | undefined;
188
+ interface IWorkspaceProvider {
189
+ /**
190
+ * The initial workspace to open.
191
+ */
192
+ readonly workspace: IWorkspace;
193
+ /**
194
+ * Arbitrary payload from the `IWorkspaceProvider.open` call.
195
+ */
196
+ readonly payload?: object;
197
+ /**
198
+ * Return `true` if the provided [workspace](#IWorkspaceProvider.workspace) is trusted, `false` if not trusted, `undefined` if unknown.
199
+ */
200
+ readonly trusted: boolean | undefined;
201
+ /**
202
+ * Asks to open a workspace in the current or a new window.
203
+ *
204
+ * @param workspace the workspace to open.
205
+ * @param options optional options for the workspace to open.
206
+ * - `reuse`: whether to open inside the current window or a new window
207
+ * - `payload`: arbitrary payload that should be made available
208
+ * to the opening window via the `IWorkspaceProvider.payload` property.
209
+ * @param payload optional payload to send to the workspace to open.
210
+ *
211
+ * @returns true if successfully opened, false otherwise.
212
+ */
213
+ open(workspace: IWorkspace, options?: {
214
+ reuse?: boolean;
215
+ payload?: object;
216
+ }): Promise<boolean>;
217
+ }
181
218
  interface IResourceUriProvider {
182
219
  (uri: URI): URI;
183
220
  }
@@ -552,4 +589,4 @@ interface IRemoteResourceRequest {
552
589
  respondWith(statusCode: number, body: Uint8Array, headers: Record<string, string>): void;
553
590
  }
554
591
 
555
- export { ColorScheme, type ExtensionId, type ICommand, type ICommonTelemetryPropertiesResolver, type IDefaultEditor, type IDefaultLayout, type IDefaultView, type IDevelopmentOptions, type IExternalUriResolver, type IHomeIndicator, type IInitialColorTheme, type IProductQualityChangeHandler, type IRemoteResourceProvider, type IRemoteResourceRequest, type IResourceUriProvider, type ISettingsSyncOptions, type IShowPortCandidate, type ITunnel, type ITunnelFactory, type ITunnelOptions, type ITunnelProvider, type IWelcomeBanner, type IWelcomeDialog, type IWelcomeLinkAction, type IWindowIndicator, type IWorkbenchConstructionOptions, type MarketplaceExtension, Menu, type TunnelCreationOptions };
592
+ export { ColorScheme, type ExtensionId, type ICommand, type ICommonTelemetryPropertiesResolver, type IDefaultEditor, type IDefaultLayout, type IDefaultView, type IDevelopmentOptions, type IExternalUriResolver, type IHomeIndicator, type IInitialColorTheme, type IProductQualityChangeHandler, type IRemoteResourceProvider, type IRemoteResourceRequest, type IResourceUriProvider, type ISettingsSyncOptions, type IShowPortCandidate, type ITunnel, type ITunnelFactory, type ITunnelOptions, type ITunnelProvider, type IWelcomeBanner, type IWelcomeDialog, type IWelcomeLinkAction, type IWindowIndicator, type IWorkbenchConstructionOptions, type IWorkspace, type IWorkspaceProvider, type MarketplaceExtension, Menu, type TunnelCreationOptions };
@@ -0,0 +1,55 @@
1
+ import { getWindowsCount, getWindows } from 'monaco-editor/esm/vs/base/browser/dom.js';
2
+ import { Disposable, dispose, toDisposable } from 'monaco-editor/esm/vs/base/common/lifecycle.js';
3
+ import '../../../../../override/vs/platform/dialogs/common/dialogs.js';
4
+ import { isAuxiliaryWindow } from 'monaco-editor/esm/vs/base/browser/window.js';
5
+ import { createSingleCallFunction } from 'monaco-editor/esm/vs/base/common/functional.js';
6
+ class BaseWindow extends Disposable {
7
+ static { this.TIMEOUT_HANDLES = Number.MIN_SAFE_INTEGER; }
8
+ static { this.TIMEOUT_DISPOSABLES = ( new Map()); }
9
+ constructor(targetWindow, dom = { getWindowsCount, getWindows } ) {
10
+ super();
11
+ this.enableMultiWindowAwareTimeout(targetWindow, dom);
12
+ }
13
+ enableMultiWindowAwareTimeout(targetWindow, dom = { getWindowsCount, getWindows }) {
14
+ const originalSetTimeout = targetWindow.setTimeout;
15
+ Object.defineProperty(targetWindow, 'vscodeOriginalSetTimeout', { get: () => originalSetTimeout });
16
+ const originalClearTimeout = targetWindow.clearTimeout;
17
+ Object.defineProperty(targetWindow, 'vscodeOriginalClearTimeout', { get: () => originalClearTimeout });
18
+ targetWindow.setTimeout = function (handler, timeout = 0, ...args) {
19
+ if (dom.getWindowsCount() === 1 || typeof handler === 'string' || timeout === 0 ) {
20
+ return originalSetTimeout.apply(this, [handler, timeout, ...args]);
21
+ }
22
+ const timeoutDisposables = ( new Set());
23
+ const timeoutHandle = BaseWindow.TIMEOUT_HANDLES++;
24
+ BaseWindow.TIMEOUT_DISPOSABLES.set(timeoutHandle, timeoutDisposables);
25
+ const handlerFn = createSingleCallFunction(handler, () => {
26
+ dispose(timeoutDisposables);
27
+ BaseWindow.TIMEOUT_DISPOSABLES.delete(timeoutHandle);
28
+ });
29
+ for (const { window, disposables } of dom.getWindows()) {
30
+ if (isAuxiliaryWindow(window) && window.document.visibilityState === 'hidden') {
31
+ continue;
32
+ }
33
+ const handle = window.vscodeOriginalSetTimeout.apply(this, [handlerFn, timeout, ...args]);
34
+ const timeoutDisposable = toDisposable(() => {
35
+ window.vscodeOriginalClearTimeout(handle);
36
+ timeoutDisposables.delete(timeoutDisposable);
37
+ });
38
+ disposables.add(timeoutDisposable);
39
+ timeoutDisposables.add(timeoutDisposable);
40
+ }
41
+ return timeoutHandle;
42
+ };
43
+ targetWindow.clearTimeout = function (timeoutHandle) {
44
+ const timeoutDisposables = typeof timeoutHandle === 'number' ? BaseWindow.TIMEOUT_DISPOSABLES.get(timeoutHandle) : undefined;
45
+ if (timeoutDisposables) {
46
+ dispose(timeoutDisposables);
47
+ BaseWindow.TIMEOUT_DISPOSABLES.delete(timeoutHandle);
48
+ }
49
+ else {
50
+ originalClearTimeout.apply(this, [timeoutHandle]);
51
+ }
52
+ };
53
+ }
54
+ }
55
+ export { BaseWindow };