@codingame/monaco-vscode-api 25.1.1 → 26.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.
- package/_virtual/_commonjsHelpers.js +5 -0
- package/_virtual/main.js +25 -0
- package/_virtual/main4.js +3 -0
- package/external/@vscode/tree-sitter-wasm/wasm/tree-sitter.js +3291 -0
- package/external/vscode-textmate/release/main.js +14 -0
- package/missing-services.js +277 -64
- package/package.json +8 -8
- package/services.js +5 -6
- package/vscode/product.json.js +1 -1
- package/vscode/src/vs/base/browser/broadcast.js +13 -12
- package/vscode/src/vs/base/browser/browser.js +19 -13
- package/vscode/src/vs/base/browser/cssValue.js +9 -9
- package/vscode/src/vs/base/browser/dom.d.ts +99 -2
- package/vscode/src/vs/base/browser/dom.js +468 -321
- package/vscode/src/vs/base/browser/domSanitize.js +139 -136
- package/vscode/src/vs/base/browser/domStylesheets.d.ts +0 -11
- package/vscode/src/vs/base/browser/domStylesheets.js +30 -24
- package/vscode/src/vs/base/browser/event.js +1 -1
- package/vscode/src/vs/base/browser/fastDomNode.js +30 -30
- package/vscode/src/vs/base/browser/fonts.js +2 -3
- package/vscode/src/vs/base/browser/formattedTextRenderer.js +41 -46
- package/vscode/src/vs/base/browser/globalPointerMoveMonitor.js +13 -8
- package/vscode/src/vs/base/browser/iframe.js +10 -9
- package/vscode/src/vs/base/browser/indexedDB.js +22 -19
- package/vscode/src/vs/base/browser/keyboardEvent.js +26 -24
- package/vscode/src/vs/base/browser/markdownRenderer.js +321 -234
- package/vscode/src/vs/base/browser/pixelRatio.js +9 -9
- package/vscode/src/vs/base/browser/touch.d.ts +7 -0
- package/vscode/src/vs/base/browser/touch.js +63 -35
- package/vscode/src/vs/base/browser/ui/actionbar/actionViewItems.js +79 -72
- package/vscode/src/vs/base/browser/ui/actionbar/actionbar.css +8 -5
- package/vscode/src/vs/base/browser/ui/actionbar/actionbar.d.ts +1 -0
- package/vscode/src/vs/base/browser/ui/actionbar/actionbar.js +94 -96
- package/vscode/src/vs/base/browser/ui/aria/aria.js +14 -16
- package/vscode/src/vs/base/browser/ui/breadcrumbs/breadcrumbsWidget.js +52 -35
- package/vscode/src/vs/base/browser/ui/button/button.css +14 -5
- package/vscode/src/vs/base/browser/ui/button/button.d.ts +2 -0
- package/vscode/src/vs/base/browser/ui/button/button.js +154 -132
- package/vscode/src/vs/base/browser/ui/centered/centeredViewLayout.js +71 -30
- package/vscode/src/vs/base/browser/ui/codicons/codicon/codicon-modifiers.css +2 -0
- package/vscode/src/vs/base/browser/ui/codicons/codicon/codicon.ttf +0 -0
- package/vscode/src/vs/base/browser/ui/contextview/contextview.js +108 -76
- package/vscode/src/vs/base/browser/ui/countBadge/countBadge.js +13 -9
- package/vscode/src/vs/base/browser/ui/dialog/dialog.css +2 -8
- package/vscode/src/vs/base/browser/ui/dialog/dialog.js +130 -114
- package/vscode/src/vs/base/browser/ui/dnd/dnd.js +3 -3
- package/vscode/src/vs/base/browser/ui/dropdown/dropdown.js +15 -16
- package/vscode/src/vs/base/browser/ui/dropdown/dropdownActionViewItem.js +44 -28
- package/vscode/src/vs/base/browser/ui/findinput/findInput.d.ts +1 -0
- package/vscode/src/vs/base/browser/ui/findinput/findInput.js +68 -52
- package/vscode/src/vs/base/browser/ui/findinput/replaceInput.js +48 -40
- package/vscode/src/vs/base/browser/ui/grid/grid.js +180 -111
- package/vscode/src/vs/base/browser/ui/grid/gridview.js +235 -128
- package/vscode/src/vs/base/browser/ui/hover/hover.d.ts +10 -0
- package/vscode/src/vs/base/browser/ui/hover/hoverDelegateFactory.js +11 -7
- package/vscode/src/vs/base/browser/ui/hover/hoverWidget.js +19 -20
- package/vscode/src/vs/base/browser/ui/iconLabel/iconLabel.js +106 -75
- package/vscode/src/vs/base/browser/ui/iconLabel/iconLabels.js +4 -2
- package/vscode/src/vs/base/browser/ui/icons/iconSelectBox.js +70 -52
- package/vscode/src/vs/base/browser/ui/inputbox/inputBox.css +1 -1
- package/vscode/src/vs/base/browser/ui/inputbox/inputBox.d.ts +1 -0
- package/vscode/src/vs/base/browser/ui/inputbox/inputBox.js +161 -132
- package/vscode/src/vs/base/browser/ui/keybindingLabel/keybindingLabel.js +39 -15
- package/vscode/src/vs/base/browser/ui/list/list.d.ts +3 -0
- package/vscode/src/vs/base/browser/ui/list/list.js +4 -3
- package/vscode/src/vs/base/browser/ui/list/listPaging.js +97 -32
- package/vscode/src/vs/base/browser/ui/list/listView.d.ts +1 -0
- package/vscode/src/vs/base/browser/ui/list/listView.js +381 -221
- package/vscode/src/vs/base/browser/ui/list/listWidget.d.ts +12 -1
- package/vscode/src/vs/base/browser/ui/list/listWidget.js +453 -319
- package/vscode/src/vs/base/browser/ui/list/rangeMap.js +33 -7
- package/vscode/src/vs/base/browser/ui/list/rowCache.js +19 -12
- package/vscode/src/vs/base/browser/ui/menu/menu.js +349 -324
- package/vscode/src/vs/base/browser/ui/menu/menubar.js +245 -222
- package/vscode/src/vs/base/browser/ui/progressbar/progressbar.js +31 -30
- package/vscode/src/vs/base/browser/ui/radio/radio.css +69 -0
- package/vscode/src/vs/base/browser/ui/radio/radio.d.ts +37 -0
- package/vscode/src/vs/base/browser/ui/radio/radio.js +77 -0
- package/vscode/src/vs/base/browser/ui/resizable/resizable.js +83 -36
- package/vscode/src/vs/base/browser/ui/sash/sash.js +130 -106
- package/vscode/src/vs/base/browser/ui/scrollbar/abstractScrollbar.js +43 -33
- package/vscode/src/vs/base/browser/ui/scrollbar/horizontalScrollbar.js +17 -8
- package/vscode/src/vs/base/browser/ui/scrollbar/scrollableElement.js +92 -88
- package/vscode/src/vs/base/browser/ui/scrollbar/scrollbarArrow.js +32 -28
- package/vscode/src/vs/base/browser/ui/scrollbar/scrollbarState.js +22 -7
- package/vscode/src/vs/base/browser/ui/scrollbar/scrollbarVisibilityController.js +2 -3
- package/vscode/src/vs/base/browser/ui/scrollbar/verticalScrollbar.js +14 -7
- package/vscode/src/vs/base/browser/ui/selectBox/selectBox.css +2 -2
- package/vscode/src/vs/base/browser/ui/selectBox/selectBox.js +3 -4
- package/vscode/src/vs/base/browser/ui/selectBox/selectBoxCustom.css +1 -1
- package/vscode/src/vs/base/browser/ui/selectBox/selectBoxCustom.js +238 -184
- package/vscode/src/vs/base/browser/ui/selectBox/selectBoxNative.js +23 -28
- package/vscode/src/vs/base/browser/ui/severityIcon/severityIcon.js +11 -11
- package/vscode/src/vs/base/browser/ui/splitview/paneview.js +105 -70
- package/vscode/src/vs/base/browser/ui/splitview/splitview.js +306 -159
- package/vscode/src/vs/base/browser/ui/table/tableWidget.js +127 -44
- package/vscode/src/vs/base/browser/ui/toggle/toggle.js +86 -79
- package/vscode/src/vs/base/browser/ui/toolbar/toolbar.css +14 -2
- package/vscode/src/vs/base/browser/ui/toolbar/toolbar.d.ts +5 -0
- package/vscode/src/vs/base/browser/ui/toolbar/toolbar.js +84 -49
- package/vscode/src/vs/base/browser/ui/tree/abstractTree.js +619 -331
- package/vscode/src/vs/base/browser/ui/tree/asyncDataTree.d.ts +1 -1
- package/vscode/src/vs/base/browser/ui/tree/asyncDataTree.js +277 -140
- package/vscode/src/vs/base/browser/ui/tree/compressedObjectTreeModel.js +113 -50
- package/vscode/src/vs/base/browser/ui/tree/dataTree.js +30 -12
- package/vscode/src/vs/base/browser/ui/tree/indexTreeModel.js +184 -77
- package/vscode/src/vs/base/browser/ui/tree/media/tree.css +2 -0
- package/vscode/src/vs/base/browser/ui/tree/objectTree.js +33 -19
- package/vscode/src/vs/base/browser/ui/tree/objectTreeModel.js +19 -19
- package/vscode/src/vs/base/browser/ui/tree/tree.js +4 -4
- package/vscode/src/vs/base/browser/ui/tree/treeDefaults.js +1 -1
- package/vscode/src/vs/base/browser/ui/widget.js +18 -6
- package/vscode/src/vs/base/common/actions.js +54 -29
- package/vscode/src/vs/base/common/arrays.js +58 -51
- package/vscode/src/vs/base/common/arraysFind.js +6 -6
- package/vscode/src/vs/base/common/assert.js +8 -9
- package/vscode/src/vs/base/common/async.js +182 -130
- package/vscode/src/vs/base/common/buffer.js +73 -83
- package/vscode/src/vs/base/common/cache.js +4 -6
- package/vscode/src/vs/base/common/cancellation.js +16 -11
- package/vscode/src/vs/base/common/codicons.d.ts +4 -0
- package/vscode/src/vs/base/common/codicons.js +28 -28
- package/vscode/src/vs/base/common/codiconsLibrary.d.ts +4 -0
- package/vscode/src/vs/base/common/codiconsLibrary.js +4 -0
- package/vscode/src/vs/base/common/codiconsUtil.js +3 -1
- package/vscode/src/vs/base/common/collections.js +12 -4
- package/vscode/src/vs/base/common/color.js +445 -246
- package/vscode/src/vs/base/common/comparers.js +39 -38
- package/vscode/src/vs/base/common/controlFlow.js +3 -6
- package/vscode/src/vs/base/common/dataTransfer.js +20 -16
- package/vscode/src/vs/base/common/date.js +62 -150
- package/vscode/src/vs/base/common/decorators.js +16 -19
- package/vscode/src/vs/base/common/defaultAccount.d.ts +41 -13
- package/vscode/src/vs/base/common/diff/diff.js +261 -106
- package/vscode/src/vs/base/common/equals.js +5 -6
- package/vscode/src/vs/base/common/errorMessage.js +11 -12
- package/vscode/src/vs/base/common/errors.js +28 -23
- package/vscode/src/vs/base/common/event.d.ts +18 -0
- package/vscode/src/vs/base/common/event.js +164 -87
- package/vscode/src/vs/base/common/extpath.js +21 -25
- package/vscode/src/vs/base/common/filters.js +190 -120
- package/vscode/src/vs/base/common/fuzzyScorer.js +208 -70
- package/vscode/src/vs/base/common/glob.js +125 -130
- package/vscode/src/vs/base/common/hash.js +43 -52
- package/vscode/src/vs/base/common/hierarchicalKind.js +10 -4
- package/vscode/src/vs/base/common/history.js +12 -11
- package/vscode/src/vs/base/common/htmlContent.js +43 -55
- package/vscode/src/vs/base/common/iconLabels.js +26 -13
- package/vscode/src/vs/base/common/idGenerator.js +1 -1
- package/vscode/src/vs/base/common/iterator.js +10 -9
- package/vscode/src/vs/base/common/json.js +301 -254
- package/vscode/src/vs/base/common/jsonEdit.js +86 -48
- package/vscode/src/vs/base/common/jsonErrorMessages.js +20 -11
- package/vscode/src/vs/base/common/jsonSchema.d.ts +1 -0
- package/vscode/src/vs/base/common/jsonSchema.js +34 -13
- package/vscode/src/vs/base/common/keyCodes.d.ts +3 -0
- package/vscode/src/vs/base/common/keyCodes.js +1798 -251
- package/vscode/src/vs/base/common/keybindingLabels.js +58 -58
- package/vscode/src/vs/base/common/keybindingParser.js +9 -10
- package/vscode/src/vs/base/common/keybindings.js +19 -41
- package/vscode/src/vs/base/common/labels.js +89 -55
- package/vscode/src/vs/base/common/lazy.js +11 -10
- package/vscode/src/vs/base/common/lifecycle.js +76 -55
- package/vscode/src/vs/base/common/linkedList.js +11 -17
- package/vscode/src/vs/base/common/linkedText.js +13 -9
- package/vscode/src/vs/base/common/map.js +82 -78
- package/vscode/src/vs/base/common/marshalling.js +10 -9
- package/vscode/src/vs/base/common/mime.js +72 -72
- package/vscode/src/vs/base/common/naturalLanguage/korean.js +139 -134
- package/vscode/src/vs/base/common/network.d.ts +6 -0
- package/vscode/src/vs/base/common/network.js +92 -82
- package/vscode/src/vs/base/common/normalization.js +5 -6
- package/vscode/src/vs/base/common/numbers.js +1 -1
- package/vscode/src/vs/base/common/oauth.js +138 -111
- package/vscode/src/vs/base/common/objects.js +13 -17
- package/vscode/src/vs/base/common/observableInternal/base.d.ts +4 -0
- package/vscode/src/vs/base/common/observableInternal/base.js +2 -2
- package/vscode/src/vs/base/common/observableInternal/changeTracker.js +16 -10
- package/vscode/src/vs/base/common/observableInternal/debugLocation.js +5 -6
- package/vscode/src/vs/base/common/observableInternal/debugName.js +5 -6
- package/vscode/src/vs/base/common/observableInternal/experimental/reducer.js +1 -1
- package/vscode/src/vs/base/common/observableInternal/experimental/utils.js +5 -4
- package/vscode/src/vs/base/common/observableInternal/index.js +1 -1
- package/vscode/src/vs/base/common/observableInternal/logging/consoleObservableLogger.js +121 -115
- package/vscode/src/vs/base/common/observableInternal/logging/debugGetDependencyGraph.js +26 -26
- package/vscode/src/vs/base/common/observableInternal/logging/debugger/debuggerRpc.js +17 -16
- package/vscode/src/vs/base/common/observableInternal/logging/debugger/devToolsLogger.js +155 -81
- package/vscode/src/vs/base/common/observableInternal/logging/debugger/rpc.js +18 -11
- package/vscode/src/vs/base/common/observableInternal/logging/logging.js +2 -4
- package/vscode/src/vs/base/common/observableInternal/map.js +4 -2
- package/vscode/src/vs/base/common/observableInternal/observables/baseObservable.js +16 -11
- package/vscode/src/vs/base/common/observableInternal/observables/constObservable.js +2 -4
- package/vscode/src/vs/base/common/observableInternal/observables/derived.js +7 -5
- package/vscode/src/vs/base/common/observableInternal/observables/derivedImpl.js +58 -34
- package/vscode/src/vs/base/common/observableInternal/observables/lazyObservableValue.js +20 -10
- package/vscode/src/vs/base/common/observableInternal/observables/observableFromEvent.js +34 -15
- package/vscode/src/vs/base/common/observableInternal/observables/observableSignal.js +4 -6
- package/vscode/src/vs/base/common/observableInternal/observables/observableSignalFromEvent.js +4 -7
- package/vscode/src/vs/base/common/observableInternal/observables/observableValue.js +22 -13
- package/vscode/src/vs/base/common/observableInternal/reactions/autorun.js +17 -8
- package/vscode/src/vs/base/common/observableInternal/reactions/autorunImpl.js +21 -23
- package/vscode/src/vs/base/common/observableInternal/set.js +4 -2
- package/vscode/src/vs/base/common/observableInternal/transaction.js +15 -14
- package/vscode/src/vs/base/common/observableInternal/utils/promise.js +10 -4
- package/vscode/src/vs/base/common/observableInternal/utils/runOnChange.js +5 -2
- package/vscode/src/vs/base/common/observableInternal/utils/utils.js +28 -27
- package/vscode/src/vs/base/common/observableInternal/utils/utilsCancellation.js +7 -5
- package/vscode/src/vs/base/common/paging.js +15 -15
- package/vscode/src/vs/base/common/path.js +204 -283
- package/vscode/src/vs/base/common/platform.js +52 -54
- package/vscode/src/vs/base/common/policy.d.ts +2 -2
- package/vscode/src/vs/base/common/policy.js +1 -1
- package/vscode/src/vs/base/common/prefixTree.js +19 -10
- package/vscode/src/vs/base/common/processes.js +4 -6
- package/vscode/src/vs/base/common/product.d.ts +5 -12
- package/vscode/src/vs/base/common/resourceTree.js +8 -11
- package/vscode/src/vs/base/common/resources.js +42 -29
- package/vscode/src/vs/base/common/scrollable.js +25 -27
- package/vscode/src/vs/base/common/sseParser.js +41 -42
- package/vscode/src/vs/base/common/stream.js +59 -53
- package/vscode/src/vs/base/common/strings.d.ts +6 -0
- package/vscode/src/vs/base/common/strings.js +172 -126
- package/vscode/src/vs/base/common/ternarySearchTree.js +98 -144
- package/vscode/src/vs/base/common/tfIdf.js +20 -13
- package/vscode/src/vs/base/common/themables.js +26 -18
- package/vscode/src/vs/base/common/types.js +11 -19
- package/vscode/src/vs/base/common/uri.js +98 -137
- package/vscode/src/vs/base/common/uriIpc.js +2 -2
- package/vscode/src/vs/base/common/uriTransformer.d.ts +2 -0
- package/vscode/src/vs/base/common/uriTransformer.js +59 -0
- package/vscode/src/vs/base/common/uuid.js +8 -8
- package/vscode/src/vs/base/common/validation.js +117 -32
- package/vscode/src/vs/base/common/worker/webWorker.js +49 -50
- package/vscode/src/vs/base/common/worker/webWorkerBootstrap.js +4 -7
- package/vscode/src/vs/base/common/yaml.js +161 -147
- package/vscode/src/vs/base/parts/ipc/common/ipc.js +242 -138
- package/vscode/src/vs/base/parts/ipc/common/ipc.net.js +96 -58
- package/vscode/src/vs/base/parts/storage/common/storage.js +31 -19
- package/vscode/src/vs/editor/browser/config/charWidthReader.js +15 -16
- package/vscode/src/vs/editor/browser/config/editorConfiguration.js +31 -22
- package/vscode/src/vs/editor/browser/config/elementSizeObserver.js +13 -11
- package/vscode/src/vs/editor/browser/config/fontMeasurements.js +30 -19
- package/vscode/src/vs/editor/browser/config/migrateOptions.js +123 -110
- package/vscode/src/vs/editor/browser/controller/dragScrolling.js +21 -17
- package/vscode/src/vs/editor/browser/controller/editContext/clipboardUtils.d.ts +101 -11
- package/vscode/src/vs/editor/browser/controller/editContext/clipboardUtils.js +117 -40
- package/vscode/src/vs/editor/browser/controller/editContext/editContext.d.ts +8 -0
- package/vscode/src/vs/editor/browser/controller/editContext/editContext.js +10 -0
- package/vscode/src/vs/editor/browser/controller/editContext/native/nativeEditContext.d.ts +7 -5
- package/vscode/src/vs/editor/browser/controller/editContext/native/nativeEditContext.js +149 -90
- package/vscode/src/vs/editor/browser/controller/editContext/native/nativeEditContextUtils.js +5 -7
- package/vscode/src/vs/editor/browser/controller/editContext/native/screenReaderContentRich.js +46 -34
- package/vscode/src/vs/editor/browser/controller/editContext/native/screenReaderContentSimple.js +22 -19
- package/vscode/src/vs/editor/browser/controller/editContext/native/screenReaderSupport.js +29 -25
- package/vscode/src/vs/editor/browser/controller/editContext/screenReaderUtils.js +15 -22
- package/vscode/src/vs/editor/browser/controller/editContext/textArea/textAreaEditContext.js +168 -111
- package/vscode/src/vs/editor/browser/controller/editContext/textArea/textAreaEditContextInput.d.ts +8 -2
- package/vscode/src/vs/editor/browser/controller/editContext/textArea/textAreaEditContextInput.js +134 -102
- package/vscode/src/vs/editor/browser/controller/editContext/textArea/textAreaEditContextState.js +40 -22
- package/vscode/src/vs/editor/browser/controller/mouseHandler.js +115 -79
- package/vscode/src/vs/editor/browser/controller/mouseTarget.js +202 -127
- package/vscode/src/vs/editor/browser/controller/pointerHandler.js +59 -32
- package/vscode/src/vs/editor/browser/coreCommands.js +597 -371
- package/vscode/src/vs/editor/browser/dataTransfer.js +6 -11
- package/vscode/src/vs/editor/browser/editorBrowser.d.ts +5 -0
- package/vscode/src/vs/editor/browser/editorDom.js +27 -23
- package/vscode/src/vs/editor/browser/editorExtensions.js +119 -85
- package/vscode/src/vs/editor/browser/gpu/atlas/textureAtlas.js +59 -23
- package/vscode/src/vs/editor/browser/gpu/atlas/textureAtlasPage.js +32 -20
- package/vscode/src/vs/editor/browser/gpu/atlas/textureAtlasShelfAllocator.js +6 -6
- package/vscode/src/vs/editor/browser/gpu/atlas/textureAtlasSlabAllocator.js +14 -14
- package/vscode/src/vs/editor/browser/gpu/contentSegmenter.js +3 -1
- package/vscode/src/vs/editor/browser/gpu/css/decorationCssRuleExtractor.d.ts +7 -0
- package/vscode/src/vs/editor/browser/gpu/css/decorationCssRuleExtractor.js +32 -14
- package/vscode/src/vs/editor/browser/gpu/css/decorationStyleCache.js +26 -4
- package/vscode/src/vs/editor/browser/gpu/gpuDisposable.js +4 -5
- package/vscode/src/vs/editor/browser/gpu/gpuUtils.js +9 -15
- package/vscode/src/vs/editor/browser/gpu/objectCollectionBuffer.js +11 -3
- package/vscode/src/vs/editor/browser/gpu/raster/glyphRasterizer.js +48 -40
- package/vscode/src/vs/editor/browser/gpu/rectangleRenderer.js +99 -60
- package/vscode/src/vs/editor/browser/gpu/renderStrategy/fullFileRenderStrategy.js +102 -57
- package/vscode/src/vs/editor/browser/gpu/renderStrategy/viewportRenderStrategy.d.ts +1 -0
- package/vscode/src/vs/editor/browser/gpu/renderStrategy/viewportRenderStrategy.js +100 -50
- package/vscode/src/vs/editor/browser/gpu/taskQueue.js +5 -5
- package/vscode/src/vs/editor/browser/gpu/viewGpuContext.d.ts +3 -1
- package/vscode/src/vs/editor/browser/gpu/viewGpuContext.js +103 -59
- package/vscode/src/vs/editor/browser/observableCodeEditor.d.ts +17 -0
- package/vscode/src/vs/editor/browser/observableCodeEditor.js +142 -56
- package/vscode/src/vs/editor/browser/services/abstractCodeEditorService.js +160 -123
- package/vscode/src/vs/editor/browser/services/bulkEditService.js +6 -12
- package/vscode/src/vs/editor/browser/services/bulkEditService.service.js +1 -1
- package/vscode/src/vs/editor/browser/services/codeEditorService.service.js +1 -1
- package/vscode/src/vs/editor/browser/services/contribution.js +12 -0
- package/vscode/src/vs/editor/browser/services/editorWorkerService.d.ts +1 -0
- package/vscode/src/vs/editor/browser/services/editorWorkerService.js +88 -60
- package/vscode/src/vs/editor/browser/services/inlineCompletionsService.js +62 -34
- package/vscode/src/vs/editor/browser/services/inlineCompletionsService.service.js +1 -1
- package/vscode/src/vs/editor/browser/services/markerDecorations.js +5 -9
- package/vscode/src/vs/editor/browser/services/openerService.js +42 -40
- package/vscode/src/vs/editor/browser/services/renameSymbolTrackerService.d.ts +40 -0
- package/vscode/src/vs/editor/browser/services/renameSymbolTrackerService.js +13 -0
- package/vscode/src/vs/editor/browser/services/renameSymbolTrackerService.service.d.ts +10 -0
- package/vscode/src/vs/editor/browser/services/renameSymbolTrackerService.service.js +6 -0
- package/vscode/src/vs/editor/browser/stableEditorScroll.js +17 -3
- package/vscode/src/vs/editor/browser/triggerInlineEditCommandsRegistry.js +3 -1
- package/vscode/src/vs/editor/browser/view/domLineBreaksComputer.js +133 -89
- package/vscode/src/vs/editor/browser/view/renderingContext.js +6 -2
- package/vscode/src/vs/editor/browser/view/viewController.d.ts +13 -0
- package/vscode/src/vs/editor/browser/view/viewController.js +102 -62
- package/vscode/src/vs/editor/browser/view/viewLayer.js +57 -26
- package/vscode/src/vs/editor/browser/view/viewOverlays.js +11 -13
- package/vscode/src/vs/editor/browser/view/viewPart.d.ts +2 -0
- package/vscode/src/vs/editor/browser/view/viewPart.js +4 -3
- package/vscode/src/vs/editor/browser/view/viewUserInputEvents.js +4 -2
- package/vscode/src/vs/editor/browser/view.d.ts +11 -0
- package/vscode/src/vs/editor/browser/view.js +127 -60
- package/vscode/src/vs/editor/browser/viewParts/blockDecorations/blockDecorations.js +9 -13
- package/vscode/src/vs/editor/browser/viewParts/contentWidgets/contentWidgets.js +99 -62
- package/vscode/src/vs/editor/browser/viewParts/currentLineHighlight/currentLineHighlight.js +28 -17
- package/vscode/src/vs/editor/browser/viewParts/decorations/decorations.js +33 -19
- package/vscode/src/vs/editor/browser/viewParts/editorScrollbar/editorScrollbar.js +28 -16
- package/vscode/src/vs/editor/browser/viewParts/glyphMargin/glyphMargin.js +25 -26
- package/vscode/src/vs/editor/browser/viewParts/gpuMark/gpuMark.js +6 -4
- package/vscode/src/vs/editor/browser/viewParts/indentGuides/indentGuides.js +110 -69
- package/vscode/src/vs/editor/browser/viewParts/lineNumbers/lineNumbers.js +25 -19
- package/vscode/src/vs/editor/browser/viewParts/linesDecorations/linesDecorations.js +5 -5
- package/vscode/src/vs/editor/browser/viewParts/margin/margin.js +13 -10
- package/vscode/src/vs/editor/browser/viewParts/marginDecorations/marginDecorations.js +3 -3
- package/vscode/src/vs/editor/browser/viewParts/minimap/minimap.js +435 -241
- package/vscode/src/vs/editor/browser/viewParts/minimap/minimapCharRenderer.js +25 -4
- package/vscode/src/vs/editor/browser/viewParts/minimap/minimapCharRendererFactory.js +17 -10
- package/vscode/src/vs/editor/browser/viewParts/minimap/minimapPreBaked.js +17 -13
- package/vscode/src/vs/editor/browser/viewParts/overlayWidgets/overlayWidgets.js +35 -29
- package/vscode/src/vs/editor/browser/viewParts/overviewRuler/decorationsOverviewRuler.js +84 -120
- package/vscode/src/vs/editor/browser/viewParts/overviewRuler/overviewRuler.js +7 -9
- package/vscode/src/vs/editor/browser/viewParts/rulers/rulers.css +1 -0
- package/vscode/src/vs/editor/browser/viewParts/rulers/rulers.js +8 -9
- package/vscode/src/vs/editor/browser/viewParts/rulersGpu/rulersGpu.js +4 -7
- package/vscode/src/vs/editor/browser/viewParts/scrollDecoration/scrollDecoration.js +6 -8
- package/vscode/src/vs/editor/browser/viewParts/selections/selections.js +79 -46
- package/vscode/src/vs/editor/browser/viewParts/viewCursors/viewCursor.js +43 -39
- package/vscode/src/vs/editor/browser/viewParts/viewCursors/viewCursors.js +78 -65
- package/vscode/src/vs/editor/browser/viewParts/viewLines/rangeUtil.js +3 -6
- package/vscode/src/vs/editor/browser/viewParts/viewLines/viewLine.d.ts +1 -0
- package/vscode/src/vs/editor/browser/viewParts/viewLines/viewLine.js +89 -46
- package/vscode/src/vs/editor/browser/viewParts/viewLines/viewLines.d.ts +1 -0
- package/vscode/src/vs/editor/browser/viewParts/viewLines/viewLines.js +86 -50
- package/vscode/src/vs/editor/browser/viewParts/viewLinesGpu/viewLinesGpu.d.ts +14 -0
- package/vscode/src/vs/editor/browser/viewParts/viewLinesGpu/viewLinesGpu.js +244 -118
- package/vscode/src/vs/editor/browser/viewParts/viewZones/viewZones.js +57 -54
- package/vscode/src/vs/editor/browser/viewParts/whitespace/whitespace.js +64 -49
- package/vscode/src/vs/editor/browser/widget/codeEditor/codeEditorContributions.js +7 -6
- package/vscode/src/vs/editor/browser/widget/codeEditor/codeEditorWidget.d.ts +9 -0
- package/vscode/src/vs/editor/browser/widget/codeEditor/codeEditorWidget.js +508 -286
- package/vscode/src/vs/editor/browser/widget/codeEditor/embeddedCodeEditorWidget.js +24 -15
- package/vscode/src/vs/editor/browser/widget/diffEditor/commands.js +56 -52
- package/vscode/src/vs/editor/browser/widget/diffEditor/components/accessibleDiffViewer.js +228 -155
- package/vscode/src/vs/editor/browser/widget/diffEditor/components/diffEditorDecorations.js +64 -25
- package/vscode/src/vs/editor/browser/widget/diffEditor/components/diffEditorEditors.js +98 -42
- package/vscode/src/vs/editor/browser/widget/diffEditor/components/diffEditorSash.js +7 -5
- package/vscode/src/vs/editor/browser/widget/diffEditor/components/diffEditorViewZones/copySelection.js +11 -11
- package/vscode/src/vs/editor/browser/widget/diffEditor/components/diffEditorViewZones/diffEditorViewZones.js +158 -98
- package/vscode/src/vs/editor/browser/widget/diffEditor/components/diffEditorViewZones/inlineDiffDeletedCodeMargin.js +51 -35
- package/vscode/src/vs/editor/browser/widget/diffEditor/components/diffEditorViewZones/renderLines.js +71 -19
- package/vscode/src/vs/editor/browser/widget/diffEditor/delegatingEditorImpl.js +15 -6
- package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditor.contribution.js +30 -27
- package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditorOptions.js +117 -37
- package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditorViewModel.js +131 -84
- package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditorWidget.js +315 -137
- package/vscode/src/vs/editor/browser/widget/diffEditor/diffProviderFactoryService.js +30 -26
- package/vscode/src/vs/editor/browser/widget/diffEditor/diffProviderFactoryService.service.js +1 -1
- package/vscode/src/vs/editor/browser/widget/diffEditor/embeddedDiffEditorWidget.js +27 -11
- package/vscode/src/vs/editor/browser/widget/diffEditor/features/gutterFeature.js +107 -65
- package/vscode/src/vs/editor/browser/widget/diffEditor/features/hideUnchangedRegionsFeature.js +200 -136
- package/vscode/src/vs/editor/browser/widget/diffEditor/features/movedBlocksLinesFeature.js +123 -65
- package/vscode/src/vs/editor/browser/widget/diffEditor/features/overviewRulerFeature.js +63 -36
- package/vscode/src/vs/editor/browser/widget/diffEditor/features/revertButtonsFeature.js +16 -13
- package/vscode/src/vs/editor/browser/widget/diffEditor/registrations.contribution.js +40 -35
- package/vscode/src/vs/editor/browser/widget/diffEditor/utils/editorGutter.js +37 -23
- package/vscode/src/vs/editor/browser/widget/diffEditor/utils.js +56 -37
- package/vscode/src/vs/editor/browser/widget/markdownRenderer/browser/editorMarkdownCodeBlockRenderer.js +17 -18
- package/vscode/src/vs/editor/browser/widget/multiDiffEditor/colors.js +13 -3
- package/vscode/src/vs/editor/browser/widget/multiDiffEditor/diffEditorItemTemplate.js +89 -77
- package/vscode/src/vs/editor/browser/widget/multiDiffEditor/multiDiffEditorViewModel.js +35 -24
- package/vscode/src/vs/editor/browser/widget/multiDiffEditor/multiDiffEditorWidget.js +10 -6
- package/vscode/src/vs/editor/browser/widget/multiDiffEditor/multiDiffEditorWidgetImpl.js +137 -79
- package/vscode/src/vs/editor/browser/widget/multiDiffEditor/objectPool.js +2 -4
- package/vscode/src/vs/editor/browser/widget/multiDiffEditor/style.css +2 -41
- package/vscode/src/vs/editor/common/commands/replaceCommand.js +13 -6
- package/vscode/src/vs/editor/common/commands/shiftCommand.js +21 -26
- package/vscode/src/vs/editor/common/commands/trimTrailingWhitespaceCommand.js +2 -4
- package/vscode/src/vs/editor/common/config/editorConfigurationSchema.js +198 -217
- package/vscode/src/vs/editor/common/config/editorOptions.js +1970 -1937
- package/vscode/src/vs/editor/common/config/editorZoom.js +1 -1
- package/vscode/src/vs/editor/common/config/fontInfo.js +23 -28
- package/vscode/src/vs/editor/common/core/2d/point.js +1 -2
- package/vscode/src/vs/editor/common/core/2d/rect.js +14 -18
- package/vscode/src/vs/editor/common/core/2d/size.js +4 -1
- package/vscode/src/vs/editor/common/core/characterClassifier.js +3 -5
- package/vscode/src/vs/editor/common/core/editorColorRegistry.d.ts +1 -0
- package/vscode/src/vs/editor/common/core/editorColorRegistry.js +337 -171
- package/vscode/src/vs/editor/common/core/edits/edit.js +30 -21
- package/vscode/src/vs/editor/common/core/edits/lengthEdit.js +6 -2
- package/vscode/src/vs/editor/common/core/edits/lineEdit.js +43 -45
- package/vscode/src/vs/editor/common/core/edits/stringEdit.js +59 -26
- package/vscode/src/vs/editor/common/core/edits/textEdit.js +64 -84
- package/vscode/src/vs/editor/common/core/misc/rgba.js +4 -5
- package/vscode/src/vs/editor/common/core/position.js +8 -11
- package/vscode/src/vs/editor/common/core/range.js +10 -26
- package/vscode/src/vs/editor/common/core/ranges/columnRange.js +4 -3
- package/vscode/src/vs/editor/common/core/ranges/lineRange.js +39 -35
- package/vscode/src/vs/editor/common/core/ranges/offsetRange.d.ts +1 -0
- package/vscode/src/vs/editor/common/core/ranges/offsetRange.js +6 -5
- package/vscode/src/vs/editor/common/core/ranges/rangeSingleLine.js +3 -1
- package/vscode/src/vs/editor/common/core/selection.js +17 -15
- package/vscode/src/vs/editor/common/core/stringBuilder.js +6 -7
- package/vscode/src/vs/editor/common/core/text/abstractText.js +2 -2
- package/vscode/src/vs/editor/common/core/text/positionToOffsetImpl.js +11 -7
- package/vscode/src/vs/editor/common/core/text/textLength.js +14 -15
- package/vscode/src/vs/editor/common/core/textChange.js +8 -21
- package/vscode/src/vs/editor/common/core/wordCharacterClassifier.js +6 -5
- package/vscode/src/vs/editor/common/core/wordHelper.js +14 -17
- package/vscode/src/vs/editor/common/cursor/cursor.js +221 -80
- package/vscode/src/vs/editor/common/cursor/cursorCollection.js +5 -9
- package/vscode/src/vs/editor/common/cursor/cursorColumnSelection.js +48 -7
- package/vscode/src/vs/editor/common/cursor/cursorDeleteOperations.js +37 -31
- package/vscode/src/vs/editor/common/cursor/cursorMoveCommands.js +373 -229
- package/vscode/src/vs/editor/common/cursor/cursorMoveOperations.js +138 -49
- package/vscode/src/vs/editor/common/cursor/cursorTypeEditOperations.js +189 -112
- package/vscode/src/vs/editor/common/cursor/cursorTypeOperations.js +47 -7
- package/vscode/src/vs/editor/common/cursor/cursorWordOperations.js +132 -97
- package/vscode/src/vs/editor/common/cursor/oneCursor.js +18 -8
- package/vscode/src/vs/editor/common/cursorCommon.js +24 -41
- package/vscode/src/vs/editor/common/diff/defaultLinesDiffComputer/algorithms/diffAlgorithm.js +22 -11
- package/vscode/src/vs/editor/common/diff/defaultLinesDiffComputer/algorithms/dynamicProgrammingDiffing.js +6 -12
- package/vscode/src/vs/editor/common/diff/defaultLinesDiffComputer/algorithms/myersDiffAlgorithm.js +6 -9
- package/vscode/src/vs/editor/common/diff/defaultLinesDiffComputer/computeMovedLines.js +66 -24
- package/vscode/src/vs/editor/common/diff/defaultLinesDiffComputer/defaultLinesDiffComputer.js +71 -36
- package/vscode/src/vs/editor/common/diff/defaultLinesDiffComputer/heuristicSequenceOptimizations.js +33 -38
- package/vscode/src/vs/editor/common/diff/defaultLinesDiffComputer/linesSliceCharSequence.js +18 -28
- package/vscode/src/vs/editor/common/diff/defaultLinesDiffComputer/utils.js +4 -2
- package/vscode/src/vs/editor/common/diff/legacyLinesDiffComputer.js +139 -48
- package/vscode/src/vs/editor/common/diff/linesDiffComputer.js +5 -3
- package/vscode/src/vs/editor/common/diff/linesDiffComputers.js +1 -1
- package/vscode/src/vs/editor/common/diff/rangeMapping.js +15 -23
- package/vscode/src/vs/editor/common/editorContextKeys.d.ts +1 -0
- package/vscode/src/vs/editor/common/editorContextKeys.js +63 -62
- package/vscode/src/vs/editor/common/inputMode.js +1 -1
- package/vscode/src/vs/editor/common/languageFeatureRegistry.js +24 -29
- package/vscode/src/vs/editor/common/languageSelector.js +45 -37
- package/vscode/src/vs/editor/common/languages/autoIndent.js +74 -44
- package/vscode/src/vs/editor/common/languages/defaultDocumentColorsComputer.js +47 -21
- package/vscode/src/vs/editor/common/languages/enterAction.js +6 -9
- package/vscode/src/vs/editor/common/languages/language.service.js +1 -1
- package/vscode/src/vs/editor/common/languages/languageConfiguration.js +29 -22
- package/vscode/src/vs/editor/common/languages/languageConfigurationRegistry.js +47 -46
- package/vscode/src/vs/editor/common/languages/languageConfigurationRegistry.service.js +1 -1
- package/vscode/src/vs/editor/common/languages/linkComputer.js +56 -61
- package/vscode/src/vs/editor/common/languages/modesRegistry.js +24 -25
- package/vscode/src/vs/editor/common/languages/nullTokenize.js +3 -7
- package/vscode/src/vs/editor/common/languages/supports/characterPair.js +21 -11
- package/vscode/src/vs/editor/common/languages/supports/indentationLineProcessor.js +19 -13
- package/vscode/src/vs/editor/common/languages/supports/inplaceReplaceSupport.js +15 -12
- package/vscode/src/vs/editor/common/languages/supports/languageBracketsConfiguration.js +15 -12
- package/vscode/src/vs/editor/common/languages/supports/onEnter.js +23 -24
- package/vscode/src/vs/editor/common/languages/supports/richEditBrackets.js +2 -2
- package/vscode/src/vs/editor/common/languages/supports/tokenization.d.ts +1 -1
- package/vscode/src/vs/editor/common/languages/supports/tokenization.js +82 -70
- package/vscode/src/vs/editor/common/languages/supports.js +9 -2
- package/vscode/src/vs/editor/common/languages/textToHtmlTokenizer.js +49 -46
- package/vscode/src/vs/editor/common/languages.d.ts +24 -3
- package/vscode/src/vs/editor/common/languages.js +184 -150
- package/vscode/src/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsImpl.js +139 -69
- package/vscode/src/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/ast.js +48 -42
- package/vscode/src/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/beforeEditPositionMapper.js +15 -9
- package/vscode/src/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/bracketPairsTree.js +136 -46
- package/vscode/src/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/brackets.js +3 -4
- package/vscode/src/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/combineTextEditInfos.js +21 -20
- package/vscode/src/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/concat23Trees.js +18 -23
- package/vscode/src/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/length.js +2 -5
- package/vscode/src/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/nodeReader.js +7 -13
- package/vscode/src/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/parser.js +21 -22
- package/vscode/src/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/smallImmutableSet.js +6 -2
- package/vscode/src/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/tokenizer.js +20 -27
- package/vscode/src/vs/editor/common/model/bracketPairsTextModelPart/colorizedBracketPairsDecorationProvider.d.ts +2 -2
- package/vscode/src/vs/editor/common/model/bracketPairsTextModelPart/colorizedBracketPairsDecorationProvider.js +23 -14
- package/vscode/src/vs/editor/common/model/bracketPairsTextModelPart/fixBrackets.js +12 -12
- package/vscode/src/vs/editor/common/model/decorationProvider.d.ts +2 -2
- package/vscode/src/vs/editor/common/model/editStack.js +39 -21
- package/vscode/src/vs/editor/common/model/guidesTextModelPart.js +58 -53
- package/vscode/src/vs/editor/common/model/indentationGuesser.js +14 -13
- package/vscode/src/vs/editor/common/model/intervalTree.js +89 -59
- package/vscode/src/vs/editor/common/model/mirrorTextModel.js +16 -9
- package/vscode/src/vs/editor/common/model/pieceTreeTextBuffer/pieceTreeBase.js +277 -197
- package/vscode/src/vs/editor/common/model/pieceTreeTextBuffer/pieceTreeTextBuffer.js +40 -36
- package/vscode/src/vs/editor/common/model/pieceTreeTextBuffer/pieceTreeTextBufferBuilder.js +23 -14
- package/vscode/src/vs/editor/common/model/pieceTreeTextBuffer/rbTreeBase.js +20 -39
- package/vscode/src/vs/editor/common/model/prefixSumComputer.js +2 -4
- package/vscode/src/vs/editor/common/model/textModel.js +553 -278
- package/vscode/src/vs/editor/common/model/textModelPart.js +1 -1
- package/vscode/src/vs/editor/common/model/textModelSearch.js +72 -27
- package/vscode/src/vs/editor/common/model/textModelStringEdit.js +5 -3
- package/vscode/src/vs/editor/common/model/textModelTokens.js +87 -40
- package/vscode/src/vs/editor/common/model/tokens/abstractSyntaxTokenBackend.js +21 -9
- package/vscode/src/vs/editor/common/model/tokens/annotations.js +47 -27
- package/vscode/src/vs/editor/common/model/tokens/tokenizationFontDecorationsProvider.d.ts +1 -1
- package/vscode/src/vs/editor/common/model/tokens/tokenizationFontDecorationsProvider.js +39 -27
- package/vscode/src/vs/editor/common/model/tokens/tokenizationTextModelPart.js +58 -35
- package/vscode/src/vs/editor/common/model/tokens/tokenizerSyntaxTokenBackend.js +40 -33
- package/vscode/src/vs/editor/common/model/tokens/treeSitter/cursorUtils.d.ts +1 -1
- package/vscode/src/vs/editor/common/model/tokens/treeSitter/cursorUtils.js +7 -11
- package/vscode/src/vs/editor/common/model/tokens/treeSitter/tokenStore.js +99 -60
- package/vscode/src/vs/editor/common/model/tokens/treeSitter/treeSitterSyntaxTokenBackend.js +31 -18
- package/vscode/src/vs/editor/common/model/tokens/treeSitter/treeSitterTokenizationImpl.d.ts +1 -1
- package/vscode/src/vs/editor/common/model/tokens/treeSitter/treeSitterTokenizationImpl.js +255 -97
- package/vscode/src/vs/editor/common/model/tokens/treeSitter/treeSitterTree.d.ts +1 -1
- package/vscode/src/vs/editor/common/model/tokens/treeSitter/treeSitterTree.js +98 -67
- package/vscode/src/vs/editor/common/model.d.ts +1 -1
- package/vscode/src/vs/editor/common/modelLineProjectionData.js +19 -28
- package/vscode/src/vs/editor/common/services/completionsEnablement.d.ts +30 -0
- package/vscode/src/vs/editor/common/services/completionsEnablement.js +32 -0
- package/vscode/src/vs/editor/common/services/editorWebWorker.js +116 -54
- package/vscode/src/vs/editor/common/services/editorWorker.service.js +1 -1
- package/vscode/src/vs/editor/common/services/findSectionHeaders.js +19 -11
- package/vscode/src/vs/editor/common/services/languageFeatureDebounce.js +6 -12
- package/vscode/src/vs/editor/common/services/languageFeatureDebounce.service.js +1 -1
- package/vscode/src/vs/editor/common/services/languageFeatures.service.js +1 -1
- package/vscode/src/vs/editor/common/services/languageService.js +6 -4
- package/vscode/src/vs/editor/common/services/languagesAssociations.js +47 -22
- package/vscode/src/vs/editor/common/services/languagesRegistry.js +38 -24
- package/vscode/src/vs/editor/common/services/markerDecorations.service.js +1 -1
- package/vscode/src/vs/editor/common/services/markerDecorationsService.js +56 -57
- package/vscode/src/vs/editor/common/services/model.service.js +1 -1
- package/vscode/src/vs/editor/common/services/modelService.js +134 -79
- package/vscode/src/vs/editor/common/services/resolverService.service.js +1 -1
- package/vscode/src/vs/editor/common/services/semanticTokensDto.js +24 -25
- package/vscode/src/vs/editor/common/services/semanticTokensProviderStyling.js +61 -33
- package/vscode/src/vs/editor/common/services/semanticTokensStyling.service.js +1 -1
- package/vscode/src/vs/editor/common/services/semanticTokensStylingService.js +1 -5
- package/vscode/src/vs/editor/common/services/textModelSync/textModelSync.impl.js +45 -31
- package/vscode/src/vs/editor/common/services/textResourceConfiguration.service.js +2 -2
- package/vscode/src/vs/editor/common/services/treeSitter/treeSitterLibraryService.service.d.ts +1 -1
- package/vscode/src/vs/editor/common/services/treeSitter/treeSitterLibraryService.service.js +1 -1
- package/vscode/src/vs/editor/common/services/treeSitter/treeSitterThemeService.service.js +1 -1
- package/vscode/src/vs/editor/common/services/treeViewsDndService.service.js +1 -1
- package/vscode/src/vs/editor/common/services/unicodeTextModelHighlighter.js +34 -32
- package/vscode/src/vs/editor/common/standaloneStrings.js +83 -83
- package/vscode/src/vs/editor/common/textModelEditSource.js +62 -37
- package/vscode/src/vs/editor/common/textModelEvents.d.ts +4 -4
- package/vscode/src/vs/editor/common/textModelEvents.js +17 -21
- package/vscode/src/vs/editor/common/textModelGuides.js +9 -4
- package/vscode/src/vs/editor/common/tokens/contiguousMultilineTokens.js +2 -4
- package/vscode/src/vs/editor/common/tokens/contiguousTokensEditing.js +3 -5
- package/vscode/src/vs/editor/common/tokens/contiguousTokensStore.js +37 -15
- package/vscode/src/vs/editor/common/tokens/lineTokens.js +21 -22
- package/vscode/src/vs/editor/common/tokens/sparseMultilineTokens.js +77 -66
- package/vscode/src/vs/editor/common/tokens/sparseTokensStore.js +27 -19
- package/vscode/src/vs/editor/common/tokens/tokenWithTextArray.js +4 -1
- package/vscode/src/vs/editor/common/viewLayout/lineDecorations.js +5 -13
- package/vscode/src/vs/editor/common/viewLayout/lineHeights.js +29 -45
- package/vscode/src/vs/editor/common/viewLayout/linesLayout.js +39 -42
- package/vscode/src/vs/editor/common/viewLayout/viewLayout.js +24 -17
- package/vscode/src/vs/editor/common/viewLayout/viewLineRenderer.js +175 -192
- package/vscode/src/vs/editor/common/viewModel/glyphLanesModel.js +1 -2
- package/vscode/src/vs/editor/common/viewModel/inlineDecorations.js +7 -2
- package/vscode/src/vs/editor/common/viewModel/minimapTokensColorTracker.js +3 -1
- package/vscode/src/vs/editor/common/viewModel/modelLineProjection.js +75 -38
- package/vscode/src/vs/editor/common/viewModel/monospaceLineBreaksComputer.js +103 -46
- package/vscode/src/vs/editor/common/viewModel/overviewZoneManager.js +2 -4
- package/vscode/src/vs/editor/common/viewModel/viewModelDecorations.d.ts +1 -1
- package/vscode/src/vs/editor/common/viewModel/viewModelDecorations.js +20 -7
- package/vscode/src/vs/editor/common/viewModel/viewModelImpl.d.ts +6 -1
- package/vscode/src/vs/editor/common/viewModel/viewModelImpl.js +260 -123
- package/vscode/src/vs/editor/common/viewModel/viewModelLines.js +157 -80
- package/vscode/src/vs/editor/common/viewModel.d.ts +6 -1
- package/vscode/src/vs/editor/common/viewModelEventDispatcher.js +25 -12
- package/vscode/src/vs/editor/contrib/anchorSelect/browser/anchorSelect.js +28 -22
- package/vscode/src/vs/editor/contrib/bracketMatching/browser/bracketMatching.js +88 -62
- package/vscode/src/vs/editor/contrib/caretOperations/browser/caretOperations.js +4 -4
- package/vscode/src/vs/editor/contrib/caretOperations/browser/moveCaretCommand.js +2 -4
- package/vscode/src/vs/editor/contrib/caretOperations/browser/transpose.js +3 -5
- package/vscode/src/vs/editor/contrib/clipboard/browser/clipboard.js +173 -127
- package/vscode/src/vs/editor/contrib/codeAction/browser/codeAction.js +128 -99
- package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionCommands.d.ts +3 -3
- package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionCommands.js +112 -78
- package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionContributions.js +27 -22
- package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionController.d.ts +3 -0
- package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionController.js +150 -77
- package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionKeybindingResolver.js +26 -25
- package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionMenu.js +48 -17
- package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionModel.js +125 -65
- package/vscode/src/vs/editor/contrib/codeAction/browser/lightBulbWidget.d.ts +18 -11
- package/vscode/src/vs/editor/contrib/codeAction/browser/lightBulbWidget.js +225 -184
- package/vscode/src/vs/editor/contrib/codeAction/common/types.js +28 -29
- package/vscode/src/vs/editor/contrib/codelens/browser/codeLensCache.js +25 -17
- package/vscode/src/vs/editor/contrib/codelens/browser/codeLensCache.service.js +1 -1
- package/vscode/src/vs/editor/contrib/codelens/browser/codelens.js +23 -22
- package/vscode/src/vs/editor/contrib/codelens/browser/codelensController.js +76 -54
- package/vscode/src/vs/editor/contrib/codelens/browser/codelensWidget.js +31 -26
- package/vscode/src/vs/editor/contrib/colorPicker/browser/color.js +43 -15
- package/vscode/src/vs/editor/contrib/colorPicker/browser/colorDetector.js +45 -28
- package/vscode/src/vs/editor/contrib/colorPicker/browser/colorPickerContribution.js +40 -9
- package/vscode/src/vs/editor/contrib/colorPicker/browser/colorPickerModel.js +4 -2
- package/vscode/src/vs/editor/contrib/colorPicker/browser/colorPickerParticipantUtils.js +13 -4
- package/vscode/src/vs/editor/contrib/colorPicker/browser/colorPickerParts/colorPickerBody.js +8 -3
- package/vscode/src/vs/editor/contrib/colorPicker/browser/colorPickerParts/colorPickerCloseButton.js +8 -6
- package/vscode/src/vs/editor/contrib/colorPicker/browser/colorPickerParts/colorPickerHeader.js +32 -20
- package/vscode/src/vs/editor/contrib/colorPicker/browser/colorPickerParts/colorPickerInsertButton.js +3 -3
- package/vscode/src/vs/editor/contrib/colorPicker/browser/colorPickerParts/colorPickerSaturationBox.js +24 -13
- package/vscode/src/vs/editor/contrib/colorPicker/browser/colorPickerParts/colorPickerStrip.js +25 -14
- package/vscode/src/vs/editor/contrib/colorPicker/browser/colorPickerWidget.js +7 -3
- package/vscode/src/vs/editor/contrib/colorPicker/browser/defaultDocumentColorProvider.js +24 -11
- package/vscode/src/vs/editor/contrib/colorPicker/browser/hoverColorPicker/hoverColorPickerContribution.js +8 -4
- package/vscode/src/vs/editor/contrib/colorPicker/browser/hoverColorPicker/hoverColorPickerParticipant.js +20 -20
- package/vscode/src/vs/editor/contrib/colorPicker/browser/standaloneColorPicker/standaloneColorPickerActions.js +17 -14
- package/vscode/src/vs/editor/contrib/colorPicker/browser/standaloneColorPicker/standaloneColorPickerController.js +14 -9
- package/vscode/src/vs/editor/contrib/colorPicker/browser/standaloneColorPicker/standaloneColorPickerParticipant.js +19 -9
- package/vscode/src/vs/editor/contrib/colorPicker/browser/standaloneColorPicker/standaloneColorPickerWidget.js +59 -35
- package/vscode/src/vs/editor/contrib/comment/browser/blockCommentCommand.js +18 -16
- package/vscode/src/vs/editor/contrib/comment/browser/comment.js +25 -20
- package/vscode/src/vs/editor/contrib/comment/browser/lineCommentCommand.js +76 -26
- package/vscode/src/vs/editor/contrib/contextmenu/browser/contextmenu.js +78 -57
- package/vscode/src/vs/editor/contrib/cursorUndo/browser/cursorUndo.js +15 -9
- package/vscode/src/vs/editor/contrib/diffEditorBreadcrumbs/browser/contribution.js +27 -16
- package/vscode/src/vs/editor/contrib/dnd/browser/dnd.js +51 -47
- package/vscode/src/vs/editor/contrib/dnd/browser/dragAndDropCommand.js +8 -19
- package/vscode/src/vs/editor/contrib/documentSymbols/browser/outlineModel.js +22 -30
- package/vscode/src/vs/editor/contrib/documentSymbols/browser/outlineModel.service.js +1 -1
- package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/copyPasteContribution.js +52 -42
- package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/copyPasteController.js +172 -191
- package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/defaultProviders.js +89 -64
- package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/dropIntoEditorController.js +52 -30
- package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/edit.js +8 -10
- package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/postEditWidget.js +85 -44
- package/vscode/src/vs/editor/contrib/editorState/browser/editorState.js +6 -10
- package/vscode/src/vs/editor/contrib/editorState/browser/keybindingCancellation.js +9 -6
- package/vscode/src/vs/editor/contrib/editorState/browser/keybindingCancellation.service.js +1 -1
- package/vscode/src/vs/editor/contrib/find/browser/findController.js +246 -185
- package/vscode/src/vs/editor/contrib/find/browser/findDecorations.js +80 -63
- package/vscode/src/vs/editor/contrib/find/browser/findModel.js +126 -81
- package/vscode/src/vs/editor/contrib/find/browser/findOptionsWidget.js +24 -20
- package/vscode/src/vs/editor/contrib/find/browser/findState.js +76 -41
- package/vscode/src/vs/editor/contrib/find/browser/findWidget.css +5 -6
- package/vscode/src/vs/editor/contrib/find/browser/findWidget.js +235 -180
- package/vscode/src/vs/editor/contrib/find/browser/findWidgetSearchHistory.js +17 -10
- package/vscode/src/vs/editor/contrib/find/browser/replacePattern.js +52 -56
- package/vscode/src/vs/editor/contrib/find/browser/replaceWidgetHistory.js +17 -10
- package/vscode/src/vs/editor/contrib/floatingMenu/browser/floatingMenu.contribution.js +5 -1
- package/vscode/src/vs/editor/contrib/floatingMenu/browser/floatingMenu.css +28 -20
- package/vscode/src/vs/editor/contrib/floatingMenu/browser/floatingMenu.d.ts +9 -0
- package/vscode/src/vs/editor/contrib/floatingMenu/browser/floatingMenu.js +77 -35
- package/vscode/src/vs/editor/contrib/folding/browser/folding.js +243 -169
- package/vscode/src/vs/editor/contrib/folding/browser/foldingDecorations.js +143 -110
- package/vscode/src/vs/editor/contrib/folding/browser/foldingModel.js +62 -48
- package/vscode/src/vs/editor/contrib/folding/browser/foldingRanges.js +23 -34
- package/vscode/src/vs/editor/contrib/folding/browser/hiddenRangeModel.js +8 -5
- package/vscode/src/vs/editor/contrib/folding/browser/indentRangeProvider.js +21 -12
- package/vscode/src/vs/editor/contrib/folding/browser/syntaxRangeProvider.js +17 -10
- package/vscode/src/vs/editor/contrib/fontZoom/browser/fontZoom.js +6 -6
- package/vscode/src/vs/editor/contrib/format/browser/format.js +141 -58
- package/vscode/src/vs/editor/contrib/format/browser/formatActions.js +90 -40
- package/vscode/src/vs/editor/contrib/format/browser/formattingEdit.js +6 -7
- package/vscode/src/vs/editor/contrib/gotoError/browser/gotoError.d.ts +14 -1
- package/vscode/src/vs/editor/contrib/gotoError/browser/gotoError.js +65 -35
- package/vscode/src/vs/editor/contrib/gotoError/browser/gotoErrorWidget.js +138 -86
- package/vscode/src/vs/editor/contrib/gotoError/browser/markerNavigationService.js +13 -32
- package/vscode/src/vs/editor/contrib/gotoError/browser/markerNavigationService.service.js +1 -1
- package/vscode/src/vs/editor/contrib/gotoSymbol/browser/goToCommands.js +276 -190
- package/vscode/src/vs/editor/contrib/gotoSymbol/browser/goToSymbol.js +121 -38
- package/vscode/src/vs/editor/contrib/gotoSymbol/browser/link/clickLinkGesture.js +39 -31
- package/vscode/src/vs/editor/contrib/gotoSymbol/browser/link/goToDefinitionAtPosition.js +68 -47
- package/vscode/src/vs/editor/contrib/gotoSymbol/browser/peek/referencesController.js +95 -67
- package/vscode/src/vs/editor/contrib/gotoSymbol/browser/peek/referencesTree.js +46 -36
- package/vscode/src/vs/editor/contrib/gotoSymbol/browser/peek/referencesWidget.js +106 -79
- package/vscode/src/vs/editor/contrib/gotoSymbol/browser/referencesModel.js +39 -38
- package/vscode/src/vs/editor/contrib/gotoSymbol/browser/symbolNavigation.js +27 -25
- package/vscode/src/vs/editor/contrib/gotoSymbol/browser/symbolNavigation.service.js +1 -1
- package/vscode/src/vs/editor/contrib/gpu/browser/gpuActions.js +96 -90
- package/vscode/src/vs/editor/contrib/hover/browser/contentHoverComputer.js +3 -4
- package/vscode/src/vs/editor/contrib/hover/browser/contentHoverController.js +36 -33
- package/vscode/src/vs/editor/contrib/hover/browser/contentHoverRendered.js +78 -54
- package/vscode/src/vs/editor/contrib/hover/browser/contentHoverStatusBar.js +8 -7
- package/vscode/src/vs/editor/contrib/hover/browser/contentHoverTypes.js +1 -1
- package/vscode/src/vs/editor/contrib/hover/browser/contentHoverWidget.js +108 -58
- package/vscode/src/vs/editor/contrib/hover/browser/contentHoverWidgetWrapper.js +39 -29
- package/vscode/src/vs/editor/contrib/hover/browser/getHover.js +18 -9
- package/vscode/src/vs/editor/contrib/hover/browser/glyphHoverComputer.js +2 -2
- package/vscode/src/vs/editor/contrib/hover/browser/glyphHoverController.js +27 -18
- package/vscode/src/vs/editor/contrib/hover/browser/glyphHoverWidget.js +39 -32
- package/vscode/src/vs/editor/contrib/hover/browser/hoverAccessibleViews.js +59 -48
- package/vscode/src/vs/editor/contrib/hover/browser/hoverActionIds.js +17 -17
- package/vscode/src/vs/editor/contrib/hover/browser/hoverActions.js +58 -59
- package/vscode/src/vs/editor/contrib/hover/browser/hoverContribution.js +16 -4
- package/vscode/src/vs/editor/contrib/hover/browser/hoverCopyButton.js +5 -8
- package/vscode/src/vs/editor/contrib/hover/browser/hoverOperation.js +22 -22
- package/vscode/src/vs/editor/contrib/hover/browser/hoverUtils.d.ts +9 -0
- package/vscode/src/vs/editor/contrib/hover/browser/hoverUtils.js +6 -5
- package/vscode/src/vs/editor/contrib/hover/browser/markdownHoverParticipant.js +110 -77
- package/vscode/src/vs/editor/contrib/hover/browser/markerHoverParticipant.js +82 -56
- package/vscode/src/vs/editor/contrib/hover/browser/resizableContentWidget.js +11 -7
- package/vscode/src/vs/editor/contrib/inPlaceReplace/browser/inPlaceReplace.js +29 -20
- package/vscode/src/vs/editor/contrib/indentation/browser/indentation.js +104 -78
- package/vscode/src/vs/editor/contrib/indentation/common/indentation.js +9 -9
- package/vscode/src/vs/editor/contrib/inlayHints/browser/inlayHints.js +16 -16
- package/vscode/src/vs/editor/contrib/inlayHints/browser/inlayHintsController.js +147 -95
- package/vscode/src/vs/editor/contrib/inlayHints/browser/inlayHintsController.service.js +1 -1
- package/vscode/src/vs/editor/contrib/inlayHints/browser/inlayHintsHover.js +51 -39
- package/vscode/src/vs/editor/contrib/inlayHints/browser/inlayHintsLocations.js +34 -28
- package/vscode/src/vs/editor/contrib/inlineCompletions/browser/controller/commands.js +116 -105
- package/vscode/src/vs/editor/contrib/inlineCompletions/browser/controller/inlineCompletionContextKeys.js +48 -22
- package/vscode/src/vs/editor/contrib/inlineCompletions/browser/controller/inlineCompletionsController.js +192 -101
- package/vscode/src/vs/editor/contrib/inlineCompletions/browser/hintsWidget/hoverParticipant.js +41 -34
- package/vscode/src/vs/editor/contrib/inlineCompletions/browser/hintsWidget/inlineCompletionsHintsWidget.js +149 -93
- package/vscode/src/vs/editor/contrib/inlineCompletions/browser/inlineCompletions.contribution.js +5 -1
- package/vscode/src/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsAccessibleView.js +10 -8
- package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/animation.js +10 -5
- package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/changeRecorder.js +13 -11
- package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/computeGhostText.js +16 -17
- package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/editKind.js +81 -54
- package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/ghostText.js +22 -37
- package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/graph.js +13 -6
- package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/inlineCompletionsModel.d.ts +2 -1
- package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/inlineCompletionsModel.js +324 -211
- package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/inlineCompletionsSource.js +155 -101
- package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/inlineSuggestionItem.js +145 -71
- package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/provideInlineCompletions.js +175 -62
- package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/renameSymbolProcessor.d.ts +50 -1
- package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/renameSymbolProcessor.js +230 -77
- package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/singleTextEditHelpers.js +2 -3
- package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/suggestWidgetAdapter.js +31 -20
- package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/typingSpeed.js +31 -12
- package/vscode/src/vs/editor/contrib/inlineCompletions/browser/structuredLogger.js +12 -8
- package/vscode/src/vs/editor/contrib/inlineCompletions/browser/utils.js +12 -6
- package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/ghostText/ghostTextView.css +7 -0
- package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/ghostText/ghostTextView.d.ts +3 -0
- package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/ghostText/ghostTextView.js +143 -86
- package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/components/gutterIndicatorMenu.js +110 -93
- package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/components/gutterIndicatorView.d.ts +14 -5
- package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/components/gutterIndicatorView.js +200 -160
- package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditWithChanges.js +20 -7
- package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsNewUsers.js +65 -51
- package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsView.js +190 -122
- package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViewInterface.js +12 -3
- package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViewProducer.js +15 -13
- package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/inlineEditsCollapsedView.js +45 -43
- package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/inlineEditsCustomView.js +70 -59
- package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/inlineEditsDeletionView.js +51 -49
- package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/inlineEditsInsertionView.js +106 -85
- package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/inlineEditsLineReplacementView.js +156 -123
- package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/inlineEditsSideBySideView.js +252 -202
- package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/inlineEditsWordReplacementView.js +224 -205
- package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/jumpToView.js +74 -59
- package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/longDistanceHint/inlineEditsLongDistanceHint.js +239 -148
- package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/longDistanceHint/longDistancePreviewEditor.js +102 -73
- package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/longDistanceHint/longDistnaceWidgetPlacement.js +36 -14
- package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/originalEditorInlineDiffView.js +84 -55
- package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/theme.js +91 -58
- package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/utils/flexBoxLayout.js +10 -4
- package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/utils/utils.js +69 -48
- package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineSuggestionsView.js +59 -36
- package/vscode/src/vs/editor/contrib/inlineProgress/browser/inlineProgress.js +20 -18
- package/vscode/src/vs/editor/contrib/insertFinalNewLine/browser/insertFinalNewLine.js +4 -2
- package/vscode/src/vs/editor/contrib/lineSelection/browser/lineSelection.js +8 -4
- package/vscode/src/vs/editor/contrib/linesOperations/browser/copyLinesCommand.js +14 -10
- package/vscode/src/vs/editor/contrib/linesOperations/browser/linesOperations.js +216 -196
- package/vscode/src/vs/editor/contrib/linesOperations/browser/moveLinesCommand.js +79 -50
- package/vscode/src/vs/editor/contrib/linesOperations/browser/sortLinesCommand.js +4 -2
- package/vscode/src/vs/editor/contrib/linkedEditing/browser/linkedEditing.js +62 -40
- package/vscode/src/vs/editor/contrib/links/browser/getLinks.js +14 -12
- package/vscode/src/vs/editor/contrib/links/browser/links.js +85 -76
- package/vscode/src/vs/editor/contrib/message/browser/messageController.js +77 -49
- package/vscode/src/vs/editor/contrib/middleScroll/browser/middleScrollController.js +16 -14
- package/vscode/src/vs/editor/contrib/multicursor/browser/multicursor.js +178 -104
- package/vscode/src/vs/editor/contrib/parameterHints/browser/parameterHints.js +29 -19
- package/vscode/src/vs/editor/contrib/parameterHints/browser/parameterHintsModel.js +47 -33
- package/vscode/src/vs/editor/contrib/parameterHints/browser/parameterHintsWidget.js +83 -76
- package/vscode/src/vs/editor/contrib/parameterHints/browser/provideSignatureHelp.js +17 -13
- package/vscode/src/vs/editor/contrib/peekView/browser/peekView.js +145 -59
- package/vscode/src/vs/editor/contrib/peekView/browser/peekView.service.js +1 -1
- package/vscode/src/vs/editor/contrib/placeholderText/browser/placeholderText.contribution.js +6 -2
- package/vscode/src/vs/editor/contrib/quickAccess/browser/editorNavigationQuickAccess.js +33 -24
- package/vscode/src/vs/editor/contrib/quickAccess/browser/gotoLineQuickAccess.js +69 -37
- package/vscode/src/vs/editor/contrib/quickAccess/browser/gotoSymbolQuickAccess.js +113 -85
- package/vscode/src/vs/editor/contrib/readOnlyMessage/browser/contribution.js +14 -7
- package/vscode/src/vs/editor/contrib/rename/browser/rename.js +137 -105
- package/vscode/src/vs/editor/contrib/rename/browser/renameWidget.css +1 -1
- package/vscode/src/vs/editor/contrib/rename/browser/renameWidget.js +218 -155
- package/vscode/src/vs/editor/contrib/sectionHeaders/browser/sectionHeaders.js +25 -21
- package/vscode/src/vs/editor/contrib/semanticTokens/browser/documentSemanticTokens.js +60 -39
- package/vscode/src/vs/editor/contrib/semanticTokens/browser/viewportSemanticTokens.js +37 -17
- package/vscode/src/vs/editor/contrib/semanticTokens/common/getSemanticTokens.js +66 -42
- package/vscode/src/vs/editor/contrib/smartSelect/browser/bracketSelections.js +32 -14
- package/vscode/src/vs/editor/contrib/smartSelect/browser/smartSelect.js +59 -48
- package/vscode/src/vs/editor/contrib/smartSelect/browser/wordSelections.js +19 -12
- package/vscode/src/vs/editor/contrib/snippet/browser/snippetController2.js +78 -41
- package/vscode/src/vs/editor/contrib/snippet/browser/snippetParser.js +168 -214
- package/vscode/src/vs/editor/contrib/snippet/browser/snippetSession.js +211 -95
- package/vscode/src/vs/editor/contrib/snippet/browser/snippetVariables.js +127 -131
- package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollActions.js +34 -30
- package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollController.js +129 -103
- package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollModelProvider.js +59 -50
- package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollProvider.js +22 -18
- package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollWidget.js +130 -82
- package/vscode/src/vs/editor/contrib/suggest/browser/completionModel.js +54 -44
- package/vscode/src/vs/editor/contrib/suggest/browser/suggest.js +85 -61
- package/vscode/src/vs/editor/contrib/suggest/browser/suggestAlternatives.js +20 -9
- package/vscode/src/vs/editor/contrib/suggest/browser/suggestCommitCharacters.js +4 -1
- package/vscode/src/vs/editor/contrib/suggest/browser/suggestController.js +267 -181
- package/vscode/src/vs/editor/contrib/suggest/browser/suggestInlineCompletions.js +60 -33
- package/vscode/src/vs/editor/contrib/suggest/browser/suggestMemory.js +48 -38
- package/vscode/src/vs/editor/contrib/suggest/browser/suggestMemory.service.js +1 -1
- package/vscode/src/vs/editor/contrib/suggest/browser/suggestModel.js +113 -72
- package/vscode/src/vs/editor/contrib/suggest/browser/suggestOvertypingCapturer.js +7 -2
- package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidget.js +305 -227
- package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidgetDetails.js +128 -73
- package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidgetRenderer.js +91 -68
- package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidgetStatus.js +24 -17
- package/vscode/src/vs/editor/contrib/suggest/browser/wordContextKey.js +18 -12
- package/vscode/src/vs/editor/contrib/suggest/browser/wordDistance.js +9 -5
- package/vscode/src/vs/editor/contrib/symbolIcons/browser/symbolIcons.js +113 -113
- package/vscode/src/vs/editor/contrib/toggleTabFocusMode/browser/toggleTabFocusMode.js +12 -9
- package/vscode/src/vs/editor/contrib/tokenization/browser/tokenization.js +2 -2
- package/vscode/src/vs/editor/contrib/unicodeHighlighter/browser/bannerController.js +25 -22
- package/vscode/src/vs/editor/contrib/unicodeHighlighter/browser/unicodeHighlighter.js +181 -138
- package/vscode/src/vs/editor/contrib/unusualLineTerminators/browser/unusualLineTerminators.js +20 -18
- package/vscode/src/vs/editor/contrib/wordHighlighter/browser/highlightDecorations.js +74 -41
- package/vscode/src/vs/editor/contrib/wordHighlighter/browser/textualHighlightProvider.js +10 -6
- package/vscode/src/vs/editor/contrib/wordHighlighter/browser/wordHighlighter.js +165 -118
- package/vscode/src/vs/editor/contrib/wordOperations/browser/wordOperations.js +129 -64
- package/vscode/src/vs/editor/contrib/wordPartOperations/browser/wordPartOperations.js +26 -14
- package/vscode/src/vs/editor/contrib/zoneWidget/browser/zoneWidget.js +80 -52
- package/vscode/src/vs/editor/editor.worker.start.js +3 -3
- package/vscode/src/vs/editor/standalone/browser/iPadShowKeyboard/iPadShowKeyboard.js +16 -9
- package/vscode/src/vs/editor/standalone/browser/quickInput/standaloneQuickInputService.js +101 -43
- package/vscode/src/vs/editor/standalone/browser/services/standaloneWebWorkerService.d.ts +1 -0
- package/vscode/src/vs/editor/standalone/browser/services/standaloneWebWorkerService.js +11 -6
- package/vscode/src/vs/editor/standalone/browser/standaloneCodeEditor.js +125 -83
- package/vscode/src/vs/editor/standalone/browser/standaloneCodeEditorService.js +4 -8
- package/vscode/src/vs/editor/standalone/browser/standaloneLayoutService.js +13 -9
- package/vscode/src/vs/editor/standalone/browser/standaloneServices.js +340 -185
- package/vscode/src/vs/editor/standalone/browser/standaloneThemeService.js +46 -43
- package/vscode/src/vs/editor/standalone/browser/standaloneTreeSitterLibraryService.d.ts +1 -1
- package/vscode/src/vs/editor/standalone/browser/standaloneTreeSitterLibraryService.js +2 -2
- package/vscode/src/vs/editor/standalone/common/standaloneTheme.service.js +1 -1
- package/vscode/src/vs/nls.d.ts +2 -1
- package/vscode/src/vs/nls.js +16 -14
- package/vscode/src/vs/platform/accessibility/browser/accessibilityService.js +16 -20
- package/vscode/src/vs/platform/accessibility/browser/accessibleView.d.ts +1 -0
- package/vscode/src/vs/platform/accessibility/browser/accessibleView.js +1 -0
- package/vscode/src/vs/platform/accessibility/browser/accessibleView.service.js +1 -1
- package/vscode/src/vs/platform/accessibility/common/accessibility.js +5 -6
- package/vscode/src/vs/platform/accessibility/common/accessibility.service.js +1 -1
- package/vscode/src/vs/platform/accessibilitySignal/browser/accessibilitySignalService.js +572 -347
- package/vscode/src/vs/platform/accessibilitySignal/browser/accessibilitySignalService.service.js +1 -1
- package/vscode/src/vs/platform/accessibilitySignal/browser/progressAccessibilitySignalScheduler.js +1 -3
- package/vscode/src/vs/platform/action/common/actionCommonCategories.js +6 -6
- package/vscode/src/vs/platform/actionWidget/browser/actionList.d.ts +26 -1
- package/vscode/src/vs/platform/actionWidget/browser/actionList.js +182 -102
- package/vscode/src/vs/platform/actionWidget/browser/actionWidget.css +19 -5
- package/vscode/src/vs/platform/actionWidget/browser/actionWidget.js +65 -40
- package/vscode/src/vs/platform/actionWidget/browser/actionWidget.service.js +1 -1
- package/vscode/src/vs/platform/actions/browser/actionViewItemService.service.js +1 -1
- package/vscode/src/vs/platform/actions/browser/dropdownWithPrimaryActionViewItem.js +45 -45
- package/vscode/src/vs/platform/actions/browser/floatingMenu.js +15 -17
- package/vscode/src/vs/platform/actions/browser/menuEntryActionViewItem.js +167 -117
- package/vscode/src/vs/platform/actions/browser/toolbar.js +79 -46
- package/vscode/src/vs/platform/actions/common/actions.d.ts +7 -0
- package/vscode/src/vs/platform/actions/common/actions.js +763 -254
- package/vscode/src/vs/platform/actions/common/actions.service.js +1 -1
- package/vscode/src/vs/platform/actions/common/menuResetAction.js +3 -3
- package/vscode/src/vs/platform/actions/common/menuService.js +132 -94
- package/vscode/src/vs/platform/clipboard/browser/clipboardService.js +77 -64
- package/vscode/src/vs/platform/clipboard/common/clipboardService.service.js +1 -1
- package/vscode/src/vs/platform/commands/common/commands.js +15 -7
- package/vscode/src/vs/platform/commands/common/commands.service.js +1 -1
- package/vscode/src/vs/platform/configuration/common/configuration.js +63 -70
- package/vscode/src/vs/platform/configuration/common/configuration.service.js +1 -1
- package/vscode/src/vs/platform/configuration/common/configurationModels.js +287 -100
- package/vscode/src/vs/platform/configuration/common/configurationRegistry.d.ts +1 -0
- package/vscode/src/vs/platform/configuration/common/configurationRegistry.js +254 -154
- package/vscode/src/vs/platform/configuration/common/configurations.js +54 -36
- package/vscode/src/vs/platform/contextkey/browser/contextKeyService.js +68 -48
- package/vscode/src/vs/platform/contextkey/common/contextkey.js +234 -197
- package/vscode/src/vs/platform/contextkey/common/contextkey.service.js +1 -1
- package/vscode/src/vs/platform/contextkey/common/contextkeys.js +11 -11
- package/vscode/src/vs/platform/contextkey/common/scanner.js +171 -143
- package/vscode/src/vs/platform/contextview/browser/contextMenuHandler.js +36 -18
- package/vscode/src/vs/platform/contextview/browser/contextMenuService.js +17 -14
- package/vscode/src/vs/platform/contextview/browser/contextView.service.js +2 -2
- package/vscode/src/vs/platform/contextview/browser/contextViewService.js +4 -9
- package/vscode/src/vs/platform/dataChannel/browser/forwardingTelemetryService.js +7 -7
- package/vscode/src/vs/platform/dataChannel/common/dataChannel.service.js +1 -1
- package/vscode/src/vs/platform/debug/common/extensionHostDebug.d.ts +1 -0
- package/vscode/src/vs/platform/debug/common/extensionHostDebug.service.js +1 -1
- package/vscode/src/vs/platform/defaultAccount/common/defaultAccount.d.ts +14 -0
- package/vscode/src/vs/platform/defaultAccount/common/defaultAccount.service.d.ts +11 -2
- package/vscode/src/vs/platform/defaultAccount/common/defaultAccount.service.js +1 -1
- package/vscode/src/vs/platform/diagnostics/common/diagnostics.d.ts +5 -0
- package/vscode/src/vs/platform/dialogs/browser/dialog.js +20 -15
- package/vscode/src/vs/platform/dialogs/common/dialogs.js +39 -39
- package/vscode/src/vs/platform/dialogs/common/dialogs.service.js +2 -2
- package/vscode/src/vs/platform/dnd/browser/dnd.js +56 -47
- package/vscode/src/vs/platform/download/common/download.service.js +1 -1
- package/vscode/src/vs/platform/encryption/common/encryptionService.service.js +1 -1
- package/vscode/src/vs/platform/environment/common/environment.service.d.ts +2 -0
- package/vscode/src/vs/platform/environment/common/environment.service.js +1 -1
- package/vscode/src/vs/platform/environment/common/environmentService.d.ts +2 -0
- package/vscode/src/vs/platform/extensionManagement/common/extensionEnablementService.js +37 -17
- package/vscode/src/vs/platform/extensionManagement/common/extensionGalleryManifest.d.ts +0 -1
- package/vscode/src/vs/platform/extensionManagement/common/extensionGalleryManifest.js +0 -1
- package/vscode/src/vs/platform/extensionManagement/common/extensionGalleryManifest.service.js +1 -1
- package/vscode/src/vs/platform/extensionManagement/common/extensionManagement.d.ts +1 -0
- package/vscode/src/vs/platform/extensionManagement/common/extensionManagement.js +160 -151
- package/vscode/src/vs/platform/extensionManagement/common/extensionManagement.service.js +5 -5
- package/vscode/src/vs/platform/extensionManagement/common/extensionManagementUtil.js +26 -19
- package/vscode/src/vs/platform/extensionManagement/common/extensionNls.js +11 -15
- package/vscode/src/vs/platform/extensionManagement/common/extensionStorage.js +57 -32
- package/vscode/src/vs/platform/extensionManagement/common/extensionStorage.service.js +1 -1
- package/vscode/src/vs/platform/extensionManagement/common/extensionsProfileScannerService.js +127 -78
- package/vscode/src/vs/platform/extensionManagement/common/extensionsProfileScannerService.service.js +1 -1
- package/vscode/src/vs/platform/extensionManagement/common/extensionsScannerService.js +443 -243
- package/vscode/src/vs/platform/extensionManagement/common/extensionsScannerService.service.js +1 -1
- package/vscode/src/vs/platform/extensionManagement/common/implicitActivationEvents.js +3 -4
- package/vscode/src/vs/platform/extensionManagement/common/unsupportedExtensionsMigration.d.ts +2 -1
- package/vscode/src/vs/platform/extensionManagement/common/unsupportedExtensionsMigration.js +91 -28
- package/vscode/src/vs/platform/extensionRecommendations/common/extensionRecommendations.service.js +1 -1
- package/vscode/src/vs/platform/extensionResourceLoader/common/extensionResourceLoader.service.js +1 -1
- package/vscode/src/vs/platform/extensions/common/extensionValidator.js +99 -69
- package/vscode/src/vs/platform/extensions/common/extensions.d.ts +12 -5
- package/vscode/src/vs/platform/extensions/common/extensions.js +47 -39
- package/vscode/src/vs/platform/extensions/common/extensions.service.js +1 -1
- package/vscode/src/vs/platform/extensions/common/extensionsApiProposals.d.ts +26 -6
- package/vscode/src/vs/platform/extensions/common/extensionsApiProposals.js +178 -158
- package/vscode/src/vs/platform/externalServices/common/serviceMachineId.js +9 -7
- package/vscode/src/vs/platform/files/browser/htmlFileSystemProvider.js +145 -84
- package/vscode/src/vs/platform/files/common/files.d.ts +21 -1
- package/vscode/src/vs/platform/files/common/files.js +108 -79
- package/vscode/src/vs/platform/files/common/files.service.d.ts +1 -0
- package/vscode/src/vs/platform/files/common/files.service.js +1 -1
- package/vscode/src/vs/platform/files/common/inMemoryFilesystemProvider.js +121 -39
- package/vscode/src/vs/platform/files/common/watcher.js +18 -9
- package/vscode/src/vs/platform/history/browser/contextScopedHistoryWidget.js +27 -23
- package/vscode/src/vs/platform/hover/browser/hover.js +17 -18
- package/vscode/src/vs/platform/hover/browser/hover.service.js +1 -1
- package/vscode/src/vs/platform/hover/browser/hoverService.d.ts +27 -5
- package/vscode/src/vs/platform/hover/browser/hoverService.js +251 -113
- package/vscode/src/vs/platform/hover/browser/hoverWidget.d.ts +8 -0
- package/vscode/src/vs/platform/hover/browser/hoverWidget.js +180 -131
- package/vscode/src/vs/platform/hover/browser/updatableHoverWidget.js +9 -13
- package/vscode/src/vs/platform/imageResize/common/imageResizeService.service.js +1 -1
- package/vscode/src/vs/platform/instantiation/common/extensions.js +1 -1
- package/vscode/src/vs/platform/instantiation/common/graph.js +3 -3
- package/vscode/src/vs/platform/instantiation/common/instantiation.js +15 -10
- package/vscode/src/vs/platform/instantiation/common/instantiationService.js +100 -58
- package/vscode/src/vs/platform/jsonschemas/common/jsonContributionRegistry.js +3 -3
- package/vscode/src/vs/platform/keybinding/common/abstractKeybindingService.d.ts +1 -0
- package/vscode/src/vs/platform/keybinding/common/abstractKeybindingService.js +132 -62
- package/vscode/src/vs/platform/keybinding/common/baseResolvedKeybinding.js +16 -8
- package/vscode/src/vs/platform/keybinding/common/keybinding.service.d.ts +5 -0
- package/vscode/src/vs/platform/keybinding/common/keybinding.service.js +1 -1
- package/vscode/src/vs/platform/keybinding/common/keybindingResolver.js +38 -26
- package/vscode/src/vs/platform/keybinding/common/keybindingsRegistry.js +10 -8
- package/vscode/src/vs/platform/keybinding/common/usLayoutResolvedKeybinding.js +118 -69
- package/vscode/src/vs/platform/keyboardLayout/common/keyboardLayout.js +12 -12
- package/vscode/src/vs/platform/keyboardLayout/common/keyboardLayout.service.js +1 -1
- package/vscode/src/vs/platform/label/common/label.service.js +1 -1
- package/vscode/src/vs/platform/languagePacks/common/languagePacks.js +11 -16
- package/vscode/src/vs/platform/languagePacks/common/languagePacks.service.js +1 -1
- package/vscode/src/vs/platform/languagePacks/common/localizedStrings.js +3 -3
- package/vscode/src/vs/platform/layout/browser/layoutService.service.js +1 -1
- package/vscode/src/vs/platform/layout/browser/zIndexRegistry.js +3 -3
- package/vscode/src/vs/platform/list/browser/listService.js +579 -357
- package/vscode/src/vs/platform/list/browser/listService.service.js +1 -1
- package/vscode/src/vs/platform/log/browser/log.js +15 -5
- package/vscode/src/vs/platform/log/common/bufferLog.js +9 -4
- package/vscode/src/vs/platform/log/common/log.js +136 -96
- package/vscode/src/vs/platform/log/common/log.service.js +2 -2
- package/vscode/src/vs/platform/markdown/browser/markdownRenderer.js +7 -8
- package/vscode/src/vs/platform/markdown/browser/markdownRenderer.service.js +1 -1
- package/vscode/src/vs/platform/markers/common/markerService.js +50 -32
- package/vscode/src/vs/platform/markers/common/markers.js +44 -45
- package/vscode/src/vs/platform/markers/common/markers.service.js +1 -1
- package/vscode/src/vs/platform/mcp/common/mcpGalleryManifest.service.js +1 -1
- package/vscode/src/vs/platform/mcp/common/mcpManagement.d.ts +1 -0
- package/vscode/src/vs/platform/mcp/common/mcpManagement.js +2 -1
- package/vscode/src/vs/platform/mcp/common/mcpManagement.service.js +3 -3
- package/vscode/src/vs/platform/mcp/common/mcpResourceScannerService.service.js +1 -1
- package/vscode/src/vs/platform/native/common/native.d.ts +10 -0
- package/vscode/src/vs/platform/notification/common/notification.js +15 -15
- package/vscode/src/vs/platform/notification/common/notification.service.js +1 -1
- package/vscode/src/vs/platform/observable/common/observableMemento.js +4 -8
- package/vscode/src/vs/platform/observable/common/platformObservableUtils.js +12 -3
- package/vscode/src/vs/platform/observable/common/wrapInHotClass.js +1 -1
- package/vscode/src/vs/platform/opener/browser/link.js +26 -32
- package/vscode/src/vs/platform/opener/common/opener.service.js +1 -1
- package/vscode/src/vs/platform/policy/common/policy.d.ts +2 -2
- package/vscode/src/vs/platform/policy/common/policy.js +24 -6
- package/vscode/src/vs/platform/policy/common/policy.service.js +1 -1
- package/vscode/src/vs/platform/product/common/product.js +3 -3
- package/vscode/src/vs/platform/product/common/productService.service.js +1 -1
- package/vscode/src/vs/platform/progress/common/progress.js +17 -12
- package/vscode/src/vs/platform/progress/common/progress.service.js +2 -2
- package/vscode/src/vs/platform/quickinput/browser/media/quickInput.css +3 -11
- package/vscode/src/vs/platform/quickinput/browser/pickerQuickAccess.js +79 -76
- package/vscode/src/vs/platform/quickinput/browser/quickAccess.d.ts +3 -1
- package/vscode/src/vs/platform/quickinput/browser/quickAccess.js +20 -17
- package/vscode/src/vs/platform/quickinput/browser/quickInput.js +163 -141
- package/vscode/src/vs/platform/quickinput/browser/quickInputActions.js +120 -49
- package/vscode/src/vs/platform/quickinput/browser/quickInputBox.js +22 -17
- package/vscode/src/vs/platform/quickinput/browser/quickInputController.js +354 -257
- package/vscode/src/vs/platform/quickinput/browser/quickInputList.js +297 -272
- package/vscode/src/vs/platform/quickinput/browser/quickInputService.js +33 -21
- package/vscode/src/vs/platform/quickinput/browser/quickInputUtils.js +40 -33
- package/vscode/src/vs/platform/quickinput/browser/quickPickPin.js +16 -14
- package/vscode/src/vs/platform/quickinput/browser/tree/quickInputTreeAccessibilityProvider.js +8 -9
- package/vscode/src/vs/platform/quickinput/browser/tree/quickInputTreeController.js +67 -60
- package/vscode/src/vs/platform/quickinput/browser/tree/quickInputTreeRenderer.js +58 -33
- package/vscode/src/vs/platform/quickinput/browser/tree/quickTree.js +77 -37
- package/vscode/src/vs/platform/quickinput/common/quickAccess.d.ts +11 -4
- package/vscode/src/vs/platform/quickinput/common/quickAccess.js +14 -9
- package/vscode/src/vs/platform/quickinput/common/quickInput.js +9 -6
- package/vscode/src/vs/platform/quickinput/common/quickInput.service.js +1 -1
- package/vscode/src/vs/platform/registry/common/platform.js +2 -2
- package/vscode/src/vs/platform/remote/common/remoteAgentConnection.js +268 -131
- package/vscode/src/vs/platform/remote/common/remoteAgentEnvironment.d.ts +1 -0
- package/vscode/src/vs/platform/remote/common/remoteAuthorityResolver.service.js +1 -1
- package/vscode/src/vs/platform/remote/common/remoteExtensionsScanner.service.js +1 -1
- package/vscode/src/vs/platform/remote/common/remoteHosts.js +26 -8
- package/vscode/src/vs/platform/remote/common/remoteSocketFactoryService.service.js +1 -1
- package/vscode/src/vs/platform/request/common/request.js +188 -195
- package/vscode/src/vs/platform/request/common/request.service.js +1 -1
- package/vscode/src/vs/platform/secrets/common/secrets.service.js +1 -1
- package/vscode/src/vs/platform/storage/common/storage.js +148 -89
- package/vscode/src/vs/platform/storage/common/storage.service.js +1 -1
- package/vscode/src/vs/platform/telemetry/common/commonProperties.js +1 -1
- package/vscode/src/vs/platform/telemetry/common/telemetry.service.js +2 -2
- package/vscode/src/vs/platform/telemetry/common/telemetryUtils.js +76 -63
- package/vscode/src/vs/platform/terminal/common/capabilities/bufferMarkCapability.js +7 -3
- package/vscode/src/vs/platform/terminal/common/capabilities/commandDetection/promptInputModel.d.ts +2 -1
- package/vscode/src/vs/platform/terminal/common/capabilities/commandDetection/promptInputModel.js +94 -84
- package/vscode/src/vs/platform/terminal/common/capabilities/commandDetection/terminalCommand.js +119 -54
- package/vscode/src/vs/platform/terminal/common/capabilities/commandDetectionCapability.js +219 -105
- package/vscode/src/vs/platform/terminal/common/capabilities/cwdDetectionCapability.js +1 -1
- package/vscode/src/vs/platform/terminal/common/capabilities/partialCommandDetectionCapability.js +8 -4
- package/vscode/src/vs/platform/terminal/common/capabilities/promptTypeDetectionCapability.js +3 -1
- package/vscode/src/vs/platform/terminal/common/capabilities/shellEnvDetectionCapability.js +5 -3
- package/vscode/src/vs/platform/terminal/common/capabilities/terminalCapabilityStore.js +108 -67
- package/vscode/src/vs/platform/terminal/common/environmentVariableShared.d.ts +1 -1
- package/vscode/src/vs/platform/terminal/common/environmentVariableShared.js +9 -2
- package/vscode/src/vs/platform/terminal/common/terminal.d.ts +6 -5
- package/vscode/src/vs/platform/terminal/common/terminal.js +29 -23
- package/vscode/src/vs/platform/terminal/common/terminal.service.js +1 -1
- package/vscode/src/vs/platform/terminal/common/terminalDataBuffering.js +2 -2
- package/vscode/src/vs/platform/terminal/common/terminalPlatformConfiguration.js +212 -231
- package/vscode/src/vs/platform/terminal/common/terminalProfiles.js +10 -16
- package/vscode/src/vs/platform/terminal/common/xterm/shellIntegrationAddon.js +157 -100
- package/vscode/src/vs/platform/theme/browser/defaultStyles.d.ts +1 -1
- package/vscode/src/vs/platform/theme/browser/defaultStyles.js +12 -6
- package/vscode/src/vs/platform/theme/browser/iconsStyleSheet.js +26 -14
- package/vscode/src/vs/platform/theme/common/colorUtils.js +104 -56
- package/vscode/src/vs/platform/theme/common/colors/baseColors.js +130 -45
- package/vscode/src/vs/platform/theme/common/colors/chartsColors.js +18 -8
- package/vscode/src/vs/platform/theme/common/colors/editorColors.js +484 -164
- package/vscode/src/vs/platform/theme/common/colors/inputColors.d.ts +1 -0
- package/vscode/src/vs/platform/theme/common/colors/inputColors.js +226 -60
- package/vscode/src/vs/platform/theme/common/colors/listColors.js +203 -90
- package/vscode/src/vs/platform/theme/common/colors/menuColors.js +22 -7
- package/vscode/src/vs/platform/theme/common/colors/minimapColors.js +33 -13
- package/vscode/src/vs/platform/theme/common/colors/miscColors.js +92 -22
- package/vscode/src/vs/platform/theme/common/colors/quickpickColors.js +43 -15
- package/vscode/src/vs/platform/theme/common/colors/searchColors.js +18 -3
- package/vscode/src/vs/platform/theme/common/iconRegistry.js +76 -36
- package/vscode/src/vs/platform/theme/common/themeService.d.ts +2 -2
- package/vscode/src/vs/platform/theme/common/themeService.js +16 -9
- package/vscode/src/vs/platform/theme/common/themeService.service.js +1 -1
- package/vscode/src/vs/platform/theme/common/tokenClassificationRegistry.js +193 -158
- package/vscode/src/vs/platform/tunnel/common/tunnel.js +103 -46
- package/vscode/src/vs/platform/tunnel/common/tunnel.service.js +1 -1
- package/vscode/src/vs/platform/undoRedo/common/undoRedo.js +13 -5
- package/vscode/src/vs/platform/undoRedo/common/undoRedo.service.js +1 -1
- package/vscode/src/vs/platform/undoRedo/common/undoRedoService.js +170 -116
- package/vscode/src/vs/platform/update/common/update.d.ts +23 -8
- package/vscode/src/vs/platform/update/common/update.js +5 -3
- package/vscode/src/vs/platform/update/common/update.service.d.ts +1 -0
- package/vscode/src/vs/platform/update/common/update.service.js +1 -1
- package/vscode/src/vs/platform/uriIdentity/common/uriIdentity.service.js +1 -1
- package/vscode/src/vs/platform/uriIdentity/common/uriIdentityService.js +16 -10
- package/vscode/src/vs/platform/url/common/trustedDomains.js +8 -8
- package/vscode/src/vs/platform/url/common/url.service.js +1 -1
- package/vscode/src/vs/platform/url/common/urlGlob.js +60 -28
- package/vscode/src/vs/platform/userDataProfile/common/userDataProfile.d.ts +18 -5
- package/vscode/src/vs/platform/userDataProfile/common/userDataProfile.js +231 -113
- package/vscode/src/vs/platform/userDataProfile/common/userDataProfile.service.js +1 -1
- package/vscode/src/vs/platform/userDataProfile/common/userDataProfileStorageService.service.js +1 -1
- package/vscode/src/vs/platform/userDataSync/common/abstractJsonSynchronizer.js +151 -70
- package/vscode/src/vs/platform/userDataSync/common/abstractSynchronizer.js +441 -204
- package/vscode/src/vs/platform/userDataSync/common/extensionsMerge.js +116 -35
- package/vscode/src/vs/platform/userDataSync/common/extensionsSync.js +380 -169
- package/vscode/src/vs/platform/userDataSync/common/globalStateMerge.js +79 -14
- package/vscode/src/vs/platform/userDataSync/common/globalStateSync.js +279 -134
- package/vscode/src/vs/platform/userDataSync/common/ignoredExtensions.service.js +1 -1
- package/vscode/src/vs/platform/userDataSync/common/keybindingsMerge.js +182 -39
- package/vscode/src/vs/platform/userDataSync/common/keybindingsSync.js +169 -110
- package/vscode/src/vs/platform/userDataSync/common/settingsMerge.js +194 -84
- package/vscode/src/vs/platform/userDataSync/common/settingsSync.js +166 -95
- package/vscode/src/vs/platform/userDataSync/common/snippetsMerge.js +53 -19
- package/vscode/src/vs/platform/userDataSync/common/snippetsSync.js +291 -125
- package/vscode/src/vs/platform/userDataSync/common/tasksSync.js +43 -29
- package/vscode/src/vs/platform/userDataSync/common/userDataSync.js +64 -58
- package/vscode/src/vs/platform/userDataSync/common/userDataSync.service.js +9 -9
- package/vscode/src/vs/platform/userDataSync/common/userDataSyncAccount.service.js +1 -1
- package/vscode/src/vs/platform/userDataSync/common/userDataSyncMachines.js +75 -39
- package/vscode/src/vs/platform/userDataSync/common/userDataSyncMachines.service.js +1 -1
- package/vscode/src/vs/platform/userDataSync/common/userDataSyncStoreService.js +296 -165
- package/vscode/src/vs/platform/webContentExtractor/common/webContentExtractor.js +2 -2
- package/vscode/src/vs/platform/webContentExtractor/common/webContentExtractor.service.js +2 -2
- package/vscode/src/vs/platform/webWorker/browser/webWorkerDescriptor.d.ts +1 -1
- package/vscode/src/vs/platform/webWorker/browser/webWorkerService.service.js +1 -1
- package/vscode/src/vs/platform/webWorker/browser/webWorkerServiceImpl.d.ts +1 -0
- package/vscode/src/vs/platform/webWorker/browser/webWorkerServiceImpl.js +68 -53
- package/vscode/src/vs/platform/window/common/window.d.ts +1 -0
- package/vscode/src/vs/platform/workspace/common/canonicalUri.service.js +1 -1
- package/vscode/src/vs/platform/workspace/common/editSessions.service.js +1 -1
- package/vscode/src/vs/platform/workspace/common/workspace.d.ts +7 -1
- package/vscode/src/vs/platform/workspace/common/workspace.js +59 -33
- package/vscode/src/vs/platform/workspace/common/workspace.service.js +1 -1
- package/vscode/src/vs/platform/workspace/common/workspaceTrust.d.ts +4 -0
- package/vscode/src/vs/platform/workspace/common/workspaceTrust.service.d.ts +4 -1
- package/vscode/src/vs/platform/workspace/common/workspaceTrust.service.js +3 -3
- package/vscode/src/vs/platform/workspaces/common/workspaces.js +87 -44
- package/vscode/src/vs/platform/workspaces/common/workspaces.service.js +1 -1
- package/vscode/src/vs/workbench/api/browser/statusBarExtensionPoint.d.ts +4 -0
- package/vscode/src/vs/workbench/api/browser/statusBarExtensionPoint.js +163 -0
- package/vscode/src/vs/workbench/api/browser/statusBarService.js +60 -26
- package/vscode/src/vs/workbench/api/common/cache.js +3 -1
- package/vscode/src/vs/workbench/api/common/extHost.api.impl.js +402 -233
- package/vscode/src/vs/workbench/api/common/extHost.protocol.d.ts +74 -29
- package/vscode/src/vs/workbench/api/common/extHost.protocol.js +177 -175
- package/vscode/src/vs/workbench/api/common/extHostAiRelatedInformation.js +2 -2
- package/vscode/src/vs/workbench/api/common/extHostAiSettingsSearch.js +3 -3
- package/vscode/src/vs/workbench/api/common/extHostApiCommands.js +725 -733
- package/vscode/src/vs/workbench/api/common/extHostApiDeprecationService.js +4 -7
- package/vscode/src/vs/workbench/api/common/extHostAuthentication.js +264 -192
- package/vscode/src/vs/workbench/api/common/extHostBulkEdits.js +1 -3
- package/vscode/src/vs/workbench/api/common/extHostChatAgents2.d.ts +16 -11
- package/vscode/src/vs/workbench/api/common/extHostChatAgents2.js +399 -225
- package/vscode/src/vs/workbench/api/common/extHostChatContext.d.ts +23 -8
- package/vscode/src/vs/workbench/api/common/extHostChatContext.js +211 -80
- package/vscode/src/vs/workbench/api/common/extHostChatOutputRenderer.js +13 -3
- package/vscode/src/vs/workbench/api/common/extHostChatSessions.d.ts +12 -3
- package/vscode/src/vs/workbench/api/common/extHostChatSessions.js +418 -93
- package/vscode/src/vs/workbench/api/common/extHostChatStatus.js +5 -5
- package/vscode/src/vs/workbench/api/common/extHostCodeInsets.js +18 -5
- package/vscode/src/vs/workbench/api/common/extHostCodeMapper.js +3 -1
- package/vscode/src/vs/workbench/api/common/extHostCommands.js +149 -135
- package/vscode/src/vs/workbench/api/common/extHostComments.js +172 -99
- package/vscode/src/vs/workbench/api/common/extHostConfiguration.js +82 -60
- package/vscode/src/vs/workbench/api/common/extHostConsoleForwarder.js +17 -20
- package/vscode/src/vs/workbench/api/common/extHostCustomEditors.js +69 -32
- package/vscode/src/vs/workbench/api/common/extHostDataChannels.js +5 -3
- package/vscode/src/vs/workbench/api/common/extHostDebugService.js +197 -149
- package/vscode/src/vs/workbench/api/common/extHostDecorations.js +42 -22
- package/vscode/src/vs/workbench/api/common/extHostDiagnostics.js +96 -45
- package/vscode/src/vs/workbench/api/common/extHostDocumentContentProviders.js +14 -11
- package/vscode/src/vs/workbench/api/common/extHostDocumentData.js +92 -48
- package/vscode/src/vs/workbench/api/common/extHostDocumentSaveParticipant.js +49 -21
- package/vscode/src/vs/workbench/api/common/extHostDocuments.js +16 -18
- package/vscode/src/vs/workbench/api/common/extHostDocumentsAndEditors.js +4 -8
- package/vscode/src/vs/workbench/api/common/extHostEditorTabs.js +85 -82
- package/vscode/src/vs/workbench/api/common/extHostEmbedding.js +6 -3
- package/vscode/src/vs/workbench/api/common/extHostEmbeddingVector.js +3 -3
- package/vscode/src/vs/workbench/api/common/extHostExtensionActivator.js +38 -21
- package/vscode/src/vs/workbench/api/common/extHostExtensionService.js +304 -188
- package/vscode/src/vs/workbench/api/common/extHostFileSystem.js +72 -51
- package/vscode/src/vs/workbench/api/common/extHostFileSystemConsumer.js +82 -60
- package/vscode/src/vs/workbench/api/common/extHostFileSystemEventService.js +106 -41
- package/vscode/src/vs/workbench/api/common/extHostFileSystemInfo.js +2 -3
- package/vscode/src/vs/workbench/api/common/extHostInitDataService.js +1 -1
- package/vscode/src/vs/workbench/api/common/extHostInteractive.js +36 -24
- package/vscode/src/vs/workbench/api/common/extHostLanguageFeatures.js +908 -333
- package/vscode/src/vs/workbench/api/common/extHostLanguageModelTools.d.ts +4 -2
- package/vscode/src/vs/workbench/api/common/extHostLanguageModelTools.js +117 -59
- package/vscode/src/vs/workbench/api/common/extHostLanguageModels.d.ts +4 -5
- package/vscode/src/vs/workbench/api/common/extHostLanguageModels.js +219 -105
- package/vscode/src/vs/workbench/api/common/extHostLanguages.js +8 -6
- package/vscode/src/vs/workbench/api/common/extHostLocalizationService.js +21 -17
- package/vscode/src/vs/workbench/api/common/extHostLogService.js +6 -7
- package/vscode/src/vs/workbench/api/common/extHostLoggerService.d.ts +1 -1
- package/vscode/src/vs/workbench/api/common/extHostLoggerService.js +5 -11
- package/vscode/src/vs/workbench/api/common/extHostManagedSockets.js +5 -5
- package/vscode/src/vs/workbench/api/common/extHostMcp.d.ts +24 -15
- package/vscode/src/vs/workbench/api/common/extHostMcp.js +357 -221
- package/vscode/src/vs/workbench/api/common/extHostMemento.js +8 -7
- package/vscode/src/vs/workbench/api/common/extHostMessageService.js +31 -20
- package/vscode/src/vs/workbench/api/common/extHostNotebook.js +108 -77
- package/vscode/src/vs/workbench/api/common/extHostNotebookDocument.js +101 -61
- package/vscode/src/vs/workbench/api/common/extHostNotebookDocumentSaveParticipant.js +34 -12
- package/vscode/src/vs/workbench/api/common/extHostNotebookEditor.js +23 -7
- package/vscode/src/vs/workbench/api/common/extHostNotebookEditors.js +2 -4
- package/vscode/src/vs/workbench/api/common/extHostNotebookKernels.js +119 -89
- package/vscode/src/vs/workbench/api/common/extHostNotebookRenderers.js +5 -2
- package/vscode/src/vs/workbench/api/common/extHostOutput.js +59 -31
- package/vscode/src/vs/workbench/api/common/extHostProfileContentHandler.js +1 -1
- package/vscode/src/vs/workbench/api/common/extHostProgress.js +38 -19
- package/vscode/src/vs/workbench/api/common/extHostQuickDiff.js +11 -4
- package/vscode/src/vs/workbench/api/common/extHostQuickOpen.js +154 -84
- package/vscode/src/vs/workbench/api/common/extHostRequireInterceptor.js +65 -43
- package/vscode/src/vs/workbench/api/common/extHostRpcService.js +1 -1
- package/vscode/src/vs/workbench/api/common/extHostSCM.js +318 -201
- package/vscode/src/vs/workbench/api/common/extHostSearch.js +24 -17
- package/vscode/src/vs/workbench/api/common/extHostSecretState.js +1 -1
- package/vscode/src/vs/workbench/api/common/extHostSecrets.js +3 -1
- package/vscode/src/vs/workbench/api/common/extHostShare.js +14 -3
- package/vscode/src/vs/workbench/api/common/extHostSpeech.js +13 -4
- package/vscode/src/vs/workbench/api/common/extHostStatusBar.js +63 -38
- package/vscode/src/vs/workbench/api/common/extHostStorage.js +10 -5
- package/vscode/src/vs/workbench/api/common/extHostStoragePaths.js +13 -18
- package/vscode/src/vs/workbench/api/common/extHostTask.js +129 -114
- package/vscode/src/vs/workbench/api/common/extHostTelemetry.js +76 -61
- package/vscode/src/vs/workbench/api/common/extHostTerminalService.js +238 -116
- package/vscode/src/vs/workbench/api/common/extHostTerminalShellIntegration.js +76 -37
- package/vscode/src/vs/workbench/api/common/extHostTestItem.js +43 -24
- package/vscode/src/vs/workbench/api/common/extHostTesting.js +197 -115
- package/vscode/src/vs/workbench/api/common/extHostTestingPrivateApi.js +5 -3
- package/vscode/src/vs/workbench/api/common/extHostTextEditor.js +118 -79
- package/vscode/src/vs/workbench/api/common/extHostTextEditors.js +32 -24
- package/vscode/src/vs/workbench/api/common/extHostTheming.js +12 -14
- package/vscode/src/vs/workbench/api/common/extHostTimeline.js +30 -17
- package/vscode/src/vs/workbench/api/common/extHostTreeViews.js +259 -135
- package/vscode/src/vs/workbench/api/common/extHostTunnelService.js +60 -49
- package/vscode/src/vs/workbench/api/common/extHostTypeConverters.d.ts +13 -16
- package/vscode/src/vs/workbench/api/common/extHostTypeConverters.js +1198 -1037
- package/vscode/src/vs/workbench/api/common/extHostTypes/codeActionKind.js +18 -16
- package/vscode/src/vs/workbench/api/common/extHostTypes/diagnostic.js +14 -26
- package/vscode/src/vs/workbench/api/common/extHostTypes/location.js +7 -12
- package/vscode/src/vs/workbench/api/common/extHostTypes/markdownString.js +6 -6
- package/vscode/src/vs/workbench/api/common/extHostTypes/notebooks.js +24 -31
- package/vscode/src/vs/workbench/api/common/extHostTypes/position.js +29 -34
- package/vscode/src/vs/workbench/api/common/extHostTypes/range.js +15 -27
- package/vscode/src/vs/workbench/api/common/extHostTypes/selection.js +8 -15
- package/vscode/src/vs/workbench/api/common/extHostTypes/snippetString.js +21 -25
- package/vscode/src/vs/workbench/api/common/extHostTypes/snippetTextEdit.js +1 -2
- package/vscode/src/vs/workbench/api/common/extHostTypes/symbolInformation.js +6 -9
- package/vscode/src/vs/workbench/api/common/extHostTypes/textEdit.js +12 -15
- package/vscode/src/vs/workbench/api/common/extHostTypes/workspaceEdit.js +85 -34
- package/vscode/src/vs/workbench/api/common/extHostTypes.d.ts +81 -7
- package/vscode/src/vs/workbench/api/common/extHostTypes.js +515 -511
- package/vscode/src/vs/workbench/api/common/extHostUriOpener.js +3 -1
- package/vscode/src/vs/workbench/api/common/extHostUriTransformerService.js +2 -3
- package/vscode/src/vs/workbench/api/common/extHostUrls.js +9 -8
- package/vscode/src/vs/workbench/api/common/extHostVariableResolverService.js +27 -18
- package/vscode/src/vs/workbench/api/common/extHostWebview.js +67 -38
- package/vscode/src/vs/workbench/api/common/extHostWebviewMessaging.js +66 -34
- package/vscode/src/vs/workbench/api/common/extHostWebviewPanels.js +40 -21
- package/vscode/src/vs/workbench/api/common/extHostWebviewView.js +25 -12
- package/vscode/src/vs/workbench/api/common/extHostWindow.js +31 -24
- package/vscode/src/vs/workbench/api/common/extHostWorkspace.d.ts +6 -0
- package/vscode/src/vs/workbench/api/common/extHostWorkspace.js +276 -136
- package/vscode/src/vs/workbench/api/common/extensionHostMain.js +30 -20
- package/vscode/src/vs/workbench/api/common/jsonValidationExtensionPoint.js +57 -45
- package/vscode/src/vs/workbench/api/worker/extHostConsoleForwarder.js +1 -4
- package/vscode/src/vs/workbench/api/worker/extHostExtensionService.js +23 -17
- package/vscode/src/vs/workbench/api/worker/extensionHostWorker.js +41 -33
- package/vscode/src/vs/workbench/browser/actions/developerActions.js +255 -243
- package/vscode/src/vs/workbench/browser/actions/layoutActions.js +570 -451
- package/vscode/src/vs/workbench/browser/actions/textInputActions.js +66 -46
- package/vscode/src/vs/workbench/browser/actions/widgetNavigationCommands.js +33 -22
- package/vscode/src/vs/workbench/browser/actions/windowActions.js +158 -101
- package/vscode/src/vs/workbench/browser/actions/workspaceActions.js +114 -63
- package/vscode/src/vs/workbench/browser/actions/workspaceCommands.js +102 -82
- package/vscode/src/vs/workbench/browser/codeeditor.js +38 -39
- package/vscode/src/vs/workbench/browser/composite.js +5 -3
- package/vscode/src/vs/workbench/browser/contextkeys.d.ts +5 -1
- package/vscode/src/vs/workbench/browser/contextkeys.js +89 -47
- package/vscode/src/vs/workbench/browser/dnd.js +220 -101
- package/vscode/src/vs/workbench/browser/editor.js +34 -15
- package/vscode/src/vs/workbench/browser/labels.js +150 -93
- package/vscode/src/vs/workbench/browser/panecomposite.js +31 -26
- package/vscode/src/vs/workbench/browser/part.js +47 -23
- package/vscode/src/vs/workbench/browser/parts/activitybar/activitybarPart.js +214 -170
- package/vscode/src/vs/workbench/browser/parts/auxiliarybar/auxiliaryBarActions.js +115 -91
- package/vscode/src/vs/workbench/browser/parts/auxiliarybar/auxiliaryBarPart.js +93 -60
- package/vscode/src/vs/workbench/browser/parts/auxiliarybar/media/auxiliaryBarPart.css +7 -2
- package/vscode/src/vs/workbench/browser/parts/compositeBar.js +140 -68
- package/vscode/src/vs/workbench/browser/parts/compositeBarActions.js +219 -153
- package/vscode/src/vs/workbench/browser/parts/compositePart.js +80 -36
- package/vscode/src/vs/workbench/browser/parts/editor/auxiliaryEditorPart.js +137 -67
- package/vscode/src/vs/workbench/browser/parts/editor/binaryDiffEditor.js +27 -14
- package/vscode/src/vs/workbench/browser/parts/editor/binaryEditor.js +12 -16
- package/vscode/src/vs/workbench/browser/parts/editor/breadcrumbs.js +144 -139
- package/vscode/src/vs/workbench/browser/parts/editor/breadcrumbs.service.js +1 -1
- package/vscode/src/vs/workbench/browser/parts/editor/breadcrumbsControl.js +276 -174
- package/vscode/src/vs/workbench/browser/parts/editor/breadcrumbsModel.js +6 -11
- package/vscode/src/vs/workbench/browser/parts/editor/breadcrumbsPicker.js +136 -110
- package/vscode/src/vs/workbench/browser/parts/editor/diffEditorCommands.js +57 -52
- package/vscode/src/vs/workbench/browser/parts/editor/editor.js +108 -94
- package/vscode/src/vs/workbench/browser/parts/editor/editorActions.js +716 -420
- package/vscode/src/vs/workbench/browser/parts/editor/editorAutoSave.js +116 -68
- package/vscode/src/vs/workbench/browser/parts/editor/editorCommands.js +734 -435
- package/vscode/src/vs/workbench/browser/parts/editor/editorCommandsContext.js +62 -21
- package/vscode/src/vs/workbench/browser/parts/editor/editorDropTarget.js +172 -117
- package/vscode/src/vs/workbench/browser/parts/editor/editorGroupView.js +545 -296
- package/vscode/src/vs/workbench/browser/parts/editor/editorGroupWatermark.js +116 -66
- package/vscode/src/vs/workbench/browser/parts/editor/editorPane.js +38 -19
- package/vscode/src/vs/workbench/browser/parts/editor/editorPanes.js +99 -48
- package/vscode/src/vs/workbench/browser/parts/editor/editorPart.js +289 -176
- package/vscode/src/vs/workbench/browser/parts/editor/editorParts.js +108 -65
- package/vscode/src/vs/workbench/browser/parts/editor/editorPlaceholder.js +119 -87
- package/vscode/src/vs/workbench/browser/parts/editor/editorQuickAccess.js +113 -64
- package/vscode/src/vs/workbench/browser/parts/editor/editorStatus.d.ts +0 -10
- package/vscode/src/vs/workbench/browser/parts/editor/editorStatus.js +502 -334
- package/vscode/src/vs/workbench/browser/parts/editor/editorTabsControl.js +96 -49
- package/vscode/src/vs/workbench/browser/parts/editor/editorTitleControl.js +50 -32
- package/vscode/src/vs/workbench/browser/parts/editor/editorWithViewState.d.ts +0 -1
- package/vscode/src/vs/workbench/browser/parts/editor/editorWithViewState.js +27 -26
- package/vscode/src/vs/workbench/browser/parts/editor/editorsObserver.js +104 -41
- package/vscode/src/vs/workbench/browser/parts/editor/media/editorplaceholder.css +0 -2
- package/vscode/src/vs/workbench/browser/parts/editor/multiEditorTabsControl.js +634 -447
- package/vscode/src/vs/workbench/browser/parts/editor/multiRowEditorTabsControl.js +37 -16
- package/vscode/src/vs/workbench/browser/parts/editor/noEditorTabsControl.js +11 -13
- package/vscode/src/vs/workbench/browser/parts/editor/sideBySideEditor.js +141 -73
- package/vscode/src/vs/workbench/browser/parts/editor/singleEditorTabsControl.js +94 -59
- package/vscode/src/vs/workbench/browser/parts/editor/textCodeEditor.js +8 -4
- package/vscode/src/vs/workbench/browser/parts/editor/textDiffEditor.js +74 -48
- package/vscode/src/vs/workbench/browser/parts/editor/textEditor.js +96 -42
- package/vscode/src/vs/workbench/browser/parts/editor/textResourceEditor.js +76 -36
- package/vscode/src/vs/workbench/browser/parts/globalCompositeBar.js +312 -184
- package/vscode/src/vs/workbench/browser/parts/media/paneCompositePart.css +25 -4
- package/vscode/src/vs/workbench/browser/parts/notifications/media/notificationsList.css +0 -2
- package/vscode/src/vs/workbench/browser/parts/notifications/notificationsActions.js +75 -51
- package/vscode/src/vs/workbench/browser/parts/notifications/notificationsAlerts.js +6 -9
- package/vscode/src/vs/workbench/browser/parts/notifications/notificationsCenter.js +128 -88
- package/vscode/src/vs/workbench/browser/parts/notifications/notificationsCommands.js +85 -38
- package/vscode/src/vs/workbench/browser/parts/notifications/notificationsList.js +37 -32
- package/vscode/src/vs/workbench/browser/parts/notifications/notificationsStatus.js +39 -37
- package/vscode/src/vs/workbench/browser/parts/notifications/notificationsToasts.js +124 -87
- package/vscode/src/vs/workbench/browser/parts/notifications/notificationsViewer.js +138 -91
- package/vscode/src/vs/workbench/browser/parts/paneCompositeBar.js +290 -130
- package/vscode/src/vs/workbench/browser/parts/paneCompositePart.js +139 -100
- package/vscode/src/vs/workbench/browser/parts/panel/panelActions.d.ts +0 -1
- package/vscode/src/vs/workbench/browser/parts/panel/panelActions.js +144 -104
- package/vscode/src/vs/workbench/browser/parts/panel/panelPart.js +62 -53
- package/vscode/src/vs/workbench/browser/parts/sidebar/media/sidebarpart.css +7 -2
- package/vscode/src/vs/workbench/browser/parts/sidebar/sidebarActions.js +4 -4
- package/vscode/src/vs/workbench/browser/parts/sidebar/sidebarPart.js +75 -46
- package/vscode/src/vs/workbench/browser/parts/titlebar/menubarControl.js +279 -162
- package/vscode/src/vs/workbench/browser/parts/titlebar/titlebarActions.js +118 -75
- package/vscode/src/vs/workbench/browser/parts/titlebar/windowTitle.js +134 -77
- package/vscode/src/vs/workbench/browser/parts/views/checkbox.js +18 -10
- package/vscode/src/vs/workbench/browser/parts/views/treeView.js +546 -377
- package/vscode/src/vs/workbench/browser/parts/views/viewFilter.js +56 -43
- package/vscode/src/vs/workbench/browser/parts/views/viewMenuActions.js +27 -15
- package/vscode/src/vs/workbench/browser/parts/views/viewPane.js +250 -152
- package/vscode/src/vs/workbench/browser/parts/views/viewPaneContainer.js +360 -247
- package/vscode/src/vs/workbench/browser/parts/views/viewsViewlet.js +22 -16
- package/vscode/src/vs/workbench/browser/quickaccess.js +15 -11
- package/vscode/src/vs/workbench/browser/style.js +13 -11
- package/vscode/src/vs/workbench/browser/window.js +149 -105
- package/vscode/src/vs/workbench/browser/workbench.contribution.js +988 -1077
- package/vscode/src/vs/workbench/common/component.js +1 -2
- package/vscode/src/vs/workbench/common/configuration.js +103 -84
- package/vscode/src/vs/workbench/common/contextkeys.d.ts +31 -19
- package/vscode/src/vs/workbench/common/contextkeys.js +190 -147
- package/vscode/src/vs/workbench/common/contributions.js +129 -57
- package/vscode/src/vs/workbench/common/editor/binaryEditorModel.js +2 -4
- package/vscode/src/vs/workbench/common/editor/diffEditorInput.js +78 -41
- package/vscode/src/vs/workbench/common/editor/editorGroupModel.js +108 -87
- package/vscode/src/vs/workbench/common/editor/editorInput.js +4 -2
- package/vscode/src/vs/workbench/common/editor/filteredEditorGroupModel.js +42 -14
- package/vscode/src/vs/workbench/common/editor/resourceEditorInput.js +51 -38
- package/vscode/src/vs/workbench/common/editor/sideBySideEditorInput.js +39 -24
- package/vscode/src/vs/workbench/common/editor/textEditorModel.js +27 -25
- package/vscode/src/vs/workbench/common/editor/textResourceEditorInput.js +67 -31
- package/vscode/src/vs/workbench/common/editor/textResourceEditorModel.js +15 -8
- package/vscode/src/vs/workbench/common/editor.js +121 -77
- package/vscode/src/vs/workbench/common/memento.js +41 -30
- package/vscode/src/vs/workbench/common/notifications.js +103 -56
- package/vscode/src/vs/workbench/common/resources.js +15 -16
- package/vscode/src/vs/workbench/common/theme.js +514 -396
- package/vscode/src/vs/workbench/common/views.js +61 -31
- package/vscode/src/vs/workbench/common/views.service.js +1 -1
- package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibilityConfiguration.js +724 -723
- package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibleViewActions.js +75 -88
- package/vscode/src/vs/workbench/contrib/accessibility/browser/editorAccessibilityHelp.js +46 -37
- package/vscode/src/vs/workbench/contrib/bulkEdit/browser/bulkCellEdits.js +21 -11
- package/vscode/src/vs/workbench/contrib/callHierarchy/common/callHierarchy.js +9 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatActions.d.ts +41 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatActions.js +430 -327
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatConstants.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessions.d.ts +12 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessions.js +116 -22
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsModel.d.ts +23 -13
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsModel.js +352 -151
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsService.service.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjectionService.service.d.ts +33 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjectionService.service.js +6 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentTitleBarStatusService.d.ts +31 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentTitleBarStatusService.js +82 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentTitleBarStatusService.service.d.ts +47 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentTitleBarStatusService.service.js +6 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentResolveService.service.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatContextPickService.js +7 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatContextPickService.service.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatScreenshotContext.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chat.d.ts +91 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chat.service.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chat.service.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorContextKeys.js +42 -31
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingExplanationModelManager.service.d.ts +30 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingExplanationModelManager.service.js +6 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatImageUtils.js +27 -26
- package/vscode/src/vs/workbench/contrib/chat/browser/chatOutputItemRenderer.service.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusItemService.service.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatTipService.service.d.ts +15 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatTipService.service.js +6 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/contextContrib/chatContextService.service.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptFileRewriter.js +11 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatContentParts.d.ts +10 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMarkdownAnchorService.service.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatTextEditContentPart.service.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolOutputStateCache.service.d.ts +7 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolOutputStateCache.service.js +6 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/editor/chatEditorInput.js +64 -56
- package/vscode/src/vs/workbench/contrib/chat/common/actions/chatContextKeys.d.ts +10 -3
- package/vscode/src/vs/workbench/contrib/chat/common/actions/chatContextKeys.js +275 -246
- package/vscode/src/vs/workbench/contrib/chat/common/attachments/chatVariableEntries.d.ts +18 -2
- package/vscode/src/vs/workbench/contrib/chat/common/attachments/chatVariableEntries.js +89 -45
- package/vscode/src/vs/workbench/contrib/chat/common/attachments/chatVariables.service.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/chat.js +7 -3
- package/vscode/src/vs/workbench/contrib/chat/common/chatModes.d.ts +17 -8
- package/vscode/src/vs/workbench/contrib/chat/common/chatModes.js +105 -81
- package/vscode/src/vs/workbench/contrib/chat/common/chatModes.service.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatService.d.ts +160 -29
- package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatService.js +103 -52
- package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatService.service.d.ts +7 -0
- package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatService.service.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/chatSessionsService.d.ts +52 -11
- package/vscode/src/vs/workbench/contrib/chat/common/chatSessionsService.js +7 -1
- package/vscode/src/vs/workbench/contrib/chat/common/chatSessionsService.service.d.ts +14 -4
- package/vscode/src/vs/workbench/contrib/chat/common/chatSessionsService.service.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/constants.d.ts +20 -3
- package/vscode/src/vs/workbench/contrib/chat/common/constants.js +47 -25
- package/vscode/src/vs/workbench/contrib/chat/common/contextContrib/chatContext.d.ts +14 -7
- package/vscode/src/vs/workbench/contrib/chat/common/editing/chatCodeMapperService.service.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/editing/chatEditingService.d.ts +27 -20
- package/vscode/src/vs/workbench/contrib/chat/common/editing/chatEditingService.js +25 -35
- package/vscode/src/vs/workbench/contrib/chat/common/editing/chatEditingService.service.d.ts +1 -9
- package/vscode/src/vs/workbench/contrib/chat/common/editing/chatEditingService.service.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/ignoredFiles.service.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/languageModelStats.js +6 -9
- package/vscode/src/vs/workbench/contrib/chat/common/languageModelStats.service.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/languageModels.d.ts +108 -18
- package/vscode/src/vs/workbench/contrib/chat/common/languageModels.js +759 -127
- package/vscode/src/vs/workbench/contrib/chat/common/languageModels.service.d.ts +16 -4
- package/vscode/src/vs/workbench/contrib/chat/common/languageModels.service.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/languageModelsConfiguration.d.ts +11 -0
- package/vscode/src/vs/workbench/contrib/chat/common/languageModelsConfiguration.service.d.ts +14 -0
- package/vscode/src/vs/workbench/contrib/chat/common/languageModelsConfiguration.service.js +6 -0
- package/vscode/src/vs/workbench/contrib/chat/common/model/chatModel.d.ts +136 -38
- package/vscode/src/vs/workbench/contrib/chat/common/model/chatModel.js +521 -431
- package/vscode/src/vs/workbench/contrib/chat/common/model/chatProgressTypes/chatElicitationRequestPart.d.ts +1 -2
- package/vscode/src/vs/workbench/contrib/chat/common/model/chatProgressTypes/chatElicitationRequestPart.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/common/model/chatStreamStats.js +17 -15
- package/vscode/src/vs/workbench/contrib/chat/common/model/chatTransferService.service.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/model/chatUri.js +11 -6
- package/vscode/src/vs/workbench/contrib/chat/common/model/chatViewModel.d.ts +26 -26
- package/vscode/src/vs/workbench/contrib/chat/common/model/chatViewModel.js +45 -71
- package/vscode/src/vs/workbench/contrib/chat/common/model/chatWordCounter.js +10 -21
- package/vscode/src/vs/workbench/contrib/chat/common/participants/chatAgents.d.ts +20 -1
- package/vscode/src/vs/workbench/contrib/chat/common/participants/chatAgents.js +136 -79
- package/vscode/src/vs/workbench/contrib/chat/common/participants/chatAgents.service.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/common/participants/chatSlashCommands.service.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/computeAutomaticInstructions.d.ts +5 -2
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/computeAutomaticInstructions.js +227 -108
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/config/config.d.ts +34 -3
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/config/config.js +55 -34
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/config/promptFileLocations.d.ts +69 -26
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/config/promptFileLocations.js +98 -41
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/promptFileParser.d.ts +14 -2
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/promptFileParser.js +221 -96
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/promptTypes.d.ts +8 -2
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/promptTypes.js +40 -25
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsService.d.ts +57 -22
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsService.js +12 -2
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsService.service.d.ts +20 -7
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsService.service.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptsServiceUtils.d.ts +14 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptsServiceUtils.js +14 -0
- package/vscode/src/vs/workbench/contrib/chat/common/requestParser/chatParserTypes.d.ts +3 -0
- package/vscode/src/vs/workbench/contrib/chat/common/requestParser/chatParserTypes.js +109 -47
- package/vscode/src/vs/workbench/contrib/chat/common/requestParser/chatRequestParser.d.ts +3 -3
- package/vscode/src/vs/workbench/contrib/chat/common/requestParser/chatRequestParser.js +23 -36
- package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/confirmationTool.js +24 -25
- package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/editFileTool.js +56 -39
- package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/manageTodoListTool.d.ts +2 -6
- package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/manageTodoListTool.js +130 -169
- package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/runSubagentTool.d.ts +10 -5
- package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/runSubagentTool.js +141 -90
- package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/tools.d.ts +1 -3
- package/vscode/src/vs/workbench/contrib/chat/common/tools/builtinTools/tools.js +11 -24
- package/vscode/src/vs/workbench/contrib/chat/common/tools/chatTodoListService.service.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsConfirmationService.d.ts +2 -0
- package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsConfirmationService.service.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsContribution.d.ts +38 -0
- package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsContribution.js +471 -0
- package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsParametersSchema.d.ts +6 -0
- package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsParametersSchema.js +231 -0
- package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsService.d.ts +91 -12
- package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsService.js +137 -59
- package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsService.service.d.ts +64 -12
- package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsService.service.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/widget/chatLayoutService.service.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/widget/chatWidgetHistoryService.service.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/widget/input/modelPickerWidget.js +4 -1
- package/vscode/src/vs/workbench/contrib/codeActions/browser/codeActions.contribution.js +3 -6
- package/vscode/src/vs/workbench/contrib/codeActions/browser/codeActionsContribution.js +93 -100
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/dictation/editorDictation.js +54 -49
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/diffEditorAccessibilityHelp.js +21 -27
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/diffEditorHelper.js +46 -26
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/editorFeatures.js +11 -9
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/editorLineNumberMenu.js +39 -22
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/find/simpleFindWidget.js +77 -62
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/inspectEditorTokens/inspectEditorTokens.js +277 -121
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/largeFileOptimizations.js +24 -19
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/quickaccess/gotoSymbolQuickAccess.js +69 -43
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/saveParticipants.js +157 -94
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/simpleEditorOptions.js +28 -19
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/suggestEnabledInput/suggestEnabledInput.css +1 -1
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/suggestEnabledInput/suggestEnabledInput.js +153 -83
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleMinimap.js +9 -7
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleMultiCursorModifier.js +25 -23
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleRenderControlCharacter.js +9 -7
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleRenderWhitespace.js +13 -12
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleWordWrap.js +58 -46
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/workbenchReferenceSearch.js +25 -11
- package/vscode/src/vs/workbench/contrib/codeEditor/common/languageConfigurationExtensionPoint.d.ts +72 -0
- package/vscode/src/vs/workbench/contrib/codeEditor/common/languageConfigurationExtensionPoint.js +968 -0
- package/vscode/src/vs/workbench/contrib/comments/browser/commentColors.js +38 -14
- package/vscode/src/vs/workbench/contrib/comments/browser/commentFormActions.js +23 -5
- package/vscode/src/vs/workbench/contrib/comments/browser/commentGlyphWidget.js +71 -37
- package/vscode/src/vs/workbench/contrib/comments/browser/commentNode.js +212 -162
- package/vscode/src/vs/workbench/contrib/comments/browser/commentReply.js +117 -70
- package/vscode/src/vs/workbench/contrib/comments/browser/commentService.service.js +1 -1
- package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadAdditionalActions.js +19 -12
- package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadBody.js +63 -40
- package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadHeader.js +33 -22
- package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadRangeDecorator.js +7 -5
- package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadWidget.js +88 -44
- package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadZoneWidget.d.ts +2 -0
- package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadZoneWidget.js +116 -74
- package/vscode/src/vs/workbench/contrib/comments/browser/comments.js +1 -1
- package/vscode/src/vs/workbench/contrib/comments/browser/commentsAccessibility.js +26 -16
- package/vscode/src/vs/workbench/contrib/comments/browser/commentsController.d.ts +3 -0
- package/vscode/src/vs/workbench/contrib/comments/browser/commentsController.js +322 -177
- package/vscode/src/vs/workbench/contrib/comments/browser/commentsModel.js +41 -25
- package/vscode/src/vs/workbench/contrib/comments/browser/commentsTreeViewer.js +181 -133
- package/vscode/src/vs/workbench/contrib/comments/browser/commentsView.js +149 -117
- package/vscode/src/vs/workbench/contrib/comments/browser/commentsViewActions.js +45 -39
- package/vscode/src/vs/workbench/contrib/comments/browser/media/review.css +0 -5
- package/vscode/src/vs/workbench/contrib/comments/browser/reactionsAction.js +33 -25
- package/vscode/src/vs/workbench/contrib/comments/browser/simpleCommentEditor.js +95 -50
- package/vscode/src/vs/workbench/contrib/comments/common/commentContextKeys.d.ts +4 -0
- package/vscode/src/vs/workbench/contrib/comments/common/commentContextKeys.js +46 -32
- package/vscode/src/vs/workbench/contrib/comments/common/commentModel.js +5 -3
- package/vscode/src/vs/workbench/contrib/customEditor/browser/customEditorInput.js +114 -68
- package/vscode/src/vs/workbench/contrib/customEditor/common/customEditor.service.js +1 -1
- package/vscode/src/vs/workbench/contrib/debug/browser/baseDebugView.js +57 -41
- package/vscode/src/vs/workbench/contrib/debug/browser/breakpointEditorContribution.js +323 -212
- package/vscode/src/vs/workbench/contrib/debug/browser/breakpointWidget.d.ts +3 -0
- package/vscode/src/vs/workbench/contrib/debug/browser/breakpointWidget.js +245 -169
- package/vscode/src/vs/workbench/contrib/debug/browser/breakpointWidget.service.js +1 -1
- package/vscode/src/vs/workbench/contrib/debug/browser/breakpointsView.js +966 -672
- package/vscode/src/vs/workbench/contrib/debug/browser/callStackEditorContribution.js +49 -30
- package/vscode/src/vs/workbench/contrib/debug/browser/debugANSIHandling.d.ts +4 -3
- package/vscode/src/vs/workbench/contrib/debug/browser/debugANSIHandling.js +203 -130
- package/vscode/src/vs/workbench/contrib/debug/browser/debugActionViewItems.js +105 -77
- package/vscode/src/vs/workbench/contrib/debug/browser/debugColors.js +312 -213
- package/vscode/src/vs/workbench/contrib/debug/browser/debugCommands.js +289 -209
- package/vscode/src/vs/workbench/contrib/debug/browser/debugEditorContribution.js +254 -158
- package/vscode/src/vs/workbench/contrib/debug/browser/debugExpressionRenderer.js +100 -72
- package/vscode/src/vs/workbench/contrib/debug/browser/debugHover.js +117 -70
- package/vscode/src/vs/workbench/contrib/debug/browser/debugIcons.js +120 -58
- package/vscode/src/vs/workbench/contrib/debug/browser/debugSessionPicker.js +46 -16
- package/vscode/src/vs/workbench/contrib/debug/browser/exceptionWidget.js +52 -24
- package/vscode/src/vs/workbench/contrib/debug/browser/linkDetector.d.ts +10 -7
- package/vscode/src/vs/workbench/contrib/debug/browser/linkDetector.js +198 -80
- package/vscode/src/vs/workbench/contrib/debug/browser/repl.js +322 -225
- package/vscode/src/vs/workbench/contrib/debug/browser/replFilter.js +27 -16
- package/vscode/src/vs/workbench/contrib/debug/browser/replViewer.js +132 -84
- package/vscode/src/vs/workbench/contrib/debug/browser/variablesView.js +241 -154
- package/vscode/src/vs/workbench/contrib/debug/common/abstractDebugAdapter.js +19 -20
- package/vscode/src/vs/workbench/contrib/debug/common/debug.js +366 -344
- package/vscode/src/vs/workbench/contrib/debug/common/debug.service.js +1 -1
- package/vscode/src/vs/workbench/contrib/debug/common/debugModel.js +304 -176
- package/vscode/src/vs/workbench/contrib/debug/common/debugSource.js +34 -34
- package/vscode/src/vs/workbench/contrib/debug/common/debugUtils.js +97 -86
- package/vscode/src/vs/workbench/contrib/debug/common/debugVisualizers.service.js +1 -1
- package/vscode/src/vs/workbench/contrib/debug/common/disassemblyViewInput.js +5 -3
- package/vscode/src/vs/workbench/contrib/debug/common/loadedScriptsPicker.js +68 -15
- package/vscode/src/vs/workbench/contrib/debug/common/replModel.js +51 -64
- package/vscode/src/vs/workbench/contrib/dropOrPasteInto/browser/commands.js +16 -10
- package/vscode/src/vs/workbench/contrib/dropOrPasteInto/browser/configurationSchema.js +64 -62
- package/vscode/src/vs/workbench/contrib/dropOrPasteInto/browser/dropOrPasteInto.contribution.js +11 -4
- package/vscode/src/vs/workbench/contrib/editSessions/common/editSessions.service.js +2 -2
- package/vscode/src/vs/workbench/contrib/editTelemetry/browser/randomService.service.js +1 -1
- package/vscode/src/vs/workbench/contrib/editTelemetry/browser/telemetry/aiEditTelemetry/aiEditTelemetryService.service.js +1 -1
- package/vscode/src/vs/workbench/contrib/extensions/browser/abstractRuntimeExtensionsEditor.js +142 -120
- package/vscode/src/vs/workbench/contrib/extensions/browser/configBasedRecommendations.js +15 -11
- package/vscode/src/vs/workbench/contrib/extensions/browser/exeBasedRecommendations.js +20 -15
- package/vscode/src/vs/workbench/contrib/extensions/browser/extensionEditor.js +538 -320
- package/vscode/src/vs/workbench/contrib/extensions/browser/extensionEnablementWorkspaceTrustTransitionParticipant.js +16 -16
- package/vscode/src/vs/workbench/contrib/extensions/browser/extensionFeaturesTab.js +245 -188
- package/vscode/src/vs/workbench/contrib/extensions/browser/extensionRecommendationNotificationService.js +229 -119
- package/vscode/src/vs/workbench/contrib/extensions/browser/extensionRecommendationsService.js +67 -34
- package/vscode/src/vs/workbench/contrib/extensions/browser/extensions.contribution.js +944 -825
- package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsActions.js +1732 -1043
- package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsActivationProgress.js +3 -7
- package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsCompletionItemsProvider.js +31 -17
- package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsDependencyChecker.js +28 -19
- package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsIcons.js +52 -47
- package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsList.js +81 -50
- package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsQuickAccess.js +35 -29
- package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsViewer.js +181 -104
- package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsViewlet.js +411 -353
- package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsViews.js +536 -379
- package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsWidgets.js +347 -241
- package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsWorkbenchService.js +964 -561
- package/vscode/src/vs/workbench/contrib/extensions/browser/fileBasedRecommendations.js +76 -45
- package/vscode/src/vs/workbench/contrib/extensions/browser/keymapRecommendations.js +5 -5
- package/vscode/src/vs/workbench/contrib/extensions/browser/languageRecommendations.js +6 -6
- package/vscode/src/vs/workbench/contrib/extensions/browser/media/extension.css +3 -3
- package/vscode/src/vs/workbench/contrib/extensions/browser/media/extensionActions.css +2 -2
- package/vscode/src/vs/workbench/contrib/extensions/browser/media/extensionEditor.css +8 -9
- package/vscode/src/vs/workbench/contrib/extensions/browser/remoteRecommendations.js +14 -7
- package/vscode/src/vs/workbench/contrib/extensions/browser/unsupportedExtensionsMigrationContribution.js +24 -10
- package/vscode/src/vs/workbench/contrib/extensions/browser/webRecommendations.js +6 -7
- package/vscode/src/vs/workbench/contrib/extensions/browser/workspaceRecommendations.js +57 -31
- package/vscode/src/vs/workbench/contrib/extensions/common/extensionQuery.js +29 -23
- package/vscode/src/vs/workbench/contrib/extensions/common/extensions.js +29 -33
- package/vscode/src/vs/workbench/contrib/extensions/common/extensions.service.js +1 -1
- package/vscode/src/vs/workbench/contrib/extensions/common/extensionsFileTemplate.js +28 -28
- package/vscode/src/vs/workbench/contrib/extensions/common/extensionsInput.js +9 -5
- package/vscode/src/vs/workbench/contrib/extensions/common/extensionsUtils.js +33 -25
- package/vscode/src/vs/workbench/contrib/extensions/common/runtimeExtensionsInput.js +7 -5
- package/vscode/src/vs/workbench/contrib/extensions/common/searchExtensionsTool.js +40 -38
- package/vscode/src/vs/workbench/contrib/externalUriOpener/common/configuration.js +27 -32
- package/vscode/src/vs/workbench/contrib/externalUriOpener/common/externalUriOpenerService.js +40 -36
- package/vscode/src/vs/workbench/contrib/externalUriOpener/common/externalUriOpenerService.service.js +1 -1
- package/vscode/src/vs/workbench/contrib/files/browser/editors/binaryFileEditor.js +22 -18
- package/vscode/src/vs/workbench/contrib/files/browser/editors/fileEditorHandler.js +16 -8
- package/vscode/src/vs/workbench/contrib/files/browser/editors/fileEditorInput.js +45 -30
- package/vscode/src/vs/workbench/contrib/files/browser/editors/textFileEditor.js +96 -64
- package/vscode/src/vs/workbench/contrib/files/browser/editors/textFileEditorTracker.js +41 -20
- package/vscode/src/vs/workbench/contrib/files/browser/editors/textFileSaveErrorHandler.js +149 -88
- package/vscode/src/vs/workbench/contrib/files/browser/explorerFileContrib.js +1 -1
- package/vscode/src/vs/workbench/contrib/files/browser/explorerViewlet.js +76 -64
- package/vscode/src/vs/workbench/contrib/files/browser/fileActions.contribution.js +180 -126
- package/vscode/src/vs/workbench/contrib/files/browser/fileActions.js +467 -314
- package/vscode/src/vs/workbench/contrib/files/browser/fileCommands._save.js +124 -50
- package/vscode/src/vs/workbench/contrib/files/browser/fileCommands.js +173 -71
- package/vscode/src/vs/workbench/contrib/files/browser/fileConstants.js +34 -34
- package/vscode/src/vs/workbench/contrib/files/browser/fileImportExport.js +214 -157
- package/vscode/src/vs/workbench/contrib/files/browser/files.contribution._configuration.js +284 -295
- package/vscode/src/vs/workbench/contrib/files/browser/files.contribution._editorPane.js +36 -18
- package/vscode/src/vs/workbench/contrib/files/browser/files.contribution._fileEditorFactory.js +21 -3
- package/vscode/src/vs/workbench/contrib/files/browser/files.js +10 -9
- package/vscode/src/vs/workbench/contrib/files/browser/files.service.js +1 -1
- package/vscode/src/vs/workbench/contrib/files/browser/views/emptyView.js +45 -26
- package/vscode/src/vs/workbench/contrib/files/browser/views/explorerDecorationsProvider.js +11 -14
- package/vscode/src/vs/workbench/contrib/files/browser/views/explorerView.js +249 -192
- package/vscode/src/vs/workbench/contrib/files/browser/views/explorerViewer.js +595 -415
- package/vscode/src/vs/workbench/contrib/files/browser/views/openEditorsView.js +278 -187
- package/vscode/src/vs/workbench/contrib/files/browser/workspaceWatcher.js +56 -35
- package/vscode/src/vs/workbench/contrib/files/common/dirtyFilesIndicator.js +9 -10
- package/vscode/src/vs/workbench/contrib/files/common/explorerFileNestingTrie.js +45 -41
- package/vscode/src/vs/workbench/contrib/files/common/explorerModel.js +69 -35
- package/vscode/src/vs/workbench/contrib/files/common/files.js +116 -105
- package/vscode/src/vs/workbench/contrib/folding/browser/folding.contribution.js +35 -23
- package/vscode/src/vs/workbench/contrib/format/browser/formatActionsMultiple.js +170 -105
- package/vscode/src/vs/workbench/contrib/format/browser/formatActionsNone.js +17 -16
- package/vscode/src/vs/workbench/contrib/format/browser/formatModified.js +19 -7
- package/vscode/src/vs/workbench/contrib/inlayHints/browser/inlayHintsAccessibilty.js +53 -35
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionService.service.d.ts +4 -23
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionService.service.js +1 -1
- package/vscode/src/vs/workbench/contrib/interactive/browser/interactiveDocumentService.service.js +1 -1
- package/vscode/src/vs/workbench/contrib/interactive/browser/interactiveEditorInput.js +36 -25
- package/vscode/src/vs/workbench/contrib/interactive/browser/interactiveHistoryService.service.js +1 -1
- package/vscode/src/vs/workbench/contrib/issue/browser/issueTroubleshoot.service.js +1 -1
- package/vscode/src/vs/workbench/contrib/issue/common/issue.service.js +2 -2
- package/vscode/src/vs/workbench/contrib/list/browser/list.contribution.js +6 -6
- package/vscode/src/vs/workbench/contrib/list/browser/listResizeColumnAction.js +9 -3
- package/vscode/src/vs/workbench/contrib/list/browser/tableColumnResizeQuickPick.js +14 -12
- package/vscode/src/vs/workbench/contrib/markdown/browser/markdownDocumentRenderer.js +102 -94
- package/vscode/src/vs/workbench/contrib/markdown/common/markedKatexExtension.js +23 -24
- package/vscode/src/vs/workbench/contrib/markers/common/markers.js +29 -29
- package/vscode/src/vs/workbench/contrib/mcp/browser/mcpCommandsAddConfiguration.d.ts +12 -0
- package/vscode/src/vs/workbench/contrib/mcp/browser/mcpCommandsAddConfiguration.js +384 -194
- package/vscode/src/vs/workbench/contrib/mcp/common/mcpCommandIds.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/mcp/common/mcpCommandIds.js +1 -0
- package/vscode/src/vs/workbench/contrib/mcp/common/mcpConfiguration.js +158 -144
- package/vscode/src/vs/workbench/contrib/mcp/common/mcpDevMode.d.ts +22 -0
- package/vscode/src/vs/workbench/contrib/mcp/common/mcpDevMode.js +112 -0
- package/vscode/src/vs/workbench/contrib/mcp/common/mcpIcons.d.ts +36 -0
- package/vscode/src/vs/workbench/contrib/mcp/common/mcpIcons.js +126 -0
- package/vscode/src/vs/workbench/contrib/mcp/common/mcpRegistryTypes.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/mcp/common/mcpRegistryTypes.service.js +1 -1
- package/vscode/src/vs/workbench/contrib/mcp/common/mcpServer.d.ts +220 -0
- package/vscode/src/vs/workbench/contrib/mcp/common/mcpServer.js +1027 -0
- package/vscode/src/vs/workbench/contrib/mcp/common/mcpTaskManager.d.ts +68 -0
- package/vscode/src/vs/workbench/contrib/mcp/common/mcpTaskManager.js +177 -0
- package/vscode/src/vs/workbench/contrib/mcp/common/mcpTypes.d.ts +27 -1
- package/vscode/src/vs/workbench/contrib/mcp/common/mcpTypes.js +109 -102
- package/vscode/src/vs/workbench/contrib/mcp/common/mcpTypes.service.js +4 -4
- package/vscode/src/vs/workbench/contrib/mcp/common/mcpTypesUtils.d.ts +3 -0
- package/vscode/src/vs/workbench/contrib/mcp/common/mcpTypesUtils.js +61 -7
- package/vscode/src/vs/workbench/contrib/mcp/common/modelContextProtocol.d.ts +814 -193
- package/vscode/src/vs/workbench/contrib/mcp/common/uriTemplate.d.ts +37 -0
- package/vscode/src/vs/workbench/contrib/mcp/common/uriTemplate.js +269 -0
- package/vscode/src/vs/workbench/contrib/mergeEditor/browser/mergeEditorInput.js +75 -49
- package/vscode/src/vs/workbench/contrib/mergeEditor/browser/mergeEditorInputModel.js +179 -160
- package/vscode/src/vs/workbench/contrib/mergeEditor/browser/mergeMarkers/mergeMarkersController.js +1 -1
- package/vscode/src/vs/workbench/contrib/mergeEditor/browser/model/diffComputer.js +15 -14
- package/vscode/src/vs/workbench/contrib/mergeEditor/browser/model/editing.js +4 -4
- package/vscode/src/vs/workbench/contrib/mergeEditor/browser/model/lineRange.js +4 -1
- package/vscode/src/vs/workbench/contrib/mergeEditor/browser/model/mapping.js +43 -21
- package/vscode/src/vs/workbench/contrib/mergeEditor/browser/model/mergeEditorModel.js +136 -96
- package/vscode/src/vs/workbench/contrib/mergeEditor/browser/model/modifiedBaseRange.js +126 -60
- package/vscode/src/vs/workbench/contrib/mergeEditor/browser/model/rangeUtils.js +4 -9
- package/vscode/src/vs/workbench/contrib/mergeEditor/browser/model/textModelDiffs.js +23 -24
- package/vscode/src/vs/workbench/contrib/mergeEditor/browser/telemetry.js +17 -19
- package/vscode/src/vs/workbench/contrib/mergeEditor/browser/utils.js +37 -18
- package/vscode/src/vs/workbench/contrib/mergeEditor/common/mergeEditor.js +33 -29
- package/vscode/src/vs/workbench/contrib/multiDiffEditor/browser/icons.contribution.js +1 -1
- package/vscode/src/vs/workbench/contrib/multiDiffEditor/browser/multiDiffEditor.d.ts +51 -0
- package/vscode/src/vs/workbench/contrib/multiDiffEditor/browser/multiDiffEditor.js +205 -0
- package/vscode/src/vs/workbench/contrib/multiDiffEditor/browser/multiDiffEditorInput.js +97 -70
- package/vscode/src/vs/workbench/contrib/multiDiffEditor/browser/multiDiffSourceResolverService.js +2 -2
- package/vscode/src/vs/workbench/contrib/multiDiffEditor/browser/multiDiffSourceResolverService.service.js +1 -1
- package/vscode/src/vs/workbench/contrib/multiDiffEditor/browser/scmMultiDiffSourceResolver.js +96 -47
- package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/findFilters.js +19 -10
- package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/findMatchDecorationModel.js +42 -30
- package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/findModel.js +88 -55
- package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/notebookFindReplaceWidget.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/notebookFindReplaceWidget.js +222 -172
- package/vscode/src/vs/workbench/contrib/notebook/browser/controller/cellOperations.d.ts +26 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/controller/cellOperations.js +746 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/controller/cellOutputActions.js +62 -52
- package/vscode/src/vs/workbench/contrib/notebook/browser/controller/coreActions.js +64 -67
- package/vscode/src/vs/workbench/contrib/notebook/browser/controller/foldingController.js +59 -48
- package/vscode/src/vs/workbench/contrib/notebook/browser/controller/insertCellActions.d.ts +13 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/controller/insertCellActions.js +300 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffCellEditorOptions.d.ts +8 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffCellEditorOptions.js +55 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffComponents.d.ts +273 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffComponents.js +1963 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffElementOutputs.d.ts +50 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffElementOutputs.js +314 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffElementViewModel.d.ts +258 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffElementViewModel.js +886 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffNestedCellViewModel.d.ts +41 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/diffNestedCellViewModel.js +118 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/editorHeightCalculator.d.ts +17 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/editorHeightCalculator.js +71 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/eventDispatcher.d.ts +27 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/eventDispatcher.js +40 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookCellDiffDecorator.d.ts +23 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookCellDiffDecorator.js +313 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookDeletedCellDecorator.d.ts +51 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookDeletedCellDecorator.js +265 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookInlineDiff.d.ts +24 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookInlineDiff.js +185 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookInlineDiffWidget.d.ts +28 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookInlineDiffWidget.js +104 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookInsertedCellDecorator.d.ts +10 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookInsertedCellDecorator.js +43 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookOriginalCellModelFactory.d.ts +21 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookOriginalCellModelFactory.js +41 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookOriginalCellModelFactory.service.js +1 -1
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookOriginalModelRefFactory.d.ts +25 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookOriginalModelRefFactory.js +69 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookOriginalModelRefFactory.service.js +1 -1
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiff.css +469 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffEditor.d.ts +149 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffEditor.js +935 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffEditorBrowser.d.ts +180 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffEditorBrowser.js +29 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffList.d.ts +102 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffList.js +643 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffOverviewRuler.d.ts +30 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffOverviewRuler.js +197 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffViewModel.d.ts +75 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffViewModel.js +539 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/unchangedEditorRegions.d.ts +13 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/unchangedEditorRegions.js +39 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/notebookAccessibilityProvider.js +31 -35
- package/vscode/src/vs/workbench/contrib/notebook/browser/notebookBrowser.js +25 -30
- package/vscode/src/vs/workbench/contrib/notebook/browser/notebookCellLayoutManager.js +7 -10
- package/vscode/src/vs/workbench/contrib/notebook/browser/notebookEditor.js +206 -132
- package/vscode/src/vs/workbench/contrib/notebook/browser/notebookEditorExtensions.js +11 -4
- package/vscode/src/vs/workbench/contrib/notebook/browser/notebookEditorWidget.js +822 -586
- package/vscode/src/vs/workbench/contrib/notebook/browser/notebookIcons.js +29 -29
- package/vscode/src/vs/workbench/contrib/notebook/browser/notebookLogger.js +2 -3
- package/vscode/src/vs/workbench/contrib/notebook/browser/notebookOptions.js +128 -135
- package/vscode/src/vs/workbench/contrib/notebook/browser/services/notebookEditorService.service.js +1 -1
- package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellPart.js +12 -13
- package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellActionView.js +36 -23
- package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellComments.js +44 -19
- package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellContextKeys.js +30 -35
- package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellDnd.js +97 -48
- package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellDragRenderer.js +32 -26
- package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellEditorOptions.js +61 -64
- package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellExecution.js +26 -37
- package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellFocusIndicator.js +54 -38
- package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellOutput.js +248 -156
- package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellProgressBar.js +3 -7
- package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellStatusPart.js +131 -101
- package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellToolbars.js +63 -43
- package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/codeCell.js +231 -152
- package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/codeCellExecutionIcon.js +16 -20
- package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/codeCellRunToolbar.js +36 -19
- package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/collapsedCellOutput.js +12 -10
- package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/foldedCellHint.js +31 -27
- package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/markupCell.js +94 -83
- package/vscode/src/vs/workbench/contrib/notebook/browser/view/notebookCellEditorPool.js +21 -19
- package/vscode/src/vs/workbench/contrib/notebook/browser/view/notebookCellList.js +290 -222
- package/vscode/src/vs/workbench/contrib/notebook/browser/view/notebookCellListView.js +61 -18
- package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/backLayerWebView.js +544 -426
- package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/cellRenderer.js +235 -145
- package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/webviewPreloads.js +732 -544
- package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/webviewThemeMapping.js +92 -56
- package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/baseCellViewModel.js +133 -72
- package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/cellEditorOptions.js +34 -23
- package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/cellOutputTextHelper.js +34 -37
- package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/cellOutputViewModel.js +5 -3
- package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/cellSelectionCollection.js +19 -5
- package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/codeCellViewModel.js +108 -96
- package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/eventDispatcher.js +9 -9
- package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/foldingModel.js +34 -20
- package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/markupCellViewModel.js +75 -71
- package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/notebookOutlineDataSourceFactory.service.js +1 -1
- package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/notebookOutlineEntryFactory.service.js +1 -1
- package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/notebookViewModelImpl.js +200 -88
- package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookEditorStickyScroll.js +111 -64
- package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookEditorToolbar.js +227 -121
- package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookEditorWidgetContextKeys.js +44 -23
- package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookKernelQuickPickStrategy.js +254 -156
- package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookKernelView.js +72 -62
- package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookOverviewRuler.js +35 -33
- package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookTopCellToolbar.js +38 -30
- package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookViewZones.js +35 -34
- package/vscode/src/vs/workbench/contrib/notebook/common/model/notebookCellOutputTextModel.js +1 -2
- package/vscode/src/vs/workbench/contrib/notebook/common/model/notebookCellTextModel.js +83 -53
- package/vscode/src/vs/workbench/contrib/notebook/common/model/notebookMetadataTextModel.d.ts +19 -0
- package/vscode/src/vs/workbench/contrib/notebook/common/model/notebookMetadataTextModel.js +90 -0
- package/vscode/src/vs/workbench/contrib/notebook/common/notebookCellStatusBarService.service.js +1 -1
- package/vscode/src/vs/workbench/contrib/notebook/common/notebookCommon.js +150 -131
- package/vscode/src/vs/workbench/contrib/notebook/common/notebookContextKeys.js +48 -48
- package/vscode/src/vs/workbench/contrib/notebook/common/notebookDiff.d.ts +26 -0
- package/vscode/src/vs/workbench/contrib/notebook/common/notebookDiff.js +92 -0
- package/vscode/src/vs/workbench/contrib/notebook/common/notebookEditorInput.js +86 -65
- package/vscode/src/vs/workbench/contrib/notebook/common/notebookEditorModel.js +102 -72
- package/vscode/src/vs/workbench/contrib/notebook/common/notebookEditorModelResolverService.service.js +1 -1
- package/vscode/src/vs/workbench/contrib/notebook/common/notebookExecutionService.service.js +1 -1
- package/vscode/src/vs/workbench/contrib/notebook/common/notebookExecutionStateService.service.js +1 -1
- package/vscode/src/vs/workbench/contrib/notebook/common/notebookKernelService.service.js +2 -2
- package/vscode/src/vs/workbench/contrib/notebook/common/notebookKeymapService.service.js +1 -1
- package/vscode/src/vs/workbench/contrib/notebook/common/notebookLoggingService.service.js +1 -1
- package/vscode/src/vs/workbench/contrib/notebook/common/notebookRange.js +9 -9
- package/vscode/src/vs/workbench/contrib/notebook/common/notebookRendererMessagingService.service.js +1 -1
- package/vscode/src/vs/workbench/contrib/notebook/common/notebookService.service.js +1 -1
- package/vscode/src/vs/workbench/contrib/outline/browser/outline.js +8 -8
- package/vscode/src/vs/workbench/contrib/preferences/browser/keybindingWidgets.js +85 -50
- package/vscode/src/vs/workbench/contrib/preferences/browser/preferencesIcons.js +15 -15
- package/vscode/src/vs/workbench/contrib/preferences/browser/preferencesWidgets.js +126 -111
- package/vscode/src/vs/workbench/contrib/preferences/browser/settingsLayout.js +228 -273
- package/vscode/src/vs/workbench/contrib/preferences/browser/settingsTreeModels.js +210 -206
- package/vscode/src/vs/workbench/contrib/preferences/common/preferences.js +90 -97
- package/vscode/src/vs/workbench/contrib/preferences/common/preferences.service.js +1 -1
- package/vscode/src/vs/workbench/contrib/preferences/common/settingsEditorColorRegistry.js +33 -28
- package/vscode/src/vs/workbench/contrib/remote/browser/remoteExplorer.js +281 -176
- package/vscode/src/vs/workbench/contrib/remote/browser/remoteIcons.js +21 -17
- package/vscode/src/vs/workbench/contrib/remote/browser/tunnelView.js +537 -386
- package/vscode/src/vs/workbench/contrib/remote/browser/urlFinder.js +38 -22
- package/vscode/src/vs/workbench/contrib/remoteCodingAgents/common/remoteCodingAgentsService.service.js +1 -1
- package/vscode/src/vs/workbench/contrib/scm/browser/quickDiffModel.service.js +1 -1
- package/vscode/src/vs/workbench/contrib/scm/browser/scmHistory.js +197 -118
- package/vscode/src/vs/workbench/contrib/scm/browser/scmHistoryChatContext.js +69 -50
- package/vscode/src/vs/workbench/contrib/scm/browser/util.js +40 -29
- package/vscode/src/vs/workbench/contrib/scm/common/quickDiff.d.ts +6 -2
- package/vscode/src/vs/workbench/contrib/scm/common/quickDiff.js +78 -37
- package/vscode/src/vs/workbench/contrib/scm/common/quickDiff.service.js +1 -1
- package/vscode/src/vs/workbench/contrib/scm/common/quickDiffService.js +41 -40
- package/vscode/src/vs/workbench/contrib/scm/common/scm.d.ts +2 -0
- package/vscode/src/vs/workbench/contrib/scm/common/scm.service.js +2 -2
- package/vscode/src/vs/workbench/contrib/search/browser/AISearch/aiSearchModel.js +80 -49
- package/vscode/src/vs/workbench/contrib/search/browser/anythingQuickAccess.d.ts +3 -1
- package/vscode/src/vs/workbench/contrib/search/browser/anythingQuickAccess.js +227 -129
- package/vscode/src/vs/workbench/contrib/search/browser/media/searchview.css +1 -0
- package/vscode/src/vs/workbench/contrib/search/browser/notebookSearch/notebookSearchModel.js +75 -50
- package/vscode/src/vs/workbench/contrib/search/browser/notebookSearch/notebookSearchService.js +38 -38
- package/vscode/src/vs/workbench/contrib/search/browser/notebookSearch/searchNotebookHelpers.js +9 -12
- package/vscode/src/vs/workbench/contrib/search/browser/patternInputWidget.js +68 -41
- package/vscode/src/vs/workbench/contrib/search/browser/replace.service.js +1 -1
- package/vscode/src/vs/workbench/contrib/search/browser/searchActionsBase.d.ts +0 -2
- package/vscode/src/vs/workbench/contrib/search/browser/searchActionsBase.js +4 -12
- package/vscode/src/vs/workbench/contrib/search/browser/searchActionsFind.js +162 -147
- package/vscode/src/vs/workbench/contrib/search/browser/searchActionsTopBar.js +55 -57
- package/vscode/src/vs/workbench/contrib/search/browser/searchChatContext.js +106 -83
- package/vscode/src/vs/workbench/contrib/search/browser/searchFindInput.js +15 -15
- package/vscode/src/vs/workbench/contrib/search/browser/searchIcons.js +22 -22
- package/vscode/src/vs/workbench/contrib/search/browser/searchMessage.js +21 -20
- package/vscode/src/vs/workbench/contrib/search/browser/searchResultsView.js +216 -163
- package/vscode/src/vs/workbench/contrib/search/browser/searchTreeModel/fileMatch.js +89 -62
- package/vscode/src/vs/workbench/contrib/search/browser/searchTreeModel/folderMatch.js +196 -76
- package/vscode/src/vs/workbench/contrib/search/browser/searchTreeModel/match.js +34 -22
- package/vscode/src/vs/workbench/contrib/search/browser/searchTreeModel/rangeDecorations.js +16 -15
- package/vscode/src/vs/workbench/contrib/search/browser/searchTreeModel/searchTreeCommon.js +23 -42
- package/vscode/src/vs/workbench/contrib/search/browser/searchTreeModel/searchViewModelWorkbenchService.service.js +1 -1
- package/vscode/src/vs/workbench/contrib/search/browser/searchTreeModel/textSearchHeading.js +25 -34
- package/vscode/src/vs/workbench/contrib/search/browser/searchView.js +715 -489
- package/vscode/src/vs/workbench/contrib/search/browser/searchWidget.js +205 -154
- package/vscode/src/vs/workbench/contrib/search/browser/symbolsQuickAccess.js +66 -44
- package/vscode/src/vs/workbench/contrib/search/common/cellSearchModel.js +11 -5
- package/vscode/src/vs/workbench/contrib/search/common/constants.js +29 -29
- package/vscode/src/vs/workbench/contrib/search/common/notebookSearch.service.js +1 -1
- package/vscode/src/vs/workbench/contrib/search/common/search.js +16 -19
- package/vscode/src/vs/workbench/contrib/search/common/searchHistoryService.js +15 -11
- package/vscode/src/vs/workbench/contrib/search/common/searchHistoryService.service.js +1 -1
- package/vscode/src/vs/workbench/contrib/search/common/searchNotebookHelpers.js +5 -5
- package/vscode/src/vs/workbench/contrib/searchEditor/browser/constants.js +9 -9
- package/vscode/src/vs/workbench/contrib/searchEditor/browser/searchEditorActions.js +82 -46
- package/vscode/src/vs/workbench/contrib/searchEditor/browser/searchEditorInput.js +147 -76
- package/vscode/src/vs/workbench/contrib/searchEditor/browser/searchEditorModel.js +64 -17
- package/vscode/src/vs/workbench/contrib/searchEditor/browser/searchEditorSerialization.js +150 -100
- package/vscode/src/vs/workbench/contrib/share/common/share.service.js +1 -1
- package/vscode/src/vs/workbench/contrib/snippets/browser/snippetCompletionProvider.js +60 -27
- package/vscode/src/vs/workbench/contrib/snippets/browser/snippets.service.d.ts +3 -2
- package/vscode/src/vs/workbench/contrib/snippets/browser/snippets.service.js +1 -1
- package/vscode/src/vs/workbench/contrib/snippets/browser/snippetsFile.d.ts +4 -1
- package/vscode/src/vs/workbench/contrib/snippets/browser/snippetsFile.js +108 -45
- package/vscode/src/vs/workbench/contrib/snippets/browser/snippetsService.d.ts +3 -2
- package/vscode/src/vs/workbench/contrib/snippets/browser/snippetsService.js +122 -104
- package/vscode/src/vs/workbench/contrib/snippets/browser/tabCompletion.js +41 -28
- package/vscode/src/vs/workbench/contrib/speech/common/speechService.js +74 -74
- package/vscode/src/vs/workbench/contrib/speech/common/speechService.service.js +1 -1
- package/vscode/src/vs/workbench/contrib/tags/common/workspaceTags.service.js +1 -1
- package/vscode/src/vs/workbench/contrib/tasks/common/constants.js +3 -3
- package/vscode/src/vs/workbench/contrib/tasks/common/taskDefinitionRegistry.js +29 -29
- package/vscode/src/vs/workbench/contrib/tasks/common/taskService.js +12 -12
- package/vscode/src/vs/workbench/contrib/tasks/common/taskService.service.js +1 -1
- package/vscode/src/vs/workbench/contrib/tasks/common/tasks.js +242 -182
- package/vscode/src/vs/workbench/contrib/terminal/browser/detachedTerminal.d.ts +2 -0
- package/vscode/src/vs/workbench/contrib/terminal/browser/detachedTerminal.js +10 -10
- package/vscode/src/vs/workbench/contrib/terminal/browser/terminal.d.ts +21 -3
- package/vscode/src/vs/workbench/contrib/terminal/browser/terminal.service.d.ts +28 -11
- package/vscode/src/vs/workbench/contrib/terminal/browser/terminal.service.js +7 -7
- package/vscode/src/vs/workbench/contrib/terminal/browser/terminalEditorInput.js +34 -37
- package/vscode/src/vs/workbench/contrib/terminal/browser/terminalExtensions.js +10 -4
- package/vscode/src/vs/workbench/contrib/terminal/browser/terminalIcon.js +13 -20
- package/vscode/src/vs/workbench/contrib/terminal/browser/terminalIcons.js +21 -13
- package/vscode/src/vs/workbench/contrib/terminal/browser/terminalMenus.js +568 -594
- package/vscode/src/vs/workbench/contrib/terminal/browser/terminalProcessExtHostProxy.js +54 -38
- package/vscode/src/vs/workbench/contrib/terminal/browser/widgets/widgetManager.js +2 -2
- package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/decorationStyles.js +67 -86
- package/vscode/src/vs/workbench/contrib/terminal/browser/xterm-private.d.ts +16 -0
- package/vscode/src/vs/workbench/contrib/terminal/common/environmentVariable.service.js +1 -1
- package/vscode/src/vs/workbench/contrib/terminal/common/terminal.d.ts +2 -1
- package/vscode/src/vs/workbench/contrib/terminal/common/terminal.js +160 -150
- package/vscode/src/vs/workbench/contrib/terminal/common/terminal.service.js +2 -2
- package/vscode/src/vs/workbench/contrib/terminal/common/terminalColorRegistry.js +159 -159
- package/vscode/src/vs/workbench/contrib/terminal/common/terminalContextKey.js +29 -30
- package/vscode/src/vs/workbench/contrib/terminal/common/terminalExtensionPoints.service.js +1 -1
- package/vscode/src/vs/workbench/contrib/terminal/common/terminalStrings.js +26 -26
- package/vscode/src/vs/workbench/contrib/terminal/terminalContribExports.d.ts +2 -1
- package/vscode/src/vs/workbench/contrib/terminal/terminalContribExports.js +1 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/accessibility/common/terminalAccessibilityConfiguration.js +6 -6
- package/vscode/src/vs/workbench/contrib/terminalContrib/autoReplies/common/terminalAutoRepliesConfiguration.js +11 -10
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalChatAgentToolsConfiguration.d.ts +5 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalChatAgentToolsConfiguration.js +405 -271
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalSandboxService.service.d.ts +10 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalSandboxService.service.js +6 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/commandGuide/common/terminalCommandGuideConfiguration.js +6 -6
- package/vscode/src/vs/workbench/contrib/terminalContrib/history/common/terminal.history.js +5 -5
- package/vscode/src/vs/workbench/contrib/terminalContrib/inlineHint/common/terminalInitialHintConfiguration.js +6 -4
- package/vscode/src/vs/workbench/contrib/terminalContrib/links/browser/links.service.js +1 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/quickFix/browser/quickFix.service.js +1 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/stickyScroll/common/terminalStickyScrollConfiguration.d.ts +3 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/stickyScroll/common/terminalStickyScrollConfiguration.js +18 -6
- package/vscode/src/vs/workbench/contrib/terminalContrib/suggest/browser/terminalCompletionService.service.js +1 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/suggest/common/terminalSuggestConfiguration.d.ts +6 -9
- package/vscode/src/vs/workbench/contrib/terminalContrib/suggest/common/terminalSuggestConfiguration.js +125 -140
- package/vscode/src/vs/workbench/contrib/terminalContrib/typeAhead/common/terminalTypeAheadConfiguration.js +26 -33
- package/vscode/src/vs/workbench/contrib/terminalContrib/zoom/common/terminal.zoom.js +8 -10
- package/vscode/src/vs/workbench/contrib/testing/common/constants.js +15 -15
- package/vscode/src/vs/workbench/contrib/testing/common/getComputedState.js +4 -7
- package/vscode/src/vs/workbench/contrib/testing/common/testCoverage.js +27 -21
- package/vscode/src/vs/workbench/contrib/testing/common/testCoverageService.service.js +1 -1
- package/vscode/src/vs/workbench/contrib/testing/common/testExplorerFilterState.service.js +1 -1
- package/vscode/src/vs/workbench/contrib/testing/common/testId.js +5 -5
- package/vscode/src/vs/workbench/contrib/testing/common/testItemCollection.js +126 -86
- package/vscode/src/vs/workbench/contrib/testing/common/testProfileService.service.js +1 -1
- package/vscode/src/vs/workbench/contrib/testing/common/testResult.js +90 -44
- package/vscode/src/vs/workbench/contrib/testing/common/testResultService.service.js +1 -1
- package/vscode/src/vs/workbench/contrib/testing/common/testResultStorage.service.js +1 -1
- package/vscode/src/vs/workbench/contrib/testing/common/testService.service.js +1 -1
- package/vscode/src/vs/workbench/contrib/testing/common/testTypes.js +149 -128
- package/vscode/src/vs/workbench/contrib/testing/common/testingContinuousRunService.service.js +1 -1
- package/vscode/src/vs/workbench/contrib/testing/common/testingDecorations.service.js +1 -1
- package/vscode/src/vs/workbench/contrib/testing/common/testingPeekOpener.service.js +1 -1
- package/vscode/src/vs/workbench/contrib/testing/common/testingStates.js +17 -12
- package/vscode/src/vs/workbench/contrib/typeHierarchy/common/typeHierarchy.js +10 -18
- package/vscode/src/vs/workbench/contrib/url/browser/trustedDomainService.js +17 -15
- package/vscode/src/vs/workbench/contrib/url/browser/trustedDomainService.service.js +1 -1
- package/vscode/src/vs/workbench/contrib/url/browser/trustedDomains.js +68 -45
- package/vscode/src/vs/workbench/contrib/webview/browser/webview.contribution.js +12 -12
- package/vscode/src/vs/workbench/contrib/webview/browser/webview.js +16 -18
- package/vscode/src/vs/workbench/contrib/webview/browser/webview.service.js +1 -1
- package/vscode/src/vs/workbench/contrib/webview/common/webview.js +5 -7
- package/vscode/src/vs/workbench/contrib/webviewPanel/browser/webviewEditor.js +41 -26
- package/vscode/src/vs/workbench/contrib/webviewPanel/browser/webviewEditorInput.js +8 -8
- package/vscode/src/vs/workbench/contrib/webviewPanel/browser/webviewWorkbenchService.js +43 -32
- package/vscode/src/vs/workbench/contrib/webviewPanel/browser/webviewWorkbenchService.service.js +1 -1
- package/vscode/src/vs/workbench/contrib/webviewView/browser/webviewViewService.service.js +1 -1
- package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStartedService.service.js +1 -1
- package/vscode/src/vs/workbench/contrib/workspace/common/workspace.js +3 -3
- package/vscode/src/vs/workbench/services/accessibility/common/accessibleViewInformationService.service.js +1 -1
- package/vscode/src/vs/workbench/services/accounts/browser/defaultAccount.d.ts +28 -0
- package/vscode/src/vs/workbench/services/accounts/browser/defaultAccount.js +676 -0
- package/vscode/src/vs/workbench/services/activity/browser/activityService.js +9 -12
- package/vscode/src/vs/workbench/services/activity/common/activity.service.js +1 -1
- package/vscode/src/vs/workbench/services/aiEmbeddingVector/common/aiEmbeddingVectorService.service.js +1 -1
- package/vscode/src/vs/workbench/services/aiRelatedInformation/common/aiRelatedInformation.service.js +1 -1
- package/vscode/src/vs/workbench/services/aiSettingsSearch/common/aiSettingsSearch.service.js +1 -1
- package/vscode/src/vs/workbench/services/assignment/common/assignmentService.service.js +1 -1
- package/vscode/src/vs/workbench/services/authentication/browser/authenticationAccessService.service.js +1 -1
- package/vscode/src/vs/workbench/services/authentication/browser/authenticationMcpAccessService.service.js +1 -1
- package/vscode/src/vs/workbench/services/authentication/browser/authenticationMcpService.service.js +1 -1
- package/vscode/src/vs/workbench/services/authentication/browser/authenticationMcpUsageService.service.js +1 -1
- package/vscode/src/vs/workbench/services/authentication/browser/authenticationService.js +101 -69
- package/vscode/src/vs/workbench/services/authentication/browser/authenticationUsageService.service.js +1 -1
- package/vscode/src/vs/workbench/services/authentication/common/authentication.service.js +2 -2
- package/vscode/src/vs/workbench/services/authentication/common/authenticationQuery.service.js +1 -1
- package/vscode/src/vs/workbench/services/authentication/common/dynamicAuthenticationProviderStorage.service.js +1 -1
- package/vscode/src/vs/workbench/services/auxiliaryWindow/browser/auxiliaryWindowService.js +164 -103
- package/vscode/src/vs/workbench/services/auxiliaryWindow/browser/auxiliaryWindowService.service.js +1 -1
- package/vscode/src/vs/workbench/services/banner/browser/bannerService.service.js +1 -1
- package/vscode/src/vs/workbench/services/browserElements/browser/browserElementsService.service.d.ts +3 -3
- package/vscode/src/vs/workbench/services/browserElements/browser/browserElementsService.service.js +1 -1
- package/vscode/src/vs/workbench/services/chat/common/chatEntitlementService.d.ts +19 -19
- package/vscode/src/vs/workbench/services/chat/common/chatEntitlementService.js +321 -355
- package/vscode/src/vs/workbench/services/chat/common/chatEntitlementService.service.js +1 -1
- package/vscode/src/vs/workbench/services/configuration/common/jsonEditing.service.js +1 -1
- package/vscode/src/vs/workbench/services/configurationResolver/common/configurationResolver.js +2 -2
- package/vscode/src/vs/workbench/services/configurationResolver/common/configurationResolver.service.js +1 -1
- package/vscode/src/vs/workbench/services/configurationResolver/common/configurationResolverExpression.js +56 -34
- package/vscode/src/vs/workbench/services/configurationResolver/common/configurationResolverSchema.js +114 -131
- package/vscode/src/vs/workbench/services/configurationResolver/common/configurationResolverUtils.js +4 -5
- package/vscode/src/vs/workbench/services/configurationResolver/common/variableResolver.js +159 -129
- package/vscode/src/vs/workbench/services/decorations/common/decorations.service.js +1 -1
- package/vscode/src/vs/workbench/services/driver/browser/driver.js +52 -32
- package/vscode/src/vs/workbench/services/editor/browser/codeEditorService.js +8 -20
- package/vscode/src/vs/workbench/services/editor/browser/editorService.js +203 -99
- package/vscode/src/vs/workbench/services/editor/common/customEditorLabelService.js +43 -36
- package/vscode/src/vs/workbench/services/editor/common/customEditorLabelService.service.js +1 -1
- package/vscode/src/vs/workbench/services/editor/common/editorGroupsService.service.js +1 -1
- package/vscode/src/vs/workbench/services/editor/common/editorPaneService.service.js +1 -1
- package/vscode/src/vs/workbench/services/editor/common/editorResolverService.js +20 -18
- package/vscode/src/vs/workbench/services/editor/common/editorResolverService.service.js +1 -1
- package/vscode/src/vs/workbench/services/editor/common/editorService.service.js +1 -1
- package/vscode/src/vs/workbench/services/environment/browser/environmentService.d.ts +1 -0
- package/vscode/src/vs/workbench/services/environment/browser/environmentService.js +397 -225
- package/vscode/src/vs/workbench/services/extensionManagement/browser/extensionBisect.service.js +1 -1
- package/vscode/src/vs/workbench/services/extensionManagement/common/extensionFeatures.js +2 -2
- package/vscode/src/vs/workbench/services/extensionManagement/common/extensionFeatures.service.js +1 -1
- package/vscode/src/vs/workbench/services/extensionManagement/common/extensionManagement.service.js +3 -3
- package/vscode/src/vs/workbench/services/extensionManagement/common/extensionsIcons.js +7 -7
- package/vscode/src/vs/workbench/services/extensionRecommendations/common/extensionRecommendations.service.js +2 -2
- package/vscode/src/vs/workbench/services/extensionRecommendations/common/workspaceExtensionsConfig.js +178 -84
- package/vscode/src/vs/workbench/services/extensionRecommendations/common/workspaceExtensionsConfig.service.js +1 -1
- package/vscode/src/vs/workbench/services/extensions/browser/extensionUrlHandler.js +101 -64
- package/vscode/src/vs/workbench/services/extensions/browser/extensionUrlHandler.service.js +1 -1
- package/vscode/src/vs/workbench/services/extensions/common/extensionDescriptionRegistry.js +16 -11
- package/vscode/src/vs/workbench/services/extensions/common/extensionHostKind.js +34 -21
- package/vscode/src/vs/workbench/services/extensions/common/extensionHostProtocol.d.ts +2 -0
- package/vscode/src/vs/workbench/services/extensions/common/extensionManifestPropertiesService.js +43 -37
- package/vscode/src/vs/workbench/services/extensions/common/extensionManifestPropertiesService.service.js +1 -1
- package/vscode/src/vs/workbench/services/extensions/common/extensions.d.ts +1 -0
- package/vscode/src/vs/workbench/services/extensions/common/extensions.js +68 -31
- package/vscode/src/vs/workbench/services/extensions/common/extensions.service.js +1 -1
- package/vscode/src/vs/workbench/services/extensions/common/extensionsRegistry.js +459 -487
- package/vscode/src/vs/workbench/services/extensions/common/lazyPromise.js +1 -2
- package/vscode/src/vs/workbench/services/extensions/common/proxyIdentifier.js +3 -1
- package/vscode/src/vs/workbench/services/extensions/common/rpcProtocol.js +204 -133
- package/vscode/src/vs/workbench/services/extensions/common/workspaceContains.js +17 -12
- package/vscode/src/vs/workbench/services/extensions/worker/polyfillNestedWorker.js +30 -22
- package/vscode/src/vs/workbench/services/files/common/elevatedFileService.service.js +1 -1
- package/vscode/src/vs/workbench/services/filesConfiguration/common/filesConfigurationService.js +157 -103
- package/vscode/src/vs/workbench/services/filesConfiguration/common/filesConfigurationService.service.js +1 -1
- package/vscode/src/vs/workbench/services/history/common/history.service.js +1 -1
- package/vscode/src/vs/workbench/services/host/browser/host.service.js +1 -1
- package/vscode/src/vs/workbench/services/inlineCompletions/common/inlineCompletionsUnification.service.js +1 -1
- package/vscode/src/vs/workbench/services/integrity/common/integrity.service.js +1 -1
- package/vscode/src/vs/workbench/services/keybinding/browser/unboundCommands.js +2 -3
- package/vscode/src/vs/workbench/services/keybinding/common/fallbackKeyboardMapper.js +1 -1
- package/vscode/src/vs/workbench/services/keybinding/common/keybindingEditing.service.js +1 -1
- package/vscode/src/vs/workbench/services/language/common/languageService.js +117 -103
- package/vscode/src/vs/workbench/services/languageDetection/common/languageDetectionWorkerService.service.js +1 -1
- package/vscode/src/vs/workbench/services/languageStatus/common/languageStatusService.service.js +1 -1
- package/vscode/src/vs/workbench/services/layout/browser/layoutService.d.ts +4 -0
- package/vscode/src/vs/workbench/services/layout/browser/layoutService.service.d.ts +3 -3
- package/vscode/src/vs/workbench/services/layout/common/workbenchModeService.d.ts +16 -0
- package/vscode/src/vs/workbench/services/layout/common/workbenchModeService.js +20 -0
- package/vscode/src/vs/workbench/services/layout/common/workbenchModeService.service.d.ts +27 -0
- package/vscode/src/vs/workbench/services/layout/common/workbenchModeService.service.js +6 -0
- package/vscode/src/vs/workbench/services/lifecycle/common/lifecycle.service.js +1 -1
- package/vscode/src/vs/workbench/services/lifecycle/common/lifecycleService.js +37 -19
- package/vscode/src/vs/workbench/services/localization/common/locale.service.js +2 -2
- package/vscode/src/vs/workbench/services/log/common/defaultLogLevels.service.js +1 -1
- package/vscode/src/vs/workbench/services/log/common/logConstants.js +6 -3
- package/vscode/src/vs/workbench/services/notebook/common/notebookDocumentService.js +32 -17
- package/vscode/src/vs/workbench/services/notebook/common/notebookDocumentService.service.js +1 -1
- package/vscode/src/vs/workbench/services/outline/browser/outline.service.js +1 -1
- package/vscode/src/vs/workbench/services/output/common/output.js +21 -21
- package/vscode/src/vs/workbench/services/output/common/output.service.js +1 -1
- package/vscode/src/vs/workbench/services/panecomposite/browser/panecomposite.service.js +1 -1
- package/vscode/src/vs/workbench/services/path/common/pathService.service.js +1 -1
- package/vscode/src/vs/workbench/services/preferences/browser/keybindingsEditorInput.js +9 -7
- package/vscode/src/vs/workbench/services/preferences/browser/keybindingsEditorModel.js +103 -72
- package/vscode/src/vs/workbench/services/preferences/common/preferences.d.ts +1 -0
- package/vscode/src/vs/workbench/services/preferences/common/preferences.service.js +1 -1
- package/vscode/src/vs/workbench/services/preferences/common/preferencesEditorInput.js +14 -10
- package/vscode/src/vs/workbench/services/progress/browser/progressIndicator.js +37 -36
- package/vscode/src/vs/workbench/services/remote/common/remoteAgentService.service.js +1 -1
- package/vscode/src/vs/workbench/services/remote/common/remoteExplorerService.js +54 -57
- package/vscode/src/vs/workbench/services/remote/common/remoteExplorerService.service.js +1 -1
- package/vscode/src/vs/workbench/services/remote/common/tunnelModel.js +203 -145
- package/vscode/src/vs/workbench/services/search/common/fileSearchManager.js +77 -35
- package/vscode/src/vs/workbench/services/search/common/folderQuerySearchTree.js +19 -8
- package/vscode/src/vs/workbench/services/search/common/ignoreFile.js +32 -30
- package/vscode/src/vs/workbench/services/search/common/queryBuilder.d.ts +1 -0
- package/vscode/src/vs/workbench/services/search/common/queryBuilder.js +128 -123
- package/vscode/src/vs/workbench/services/search/common/search.d.ts +2 -0
- package/vscode/src/vs/workbench/services/search/common/search.js +43 -47
- package/vscode/src/vs/workbench/services/search/common/search.service.js +1 -1
- package/vscode/src/vs/workbench/services/search/common/searchExtConversionTypes.js +30 -18
- package/vscode/src/vs/workbench/services/search/common/searchExtTypes.d.ts +4 -0
- package/vscode/src/vs/workbench/services/search/common/searchExtTypes.js +2 -2
- package/vscode/src/vs/workbench/services/search/common/searchHelpers.js +13 -6
- package/vscode/src/vs/workbench/services/search/common/textSearchManager.js +51 -42
- package/vscode/src/vs/workbench/services/statusbar/browser/statusbar.service.js +1 -1
- package/vscode/src/vs/workbench/services/storage/browser/storageService.js +108 -65
- package/vscode/src/vs/workbench/services/terminal/common/embedderTerminalService.service.js +1 -1
- package/vscode/src/vs/workbench/services/textMate/browser/textMateTokenizationFeature.service.d.ts +1 -1
- package/vscode/src/vs/workbench/services/textMate/browser/textMateTokenizationFeature.service.js +1 -1
- package/vscode/src/vs/workbench/services/textMate/common/TMGrammars.js +45 -33
- package/vscode/src/vs/workbench/services/textMate/common/TMHelper.js +4 -6
- package/vscode/src/vs/workbench/services/textfile/common/encoding.js +163 -156
- package/vscode/src/vs/workbench/services/textfile/common/textEditorService.js +75 -27
- package/vscode/src/vs/workbench/services/textfile/common/textEditorService.service.js +1 -1
- package/vscode/src/vs/workbench/services/textfile/common/textFileEditorModel.js +204 -131
- package/vscode/src/vs/workbench/services/textfile/common/textfiles.service.js +1 -1
- package/vscode/src/vs/workbench/services/themes/common/colorExtensionPoint.js +92 -90
- package/vscode/src/vs/workbench/services/themes/common/colorThemeData.d.ts +1 -1
- package/vscode/src/vs/workbench/services/themes/common/colorThemeData.js +244 -143
- package/vscode/src/vs/workbench/services/themes/common/hostColorSchemeService.service.js +1 -1
- package/vscode/src/vs/workbench/services/themes/common/iconExtensionPoint.js +85 -56
- package/vscode/src/vs/workbench/services/themes/common/plistParser.js +118 -137
- package/vscode/src/vs/workbench/services/themes/common/themeCompatibility.js +40 -26
- package/vscode/src/vs/workbench/services/themes/common/tokenClassificationExtensionPoint.d.ts +3 -0
- package/vscode/src/vs/workbench/services/themes/common/tokenClassificationExtensionPoint.js +246 -0
- package/vscode/src/vs/workbench/services/themes/common/workbenchThemeService.d.ts +1 -1
- package/vscode/src/vs/workbench/services/timer/browser/timerService.service.js +1 -1
- package/vscode/src/vs/workbench/services/title/browser/titleService.service.js +1 -1
- package/vscode/src/vs/workbench/services/untitled/common/untitledTextEditorInput.js +47 -22
- package/vscode/src/vs/workbench/services/untitled/common/untitledTextEditorModel.js +79 -50
- package/vscode/src/vs/workbench/services/untitled/common/untitledTextEditorService.service.js +1 -1
- package/vscode/src/vs/workbench/services/userActivity/common/userActivityService.service.js +1 -1
- package/vscode/src/vs/workbench/services/userAttention/common/userAttentionService.service.js +1 -1
- package/vscode/src/vs/workbench/services/userData/browser/userDataInit.service.js +1 -1
- package/vscode/src/vs/workbench/services/userDataProfile/browser/iconSelectBox.js +15 -13
- package/vscode/src/vs/workbench/services/userDataProfile/common/remoteUserDataProfiles.service.js +1 -1
- package/vscode/src/vs/workbench/services/userDataProfile/common/userDataProfile.js +16 -11
- package/vscode/src/vs/workbench/services/userDataProfile/common/userDataProfile.service.js +3 -3
- package/vscode/src/vs/workbench/services/userDataProfile/common/userDataProfileIcons.js +6 -86
- package/vscode/src/vs/workbench/services/userDataProfile/common/userDataProfileService.js +3 -1
- package/vscode/src/vs/workbench/services/userDataSync/common/userDataSync.js +33 -23
- package/vscode/src/vs/workbench/services/userDataSync/common/userDataSync.service.js +1 -1
- package/vscode/src/vs/workbench/services/views/browser/viewsService.js +233 -135
- package/vscode/src/vs/workbench/services/views/common/viewsService.service.js +1 -1
- package/vscode/src/vs/workbench/services/workingCopy/common/resourceWorkingCopy.js +2 -5
- package/vscode/src/vs/workbench/services/workingCopy/common/storedFileWorkingCopy.js +239 -139
- package/vscode/src/vs/workbench/services/workingCopy/common/workingCopyBackup.service.js +1 -1
- package/vscode/src/vs/workbench/services/workingCopy/common/workingCopyEditorService.service.js +1 -1
- package/vscode/src/vs/workbench/services/workingCopy/common/workingCopyFileService.service.js +1 -1
- package/vscode/src/vs/workbench/services/workingCopy/common/workingCopyHistory.service.js +1 -1
- package/vscode/src/vs/workbench/services/workingCopy/common/workingCopyService.service.js +1 -1
- package/vscode/src/vs/workbench/services/workspaces/common/workspaceEditing.service.js +1 -1
- package/vscode/src/vs/workbench/services/workspaces/common/workspaceIdentityService.service.js +1 -1
- package/vscode/src/vs/workbench/services/workspaces/common/workspaceTrust.d.ts +7 -1
- package/vscode/src/vs/workbench/services/workspaces/common/workspaceTrust.js +152 -80
- package/vscode-dts/vscode.d.ts +78 -37
- package/vscode-dts/vscode.proposed.agentSessionsWorkspace.d.ts +18 -0
- package/vscode-dts/vscode.proposed.chatContextProvider.d.ts +104 -11
- package/vscode-dts/vscode.proposed.chatOutputRenderer.d.ts +16 -1
- package/vscode-dts/vscode.proposed.chatParticipantAdditions.d.ts +287 -8
- package/vscode-dts/vscode.proposed.chatParticipantPrivate.d.ts +25 -66
- package/vscode-dts/vscode.proposed.chatPromptFiles.d.ts +136 -0
- package/vscode-dts/vscode.proposed.chatProvider.d.ts +21 -1
- package/vscode-dts/vscode.proposed.chatSessionsProvider.d.ts +196 -29
- package/vscode-dts/vscode.proposed.contribChatEditorInlineGutterMenu.d.ts +6 -0
- package/vscode-dts/vscode.proposed.css.d.ts +6 -0
- package/vscode-dts/vscode.proposed.d.ts +8 -2
- package/vscode-dts/vscode.proposed.envIsAppPortable.d.ts +20 -0
- package/vscode-dts/vscode.proposed.extensionAffinity.d.ts +6 -0
- package/vscode-dts/vscode.proposed.inlineCompletionsAdditions.d.ts +24 -1
- package/vscode-dts/vscode.proposed.languageModelToolSupportsModel.d.ts +69 -0
- package/vscode-dts/vscode.proposed.mcpServerDefinitions.d.ts +31 -0
- package/vscode-dts/vscode.proposed.workspaceTrust.d.ts +31 -0
- package/vscode/src/vs/editor/contrib/colorPicker/browser/images/opacity-background.png +0 -0
- package/vscode/src/vs/editor/standalone/browser/iPadShowKeyboard/keyboard-dark.svg +0 -10
- package/vscode/src/vs/editor/standalone/browser/iPadShowKeyboard/keyboard-light.svg +0 -10
- package/vscode/src/vs/nls.messages.d.ts +0 -2
- package/vscode/src/vs/nls.messages.js +0 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatDynamicVariables.d.ts +0 -42
- package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatDynamicVariables.js +0 -201
- package/vscode/src/vs/workbench/contrib/chat/common/widget/annotations.d.ts +0 -21
- package/vscode/src/vs/workbench/contrib/chat/common/widget/annotations.js +0 -141
- package/vscode/src/vs/workbench/contrib/extensions/browser/media/loading-dark.svg +0 -31
- package/vscode/src/vs/workbench/contrib/extensions/browser/media/loading-hc.svg +0 -31
- package/vscode/src/vs/workbench/contrib/extensions/browser/media/loading.svg +0 -31
- package/vscode/src/vs/workbench/contrib/interactive/browser/interactiveCommon.d.ts +0 -7
- package/vscode/src/vs/workbench/contrib/interactive/browser/interactiveCommon.js +0 -11
- package/vscode/src/vs/workbench/contrib/interactive/browser/replInputHintContentWidget.d.ts +0 -20
- package/vscode/src/vs/workbench/contrib/interactive/browser/replInputHintContentWidget.js +0 -150
- package/vscode/src/vs/workbench/contrib/mergeEditor/browser/view/conflictActions.d.ts +0 -30
- package/vscode/src/vs/workbench/contrib/mergeEditor/browser/view/conflictActions.js +0 -270
- package/vscode/src/vs/workbench/contrib/mergeEditor/browser/view/fixedZoneWidget.d.ts +0 -11
- package/vscode/src/vs/workbench/contrib/mergeEditor/browser/view/fixedZoneWidget.js +0 -43
- package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/cellStatusBar/executionStatusBarItemController.d.ts +0 -22
- package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/cellStatusBar/executionStatusBarItemController.js +0 -322
- package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/cellStatusBar/notebookVisibleCellObserver.d.ts +0 -18
- package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/cellStatusBar/notebookVisibleCellObserver.js +0 -59
- package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/notebookFindWidget.d.ts +0 -75
- package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/notebookFindWidget.js +0 -340
- package/vscode/src/vs/workbench/contrib/replNotebook/browser/interactiveEditor.css +0 -21
- package/vscode/src/vs/workbench/contrib/replNotebook/browser/media/interactive.css +0 -36
- package/vscode/src/vs/workbench/contrib/replNotebook/browser/replEditor.d.ts +0 -110
- package/vscode/src/vs/workbench/contrib/replNotebook/browser/replEditor.js +0 -627
- package/vscode/src/vs/workbench/contrib/replNotebook/browser/replEditorInput.d.ts +0 -40
- package/vscode/src/vs/workbench/contrib/replNotebook/browser/replEditorInput.js +0 -139
- package/vscode/src/vs/workbench/services/accounts/common/defaultAccount.d.ts +0 -57
- package/vscode/src/vs/workbench/services/accounts/common/defaultAccount.js +0 -374
- package/vscode-dts/vscode.proposed.chatEditing.d.ts +0 -29
- package/vscode-dts/vscode.proposed.quickInputButtonLocation.d.ts +0 -49
|
@@ -23,6 +23,7 @@ import { Event, Emitter, EventBufferer, Relay } from '../../../common/event.js';
|
|
|
23
23
|
import { FuzzyScore, fuzzyScore } from '../../../common/filters.js';
|
|
24
24
|
import { KeyCode } from '../../../common/keyCodes.js';
|
|
25
25
|
import { Disposable, DisposableStore, toDisposable, dispose } from '../../../common/lifecycle.js';
|
|
26
|
+
import { isMacintosh } from '../../../common/platform.js';
|
|
26
27
|
import { clamp } from '../../../common/numbers.js';
|
|
27
28
|
import * as tree from './media/tree.css';
|
|
28
29
|
import { localize } from '../../../../nls.js';
|
|
@@ -70,16 +71,22 @@ class TreeNodeListDragAndDrop {
|
|
|
70
71
|
this.dnd.onDragStart?.(asTreeDragAndDropData(data), originalEvent);
|
|
71
72
|
}
|
|
72
73
|
onDragOver(data, targetNode, targetIndex, targetSector, originalEvent, raw = true) {
|
|
73
|
-
const result = this.dnd.onDragOver(
|
|
74
|
+
const result = this.dnd.onDragOver(
|
|
75
|
+
asTreeDragAndDropData(data),
|
|
76
|
+
targetNode && targetNode.element,
|
|
77
|
+
targetIndex,
|
|
78
|
+
targetSector,
|
|
79
|
+
originalEvent
|
|
80
|
+
);
|
|
74
81
|
const didChangeAutoExpandNode = this.autoExpandNode !== targetNode;
|
|
75
82
|
if (didChangeAutoExpandNode) {
|
|
76
83
|
this.autoExpandDisposable.dispose();
|
|
77
84
|
this.autoExpandNode = targetNode;
|
|
78
85
|
}
|
|
79
|
-
if (typeof targetNode ===
|
|
86
|
+
if (typeof targetNode === "undefined") {
|
|
80
87
|
return result;
|
|
81
88
|
}
|
|
82
|
-
if (didChangeAutoExpandNode && typeof result !==
|
|
89
|
+
if (didChangeAutoExpandNode && typeof result !== "boolean" && result.autoExpand) {
|
|
83
90
|
this.autoExpandDisposable = disposableTimeout(() => {
|
|
84
91
|
const model = this.modelProvider();
|
|
85
92
|
const ref = model.getNodeLocation(targetNode);
|
|
@@ -89,11 +96,15 @@ class TreeNodeListDragAndDrop {
|
|
|
89
96
|
this.autoExpandNode = undefined;
|
|
90
97
|
}, 500, this.disposables);
|
|
91
98
|
}
|
|
92
|
-
if (typeof result ===
|
|
99
|
+
if (typeof result === "boolean" || !result.accept || typeof result.bubble === "undefined" || result.feedback) {
|
|
93
100
|
if (!raw) {
|
|
94
|
-
const accept = typeof result ===
|
|
95
|
-
const effect = typeof result ===
|
|
96
|
-
return {
|
|
101
|
+
const accept = typeof result === "boolean" ? result : result.accept;
|
|
102
|
+
const effect = typeof result === "boolean" ? undefined : result.effect;
|
|
103
|
+
return {
|
|
104
|
+
accept,
|
|
105
|
+
effect,
|
|
106
|
+
feedback: [targetIndex]
|
|
107
|
+
};
|
|
97
108
|
}
|
|
98
109
|
return result;
|
|
99
110
|
}
|
|
@@ -109,12 +120,21 @@ class TreeNodeListDragAndDrop {
|
|
|
109
120
|
const ref = model.getNodeLocation(targetNode);
|
|
110
121
|
const start = model.getListIndex(ref);
|
|
111
122
|
const length = model.getListRenderCount(ref);
|
|
112
|
-
return {
|
|
123
|
+
return {
|
|
124
|
+
...result,
|
|
125
|
+
feedback: range(start, start + length)
|
|
126
|
+
};
|
|
113
127
|
}
|
|
114
128
|
drop(data, targetNode, targetIndex, targetSector, originalEvent) {
|
|
115
129
|
this.autoExpandDisposable.dispose();
|
|
116
130
|
this.autoExpandNode = undefined;
|
|
117
|
-
this.dnd.drop(
|
|
131
|
+
this.dnd.drop(
|
|
132
|
+
asTreeDragAndDropData(data),
|
|
133
|
+
targetNode && targetNode.element,
|
|
134
|
+
targetIndex,
|
|
135
|
+
targetSector,
|
|
136
|
+
originalEvent
|
|
137
|
+
);
|
|
118
138
|
}
|
|
119
139
|
onDragEnd(originalEvent) {
|
|
120
140
|
this.dnd.onDragEnd?.(originalEvent);
|
|
@@ -130,15 +150,24 @@ function asListOptions(modelProvider, disposableStore, options) {
|
|
|
130
150
|
identityProvider: options.identityProvider && {
|
|
131
151
|
getId(el) {
|
|
132
152
|
return options.identityProvider.getId(el.element);
|
|
133
|
-
}
|
|
153
|
+
},
|
|
154
|
+
getGroupId: options.identityProvider.getGroupId ? el => {
|
|
155
|
+
return options.identityProvider.getGroupId(el.element);
|
|
156
|
+
} : undefined
|
|
134
157
|
},
|
|
135
158
|
dnd: options.dnd && disposableStore.add(( new TreeNodeListDragAndDrop(modelProvider, options.dnd))),
|
|
136
159
|
multipleSelectionController: options.multipleSelectionController && {
|
|
137
160
|
isSelectionSingleChangeEvent(e) {
|
|
138
|
-
return options.multipleSelectionController.isSelectionSingleChangeEvent({
|
|
161
|
+
return options.multipleSelectionController.isSelectionSingleChangeEvent({
|
|
162
|
+
...e,
|
|
163
|
+
element: e.element
|
|
164
|
+
});
|
|
139
165
|
},
|
|
140
166
|
isSelectionRangeChangeEvent(e) {
|
|
141
|
-
return options.multipleSelectionController.isSelectionRangeChangeEvent({
|
|
167
|
+
return options.multipleSelectionController.isSelectionRangeChangeEvent({
|
|
168
|
+
...e,
|
|
169
|
+
element: e.element
|
|
170
|
+
});
|
|
142
171
|
}
|
|
143
172
|
},
|
|
144
173
|
accessibilityProvider: options.accessibilityProvider && {
|
|
@@ -153,20 +182,20 @@ function asListOptions(modelProvider, disposableStore, options) {
|
|
|
153
182
|
getPosInSet(node) {
|
|
154
183
|
return node.visibleChildIndex + 1;
|
|
155
184
|
},
|
|
156
|
-
isChecked: options.accessibilityProvider && options.accessibilityProvider.isChecked ?
|
|
185
|
+
isChecked: options.accessibilityProvider && options.accessibilityProvider.isChecked ? node => {
|
|
157
186
|
return options.accessibilityProvider.isChecked(node.element);
|
|
158
187
|
} : undefined,
|
|
159
|
-
getRole: options.accessibilityProvider && options.accessibilityProvider.getRole ?
|
|
188
|
+
getRole: options.accessibilityProvider && options.accessibilityProvider.getRole ? node => {
|
|
160
189
|
return options.accessibilityProvider.getRole(node.element);
|
|
161
|
-
} : () =>
|
|
190
|
+
} : () => "treeitem",
|
|
162
191
|
getAriaLabel(e) {
|
|
163
192
|
return options.accessibilityProvider.getAriaLabel(e.element);
|
|
164
193
|
},
|
|
165
194
|
getWidgetAriaLabel() {
|
|
166
195
|
return options.accessibilityProvider.getWidgetAriaLabel();
|
|
167
196
|
},
|
|
168
|
-
getWidgetRole: options.accessibilityProvider && options.accessibilityProvider.getWidgetRole ? () => options.accessibilityProvider.getWidgetRole() : () =>
|
|
169
|
-
getAriaLevel: options.accessibilityProvider && options.accessibilityProvider.getAriaLevel ?
|
|
197
|
+
getWidgetRole: options.accessibilityProvider && options.accessibilityProvider.getWidgetRole ? () => options.accessibilityProvider.getWidgetRole() : () => "tree",
|
|
198
|
+
getAriaLevel: options.accessibilityProvider && options.accessibilityProvider.getAriaLevel ? node => options.accessibilityProvider.getAriaLevel(node.element) : node => {
|
|
170
199
|
return node.depth;
|
|
171
200
|
},
|
|
172
201
|
getActiveDescendantId: options.accessibilityProvider.getActiveDescendantId && (node => {
|
|
@@ -207,7 +236,7 @@ class AbstractTreeViewState {
|
|
|
207
236
|
focus: [],
|
|
208
237
|
selection: [],
|
|
209
238
|
expanded: Object.create(null),
|
|
210
|
-
scrollTop
|
|
239
|
+
scrollTop
|
|
211
240
|
}));
|
|
212
241
|
}
|
|
213
242
|
constructor(state) {
|
|
@@ -218,8 +247,7 @@ class AbstractTreeViewState {
|
|
|
218
247
|
for (const id of state.expanded) {
|
|
219
248
|
this.expanded[id] = 1;
|
|
220
249
|
}
|
|
221
|
-
}
|
|
222
|
-
else {
|
|
250
|
+
} else {
|
|
223
251
|
this.expanded = state.expanded;
|
|
224
252
|
}
|
|
225
253
|
this.expanded = state.expanded;
|
|
@@ -230,12 +258,12 @@ class AbstractTreeViewState {
|
|
|
230
258
|
focus: Array.from(this.focus),
|
|
231
259
|
selection: Array.from(this.selection),
|
|
232
260
|
expanded: this.expanded,
|
|
233
|
-
scrollTop: this.scrollTop
|
|
261
|
+
scrollTop: this.scrollTop
|
|
234
262
|
};
|
|
235
263
|
}
|
|
236
264
|
}
|
|
237
265
|
var RenderIndentGuides;
|
|
238
|
-
(function
|
|
266
|
+
(function(RenderIndentGuides) {
|
|
239
267
|
RenderIndentGuides["None"] = "none";
|
|
240
268
|
RenderIndentGuides["OnHover"] = "onHover";
|
|
241
269
|
RenderIndentGuides["Always"] = "always";
|
|
@@ -254,8 +282,17 @@ class EventCollection {
|
|
|
254
282
|
}
|
|
255
283
|
}
|
|
256
284
|
class TreeRenderer {
|
|
257
|
-
static {
|
|
258
|
-
|
|
285
|
+
static {
|
|
286
|
+
this.DefaultIndent = 8;
|
|
287
|
+
}
|
|
288
|
+
constructor(
|
|
289
|
+
renderer,
|
|
290
|
+
model,
|
|
291
|
+
onDidChangeCollapseState,
|
|
292
|
+
activeNodes,
|
|
293
|
+
renderedIndentGuides,
|
|
294
|
+
options = {}
|
|
295
|
+
) {
|
|
259
296
|
this.renderer = renderer;
|
|
260
297
|
this.model = model;
|
|
261
298
|
this.activeNodes = activeNodes;
|
|
@@ -274,7 +311,7 @@ class TreeRenderer {
|
|
|
274
311
|
renderer.onDidChangeTwistieState?.(this.onDidChangeTwistieState, this, this.disposables);
|
|
275
312
|
}
|
|
276
313
|
updateOptions(options = {}) {
|
|
277
|
-
if (typeof options.indent !==
|
|
314
|
+
if (typeof options.indent !== "undefined") {
|
|
278
315
|
const indent = clamp(options.indent, 0, 40);
|
|
279
316
|
if (indent !== this.indent) {
|
|
280
317
|
this.indent = indent;
|
|
@@ -284,7 +321,7 @@ class TreeRenderer {
|
|
|
284
321
|
}
|
|
285
322
|
}
|
|
286
323
|
}
|
|
287
|
-
if (typeof options.renderIndentGuides !==
|
|
324
|
+
if (typeof options.renderIndentGuides !== "undefined") {
|
|
288
325
|
const shouldRenderIndentGuides = options.renderIndentGuides !== RenderIndentGuides.None;
|
|
289
326
|
if (shouldRenderIndentGuides !== this.shouldRenderIndentGuides) {
|
|
290
327
|
this.shouldRenderIndentGuides = shouldRenderIndentGuides;
|
|
@@ -300,32 +337,45 @@ class TreeRenderer {
|
|
|
300
337
|
}
|
|
301
338
|
}
|
|
302
339
|
}
|
|
303
|
-
if (typeof options.hideTwistiesOfChildlessElements !==
|
|
340
|
+
if (typeof options.hideTwistiesOfChildlessElements !== "undefined") {
|
|
304
341
|
this.hideTwistiesOfChildlessElements = options.hideTwistiesOfChildlessElements;
|
|
305
342
|
}
|
|
306
|
-
if (typeof options.twistieAdditionalCssClass !==
|
|
343
|
+
if (typeof options.twistieAdditionalCssClass !== "undefined") {
|
|
307
344
|
this.twistieAdditionalCssClass = options.twistieAdditionalCssClass;
|
|
308
345
|
}
|
|
309
346
|
}
|
|
310
347
|
renderTemplate(container) {
|
|
311
|
-
const el = append(container, $(
|
|
312
|
-
const indent = append(el, $(
|
|
313
|
-
const twistie = append(el, $(
|
|
314
|
-
const contents = append(el, $(
|
|
348
|
+
const el = append(container, $(".monaco-tl-row"));
|
|
349
|
+
const indent = append(el, $(".monaco-tl-indent"));
|
|
350
|
+
const twistie = append(el, $(".monaco-tl-twistie"));
|
|
351
|
+
const contents = append(el, $(".monaco-tl-contents"));
|
|
315
352
|
const templateData = this.renderer.renderTemplate(contents);
|
|
316
|
-
return {
|
|
353
|
+
return {
|
|
354
|
+
container,
|
|
355
|
+
indent,
|
|
356
|
+
twistie,
|
|
357
|
+
indentGuidesDisposable: Disposable.None,
|
|
358
|
+
indentSize: 0,
|
|
359
|
+
templateData
|
|
360
|
+
};
|
|
317
361
|
}
|
|
318
362
|
renderElement(node, index, templateData, details) {
|
|
319
363
|
templateData.indentSize = TreeRenderer.DefaultIndent + (node.depth - 1) * this.indent;
|
|
320
364
|
this.renderedNodes.set(node, templateData);
|
|
321
365
|
this.renderedElements.set(node.element, node);
|
|
322
366
|
this.renderTreeElement(node, templateData);
|
|
323
|
-
this.renderer.renderElement(node, index, templateData.templateData, {
|
|
367
|
+
this.renderer.renderElement(node, index, templateData.templateData, {
|
|
368
|
+
...details,
|
|
369
|
+
indent: templateData.indentSize
|
|
370
|
+
});
|
|
324
371
|
}
|
|
325
372
|
disposeElement(node, index, templateData, details) {
|
|
326
373
|
templateData.indentGuidesDisposable.dispose();
|
|
327
|
-
this.renderer.disposeElement?.(node, index, templateData.templateData, {
|
|
328
|
-
|
|
374
|
+
this.renderer.disposeElement?.(node, index, templateData.templateData, {
|
|
375
|
+
...details,
|
|
376
|
+
indent: templateData.indentSize
|
|
377
|
+
});
|
|
378
|
+
if (typeof details?.height === "number") {
|
|
329
379
|
this.renderedNodes.delete(node);
|
|
330
380
|
this.renderedElements.delete(node.element);
|
|
331
381
|
}
|
|
@@ -353,10 +403,9 @@ class TreeRenderer {
|
|
|
353
403
|
templateData.twistie.style.paddingLeft = `${templateData.indentSize}px`;
|
|
354
404
|
templateData.indent.style.width = `${templateData.indentSize + this.indent - 16}px`;
|
|
355
405
|
if (node.collapsible) {
|
|
356
|
-
templateData.container.setAttribute(
|
|
357
|
-
}
|
|
358
|
-
|
|
359
|
-
templateData.container.removeAttribute('aria-expanded');
|
|
406
|
+
templateData.container.setAttribute("aria-expanded", String(!node.collapsed));
|
|
407
|
+
} else {
|
|
408
|
+
templateData.container.removeAttribute("aria-expanded");
|
|
360
409
|
}
|
|
361
410
|
templateData.twistie.classList.remove(...ThemeIcon.asClassNameArray(Codicon.treeItemExpanded));
|
|
362
411
|
let twistieRendered = false;
|
|
@@ -367,11 +416,10 @@ class TreeRenderer {
|
|
|
367
416
|
if (!twistieRendered) {
|
|
368
417
|
templateData.twistie.classList.add(...ThemeIcon.asClassNameArray(Codicon.treeItemExpanded));
|
|
369
418
|
}
|
|
370
|
-
templateData.twistie.classList.add(
|
|
371
|
-
templateData.twistie.classList.toggle(
|
|
372
|
-
}
|
|
373
|
-
|
|
374
|
-
templateData.twistie.classList.remove('collapsible', 'collapsed');
|
|
419
|
+
templateData.twistie.classList.add("collapsible");
|
|
420
|
+
templateData.twistie.classList.toggle("collapsed", node.collapsed);
|
|
421
|
+
} else {
|
|
422
|
+
templateData.twistie.classList.remove("collapsible", "collapsed");
|
|
375
423
|
}
|
|
376
424
|
if (this.twistieAdditionalCssClass) {
|
|
377
425
|
const additionalClass = this.twistieAdditionalCssClass(node.element);
|
|
@@ -395,14 +443,15 @@ class TreeRenderer {
|
|
|
395
443
|
break;
|
|
396
444
|
}
|
|
397
445
|
const parent = this.model.getNode(parentRef);
|
|
398
|
-
const guide = $(
|
|
446
|
+
const guide = $(".indent-guide", {
|
|
447
|
+
style: `width: ${this.indent}px`
|
|
448
|
+
});
|
|
399
449
|
if (( this.activeIndentNodes.has(parent))) {
|
|
400
|
-
guide.classList.add(
|
|
450
|
+
guide.classList.add("active");
|
|
401
451
|
}
|
|
402
452
|
if (templateData.indent.childElementCount === 0) {
|
|
403
453
|
templateData.indent.appendChild(guide);
|
|
404
|
-
}
|
|
405
|
-
else {
|
|
454
|
+
} else {
|
|
406
455
|
templateData.indent.insertBefore(guide, templateData.indent.firstElementChild);
|
|
407
456
|
}
|
|
408
457
|
this.renderedIndentGuides.add(parent, guide);
|
|
@@ -422,22 +471,19 @@ class TreeRenderer {
|
|
|
422
471
|
const parentRef = this.model.getParentNodeLocation(ref);
|
|
423
472
|
if (node.collapsible && node.children.length > 0 && !node.collapsed) {
|
|
424
473
|
set.add(node);
|
|
425
|
-
}
|
|
426
|
-
else if (parentRef) {
|
|
474
|
+
} else if (parentRef) {
|
|
427
475
|
set.add(this.model.getNode(parentRef));
|
|
428
476
|
}
|
|
429
|
-
}
|
|
430
|
-
catch {
|
|
431
|
-
}
|
|
477
|
+
} catch {}
|
|
432
478
|
});
|
|
433
479
|
this.activeIndentNodes.forEach(node => {
|
|
434
480
|
if (!( set.has(node))) {
|
|
435
|
-
this.renderedIndentGuides.forEach(node, line => line.classList.remove(
|
|
481
|
+
this.renderedIndentGuides.forEach(node, line => line.classList.remove("active"));
|
|
436
482
|
}
|
|
437
483
|
});
|
|
438
484
|
set.forEach(node => {
|
|
439
485
|
if (!( this.activeIndentNodes.has(node))) {
|
|
440
|
-
this.renderedIndentGuides.forEach(node, line => line.classList.add(
|
|
486
|
+
this.renderedIndentGuides.forEach(node, line => line.classList.add("active"));
|
|
441
487
|
}
|
|
442
488
|
});
|
|
443
489
|
this.activeIndentNodes = set;
|
|
@@ -461,12 +507,24 @@ function contiguousFuzzyScore(patternLower, wordLower) {
|
|
|
461
507
|
return score;
|
|
462
508
|
}
|
|
463
509
|
class FindFilter {
|
|
464
|
-
get totalCount() {
|
|
465
|
-
|
|
466
|
-
|
|
467
|
-
get
|
|
468
|
-
|
|
469
|
-
|
|
510
|
+
get totalCount() {
|
|
511
|
+
return this._totalCount;
|
|
512
|
+
}
|
|
513
|
+
get matchCount() {
|
|
514
|
+
return this._matchCount;
|
|
515
|
+
}
|
|
516
|
+
set findMatchType(type) {
|
|
517
|
+
this._findMatchType = type;
|
|
518
|
+
}
|
|
519
|
+
get findMatchType() {
|
|
520
|
+
return this._findMatchType;
|
|
521
|
+
}
|
|
522
|
+
set findMode(mode) {
|
|
523
|
+
this._findMode = mode;
|
|
524
|
+
}
|
|
525
|
+
get findMode() {
|
|
526
|
+
return this._findMode;
|
|
527
|
+
}
|
|
470
528
|
set pattern(pattern) {
|
|
471
529
|
this._pattern = pattern;
|
|
472
530
|
this._lowercasePattern = pattern.toLowerCase();
|
|
@@ -479,21 +537,19 @@ class FindFilter {
|
|
|
479
537
|
this._matchCount = 0;
|
|
480
538
|
this._findMatchType = TreeFindMatchType.Fuzzy;
|
|
481
539
|
this._findMode = TreeFindMode.Highlight;
|
|
482
|
-
this._pattern =
|
|
483
|
-
this._lowercasePattern =
|
|
540
|
+
this._pattern = "";
|
|
541
|
+
this._lowercasePattern = "";
|
|
484
542
|
this.disposables = ( new DisposableStore());
|
|
485
543
|
}
|
|
486
544
|
filter(element, parentVisibility) {
|
|
487
545
|
let visibility = TreeVisibility.Visible;
|
|
488
546
|
if (this._filter) {
|
|
489
547
|
const result = this._filter.filter(element, parentVisibility);
|
|
490
|
-
if (typeof result ===
|
|
548
|
+
if (typeof result === "boolean") {
|
|
491
549
|
visibility = result ? TreeVisibility.Visible : TreeVisibility.Hidden;
|
|
492
|
-
}
|
|
493
|
-
else if (isFilterResult(result)) {
|
|
550
|
+
} else if (isFilterResult(result)) {
|
|
494
551
|
visibility = getVisibleState(result.visibility);
|
|
495
|
-
}
|
|
496
|
-
else {
|
|
552
|
+
} else {
|
|
497
553
|
visibility = result;
|
|
498
554
|
}
|
|
499
555
|
if (visibility === TreeVisibility.Hidden) {
|
|
@@ -503,42 +559,65 @@ class FindFilter {
|
|
|
503
559
|
this._totalCount++;
|
|
504
560
|
if (!this._pattern) {
|
|
505
561
|
this._matchCount++;
|
|
506
|
-
return {
|
|
562
|
+
return {
|
|
563
|
+
data: FuzzyScore.Default,
|
|
564
|
+
visibility
|
|
565
|
+
};
|
|
507
566
|
}
|
|
508
567
|
const label = this._keyboardNavigationLabelProvider.getKeyboardNavigationLabel(element);
|
|
509
568
|
const labels = Array.isArray(label) ? label : [label];
|
|
510
569
|
for (const l of labels) {
|
|
511
570
|
const labelStr = l && ( l.toString());
|
|
512
|
-
if (typeof labelStr ===
|
|
513
|
-
return {
|
|
571
|
+
if (typeof labelStr === "undefined") {
|
|
572
|
+
return {
|
|
573
|
+
data: FuzzyScore.Default,
|
|
574
|
+
visibility
|
|
575
|
+
};
|
|
514
576
|
}
|
|
515
577
|
let score;
|
|
516
578
|
if (this._findMatchType === TreeFindMatchType.Contiguous) {
|
|
517
579
|
score = contiguousFuzzyScore(this._lowercasePattern, labelStr.toLowerCase());
|
|
518
|
-
}
|
|
519
|
-
|
|
520
|
-
|
|
580
|
+
} else {
|
|
581
|
+
score = fuzzyScore(
|
|
582
|
+
this._pattern,
|
|
583
|
+
this._lowercasePattern,
|
|
584
|
+
0,
|
|
585
|
+
labelStr,
|
|
586
|
+
labelStr.toLowerCase(),
|
|
587
|
+
0,
|
|
588
|
+
{
|
|
589
|
+
firstMatchCanBeWeak: true,
|
|
590
|
+
boostFullMatch: true
|
|
591
|
+
}
|
|
592
|
+
);
|
|
521
593
|
}
|
|
522
594
|
if (score) {
|
|
523
595
|
this._matchCount++;
|
|
524
|
-
return labels.length === 1 ?
|
|
525
|
-
|
|
526
|
-
|
|
596
|
+
return labels.length === 1 ? {
|
|
597
|
+
data: score,
|
|
598
|
+
visibility
|
|
599
|
+
} : {
|
|
600
|
+
data: {
|
|
601
|
+
label: labelStr,
|
|
602
|
+
score: score
|
|
603
|
+
},
|
|
604
|
+
visibility
|
|
605
|
+
};
|
|
527
606
|
}
|
|
528
607
|
}
|
|
529
608
|
if (this._findMode === TreeFindMode.Filter) {
|
|
530
|
-
if (typeof this._defaultFindVisibility ===
|
|
609
|
+
if (typeof this._defaultFindVisibility === "number") {
|
|
531
610
|
return this._defaultFindVisibility;
|
|
532
|
-
}
|
|
533
|
-
else if (this._defaultFindVisibility) {
|
|
611
|
+
} else if (this._defaultFindVisibility) {
|
|
534
612
|
return this._defaultFindVisibility(element);
|
|
535
|
-
}
|
|
536
|
-
else {
|
|
613
|
+
} else {
|
|
537
614
|
return TreeVisibility.Recurse;
|
|
538
615
|
}
|
|
539
|
-
}
|
|
540
|
-
|
|
541
|
-
|
|
616
|
+
} else {
|
|
617
|
+
return {
|
|
618
|
+
data: FuzzyScore.Default,
|
|
619
|
+
visibility
|
|
620
|
+
};
|
|
542
621
|
}
|
|
543
622
|
}
|
|
544
623
|
reset() {
|
|
@@ -558,14 +637,16 @@ class TreeFindToggle extends Toggle {
|
|
|
558
637
|
inputActiveOptionBorder: opts.inputActiveOptionBorder,
|
|
559
638
|
inputActiveOptionForeground: opts.inputActiveOptionForeground,
|
|
560
639
|
inputActiveOptionBackground: opts.inputActiveOptionBackground,
|
|
561
|
-
hoverLifecycleOptions
|
|
640
|
+
hoverLifecycleOptions
|
|
562
641
|
});
|
|
563
642
|
this.id = contribution.id;
|
|
564
643
|
}
|
|
565
644
|
}
|
|
566
645
|
class FindToggles {
|
|
567
646
|
constructor(startStates) {
|
|
568
|
-
this.stateMap = ( new Map(( startStates.map(state => [state.id, {
|
|
647
|
+
this.stateMap = ( new Map(( startStates.map(state => [state.id, {
|
|
648
|
+
...state
|
|
649
|
+
}]))));
|
|
569
650
|
}
|
|
570
651
|
states() {
|
|
571
652
|
return Array.from(( this.stateMap.values()));
|
|
@@ -596,12 +677,12 @@ const unthemedFindWidgetStyles = {
|
|
|
596
677
|
listFilterWidgetShadow: undefined
|
|
597
678
|
};
|
|
598
679
|
var TreeFindMode;
|
|
599
|
-
(function
|
|
680
|
+
(function(TreeFindMode) {
|
|
600
681
|
TreeFindMode[TreeFindMode["Highlight"] = 0] = "Highlight";
|
|
601
682
|
TreeFindMode[TreeFindMode["Filter"] = 1] = "Filter";
|
|
602
683
|
})(TreeFindMode || (TreeFindMode = {}));
|
|
603
684
|
var TreeFindMatchType;
|
|
604
|
-
(function
|
|
685
|
+
(function(TreeFindMatchType) {
|
|
605
686
|
TreeFindMatchType[TreeFindMatchType["Fuzzy"] = 0] = "Fuzzy";
|
|
606
687
|
TreeFindMatchType[TreeFindMatchType["Contiguous"] = 1] = "Contiguous";
|
|
607
688
|
})(TreeFindMatchType || (TreeFindMatchType = {}));
|
|
@@ -612,12 +693,19 @@ class FindWidget extends Disposable {
|
|
|
612
693
|
set value(value) {
|
|
613
694
|
this.findInput.inputBox.value = value;
|
|
614
695
|
}
|
|
615
|
-
constructor(
|
|
696
|
+
constructor(
|
|
697
|
+
container,
|
|
698
|
+
tree,
|
|
699
|
+
contextViewProvider,
|
|
700
|
+
placeholder,
|
|
701
|
+
toggleContributions = [],
|
|
702
|
+
options
|
|
703
|
+
) {
|
|
616
704
|
super();
|
|
617
705
|
this.tree = tree;
|
|
618
|
-
this.elements = h(
|
|
619
|
-
h(
|
|
620
|
-
h(
|
|
706
|
+
this.elements = h(".monaco-tree-type-filter", [
|
|
707
|
+
h(".monaco-tree-type-filter-input@findInput"),
|
|
708
|
+
h(".monaco-tree-type-filter-actionbar@actionbar")
|
|
621
709
|
]);
|
|
622
710
|
this.toggles = [];
|
|
623
711
|
this._onDidDisable = ( new Emitter());
|
|
@@ -631,9 +719,14 @@ class FindWidget extends Disposable {
|
|
|
631
719
|
if (styles.listFilterWidgetShadow) {
|
|
632
720
|
this.elements.root.style.boxShadow = `0 0 8px 2px ${styles.listFilterWidgetShadow}`;
|
|
633
721
|
}
|
|
634
|
-
const hoverLifecycleOptions = {
|
|
722
|
+
const hoverLifecycleOptions = {
|
|
723
|
+
groupId: "abstract-tree"
|
|
724
|
+
};
|
|
635
725
|
this.toggles = ( toggleContributions.map(contribution => this._register(( new TreeFindToggle(contribution, styles.toggleStyles, hoverLifecycleOptions)))));
|
|
636
|
-
this.onDidToggleChange = Event.any(...( this.toggles.map(toggle => ( Event.map(toggle.onChange, () => ({
|
|
726
|
+
this.onDidToggleChange = Event.any(...( this.toggles.map(toggle => ( Event.map(toggle.onChange, () => ({
|
|
727
|
+
id: toggle.id,
|
|
728
|
+
isChecked: toggle.checked
|
|
729
|
+
}))))));
|
|
637
730
|
const history = options?.history || [];
|
|
638
731
|
this.findInput = this._register(( new FindInput(this.elements.findInput, contextViewProvider, {
|
|
639
732
|
label: ( localize(32, "Type to search")),
|
|
@@ -643,12 +736,12 @@ class FindWidget extends Disposable {
|
|
|
643
736
|
inputBoxStyles: styles.inputBoxStyles,
|
|
644
737
|
toggleStyles: styles.toggleStyles,
|
|
645
738
|
history: ( new Set(history)),
|
|
646
|
-
hoverLifecycleOptions
|
|
739
|
+
hoverLifecycleOptions
|
|
647
740
|
})));
|
|
648
741
|
this.actionbar = this._register(( new ActionBar(this.elements.actionbar)));
|
|
649
|
-
const emitter = this._register(( new DomEmitter(this.findInput.inputBox.inputElement,
|
|
742
|
+
const emitter = this._register(( new DomEmitter(this.findInput.inputBox.inputElement, "keydown")));
|
|
650
743
|
const onKeyDown = Event.chain(emitter.event, $ => ( $.map(e => ( new StandardKeyboardEvent(e)))));
|
|
651
|
-
this._register(onKeyDown(
|
|
744
|
+
this._register(onKeyDown(e => {
|
|
652
745
|
if (e.equals(KeyCode.Enter)) {
|
|
653
746
|
e.preventDefault();
|
|
654
747
|
e.stopPropagation();
|
|
@@ -662,8 +755,7 @@ class FindWidget extends Disposable {
|
|
|
662
755
|
if (this.findInput.inputBox.isAtLastInHistory() || this.findInput.inputBox.isNowhereInHistory()) {
|
|
663
756
|
this.findInput.inputBox.addToHistory();
|
|
664
757
|
this.tree.domFocus();
|
|
665
|
-
}
|
|
666
|
-
else {
|
|
758
|
+
} else {
|
|
667
759
|
this.findInput.inputBox.showNextValue();
|
|
668
760
|
}
|
|
669
761
|
return;
|
|
@@ -675,8 +767,11 @@ class FindWidget extends Disposable {
|
|
|
675
767
|
return;
|
|
676
768
|
}
|
|
677
769
|
}));
|
|
678
|
-
const closeAction = this._register(( new Action(
|
|
679
|
-
this.actionbar.push(closeAction, {
|
|
770
|
+
const closeAction = this._register(( new Action("close", ( localize(33, "Close")), "codicon codicon-close", true, () => this.dispose())));
|
|
771
|
+
this.actionbar.push(closeAction, {
|
|
772
|
+
icon: true,
|
|
773
|
+
label: false
|
|
774
|
+
});
|
|
680
775
|
this.onDidChangeValue = this.findInput.onDidChange;
|
|
681
776
|
}
|
|
682
777
|
setToggleState(id, checked) {
|
|
@@ -706,19 +801,23 @@ class FindWidget extends Disposable {
|
|
|
706
801
|
}
|
|
707
802
|
async dispose() {
|
|
708
803
|
this._onDidDisable.fire();
|
|
709
|
-
this.elements.root.classList.add(
|
|
804
|
+
this.elements.root.classList.add("disabled");
|
|
710
805
|
await timeout(300);
|
|
711
806
|
super.dispose();
|
|
712
807
|
}
|
|
713
808
|
}
|
|
714
809
|
var DefaultTreeToggles;
|
|
715
|
-
(function
|
|
810
|
+
(function(DefaultTreeToggles) {
|
|
716
811
|
DefaultTreeToggles["Mode"] = "mode";
|
|
717
812
|
DefaultTreeToggles["MatchType"] = "matchType";
|
|
718
813
|
})(DefaultTreeToggles || (DefaultTreeToggles = {}));
|
|
719
814
|
class AbstractFindController {
|
|
720
|
-
get pattern() {
|
|
721
|
-
|
|
815
|
+
get pattern() {
|
|
816
|
+
return this._pattern;
|
|
817
|
+
}
|
|
818
|
+
get placeholder() {
|
|
819
|
+
return this._placeholder;
|
|
820
|
+
}
|
|
722
821
|
set placeholder(value) {
|
|
723
822
|
this._placeholder = value;
|
|
724
823
|
this.widget?.setPlaceHolder(value);
|
|
@@ -728,8 +827,8 @@ class AbstractFindController {
|
|
|
728
827
|
this.filter = filter;
|
|
729
828
|
this.contextViewProvider = contextViewProvider;
|
|
730
829
|
this.options = options;
|
|
731
|
-
this._pattern =
|
|
732
|
-
this.previousPattern =
|
|
830
|
+
this._pattern = "";
|
|
831
|
+
this.previousPattern = "";
|
|
733
832
|
this._onDidChangePattern = ( new Emitter());
|
|
734
833
|
this.onDidChangePattern = this._onDidChangePattern.event;
|
|
735
834
|
this._onDidChangeOpenState = ( new Emitter());
|
|
@@ -748,14 +847,19 @@ class AbstractFindController {
|
|
|
748
847
|
this.widget.select();
|
|
749
848
|
return;
|
|
750
849
|
}
|
|
751
|
-
this.tree.updateOptions({
|
|
850
|
+
this.tree.updateOptions({
|
|
851
|
+
paddingTop: 30
|
|
852
|
+
});
|
|
752
853
|
this.widget = ( new FindWidget(
|
|
753
854
|
this.tree.getHTMLElement(),
|
|
754
855
|
this.tree,
|
|
755
856
|
this.contextViewProvider,
|
|
756
857
|
this.placeholder,
|
|
757
858
|
this.toggles.states(),
|
|
758
|
-
{
|
|
859
|
+
{
|
|
860
|
+
...this.options,
|
|
861
|
+
history: this._history
|
|
862
|
+
}
|
|
759
863
|
));
|
|
760
864
|
this.enabledDisposables.add(this.widget);
|
|
761
865
|
this.widget.onDidChangeValue(this.onDidChangeValue, this, this.enabledDisposables);
|
|
@@ -770,12 +874,14 @@ class AbstractFindController {
|
|
|
770
874
|
if (!this.widget) {
|
|
771
875
|
return;
|
|
772
876
|
}
|
|
773
|
-
this.tree.updateOptions({
|
|
877
|
+
this.tree.updateOptions({
|
|
878
|
+
paddingTop: 0
|
|
879
|
+
});
|
|
774
880
|
this._history = this.widget.getHistory();
|
|
775
881
|
this.widget = undefined;
|
|
776
882
|
this.enabledDisposables.clear();
|
|
777
883
|
this.previousPattern = this.pattern;
|
|
778
|
-
this.onDidChangeValue(
|
|
884
|
+
this.onDidChangeValue("");
|
|
779
885
|
this.tree.domFocus();
|
|
780
886
|
this._onDidChangeOpenState.fire(false);
|
|
781
887
|
}
|
|
@@ -795,21 +901,23 @@ class AbstractFindController {
|
|
|
795
901
|
renderMessage(showNotFound, warningMessage) {
|
|
796
902
|
if (showNotFound) {
|
|
797
903
|
if (this.tree.options.showNotFoundMessage ?? true) {
|
|
798
|
-
this.widget?.showMessage({
|
|
799
|
-
|
|
800
|
-
|
|
801
|
-
|
|
802
|
-
}
|
|
803
|
-
|
|
804
|
-
|
|
904
|
+
this.widget?.showMessage({
|
|
905
|
+
type: MessageType.WARNING,
|
|
906
|
+
content: warningMessage ?? ( localize(34, "No results found."))
|
|
907
|
+
});
|
|
908
|
+
} else {
|
|
909
|
+
this.widget?.showMessage({
|
|
910
|
+
type: MessageType.WARNING
|
|
911
|
+
});
|
|
912
|
+
}
|
|
913
|
+
} else {
|
|
805
914
|
this.widget?.clearMessage();
|
|
806
915
|
}
|
|
807
916
|
}
|
|
808
917
|
alertResults(results) {
|
|
809
918
|
if (!results) {
|
|
810
919
|
alert(( localize(35, "No results")));
|
|
811
|
-
}
|
|
812
|
-
else {
|
|
920
|
+
} else {
|
|
813
921
|
alert(( localize(36, "{0} results", results)));
|
|
814
922
|
}
|
|
815
923
|
}
|
|
@@ -821,7 +929,9 @@ class AbstractFindController {
|
|
|
821
929
|
}
|
|
822
930
|
}
|
|
823
931
|
class FindController extends AbstractFindController {
|
|
824
|
-
get mode() {
|
|
932
|
+
get mode() {
|
|
933
|
+
return this.toggles.get(DefaultTreeToggles.Mode) ? TreeFindMode.Filter : TreeFindMode.Highlight;
|
|
934
|
+
}
|
|
825
935
|
set mode(mode) {
|
|
826
936
|
if (mode === this.mode) {
|
|
827
937
|
return;
|
|
@@ -834,7 +944,9 @@ class FindController extends AbstractFindController {
|
|
|
834
944
|
this.render();
|
|
835
945
|
this._onDidChangeMode.fire(mode);
|
|
836
946
|
}
|
|
837
|
-
get matchType() {
|
|
947
|
+
get matchType() {
|
|
948
|
+
return this.toggles.get(DefaultTreeToggles.MatchType) ? TreeFindMatchType.Fuzzy : TreeFindMatchType.Contiguous;
|
|
949
|
+
}
|
|
838
950
|
set matchType(matchType) {
|
|
839
951
|
if (matchType === this.matchType) {
|
|
840
952
|
return;
|
|
@@ -849,19 +961,22 @@ class FindController extends AbstractFindController {
|
|
|
849
961
|
const defaultFindMode = options.defaultFindMode ?? TreeFindMode.Highlight;
|
|
850
962
|
const defaultFindMatchType = options.defaultFindMatchType ?? TreeFindMatchType.Fuzzy;
|
|
851
963
|
const toggleContributions = [{
|
|
852
|
-
|
|
853
|
-
|
|
854
|
-
|
|
855
|
-
|
|
856
|
-
|
|
857
|
-
|
|
858
|
-
|
|
859
|
-
|
|
860
|
-
|
|
861
|
-
|
|
964
|
+
id: DefaultTreeToggles.Mode,
|
|
965
|
+
icon: Codicon.listFilter,
|
|
966
|
+
title: ( localize(38, "Filter")),
|
|
967
|
+
isChecked: defaultFindMode === TreeFindMode.Filter
|
|
968
|
+
}, {
|
|
969
|
+
id: DefaultTreeToggles.MatchType,
|
|
970
|
+
icon: Codicon.searchFuzzy,
|
|
971
|
+
title: ( localize(39, "Fuzzy Match")),
|
|
972
|
+
isChecked: defaultFindMatchType === TreeFindMatchType.Fuzzy
|
|
973
|
+
}];
|
|
862
974
|
filter.findMatchType = defaultFindMatchType;
|
|
863
975
|
filter.findMode = defaultFindMode;
|
|
864
|
-
super(tree, filter, contextViewProvider, {
|
|
976
|
+
super(tree, filter, contextViewProvider, {
|
|
977
|
+
...options,
|
|
978
|
+
toggles: toggleContributions
|
|
979
|
+
});
|
|
865
980
|
this.filter = filter;
|
|
866
981
|
this._onDidChangeMode = ( new Emitter());
|
|
867
982
|
this.onDidChangeMode = this._onDidChangeMode.event;
|
|
@@ -889,7 +1004,7 @@ class FindController extends AbstractFindController {
|
|
|
889
1004
|
applyPattern(pattern) {
|
|
890
1005
|
this.tree.refilter();
|
|
891
1006
|
if (pattern) {
|
|
892
|
-
this.tree.focusNext(0, true, undefined,
|
|
1007
|
+
this.tree.focusNext(0, true, undefined, node => !FuzzyScore.isDefault(node.filterData));
|
|
893
1008
|
}
|
|
894
1009
|
const focus = this.tree.getFocus();
|
|
895
1010
|
if (focus.length > 0) {
|
|
@@ -912,8 +1027,7 @@ class FindController extends AbstractFindController {
|
|
|
912
1027
|
onDidToggleChange(e) {
|
|
913
1028
|
if (e.id === DefaultTreeToggles.Mode) {
|
|
914
1029
|
this.mode = e.isChecked ? TreeFindMode.Filter : TreeFindMode.Highlight;
|
|
915
|
-
}
|
|
916
|
-
else if (e.id === DefaultTreeToggles.MatchType) {
|
|
1030
|
+
} else if (e.id === DefaultTreeToggles.MatchType) {
|
|
917
1031
|
this.matchType = e.isChecked ? TreeFindMatchType.Fuzzy : TreeFindMatchType.Contiguous;
|
|
918
1032
|
}
|
|
919
1033
|
}
|
|
@@ -930,16 +1044,15 @@ function stickyScrollNodeStateEquals(node1, node2) {
|
|
|
930
1044
|
return node1.position === node2.position && stickyScrollNodeEquals(node1, node2);
|
|
931
1045
|
}
|
|
932
1046
|
function stickyScrollNodeEquals(node1, node2) {
|
|
933
|
-
return node1.node.element === node2.node.element &&
|
|
934
|
-
node1.startIndex === node2.startIndex &&
|
|
935
|
-
node1.height === node2.height &&
|
|
936
|
-
node1.endIndex === node2.endIndex;
|
|
1047
|
+
return node1.node.element === node2.node.element && node1.startIndex === node2.startIndex && node1.height === node2.height && node1.endIndex === node2.endIndex;
|
|
937
1048
|
}
|
|
938
1049
|
class StickyScrollState {
|
|
939
1050
|
constructor(stickyNodes = []) {
|
|
940
1051
|
this.stickyNodes = stickyNodes;
|
|
941
1052
|
}
|
|
942
|
-
get count() {
|
|
1053
|
+
get count() {
|
|
1054
|
+
return this.stickyNodes.length;
|
|
1055
|
+
}
|
|
943
1056
|
equal(state) {
|
|
944
1057
|
return equals(this.stickyNodes, state.stickyNodes, stickyScrollNodeStateEquals);
|
|
945
1058
|
}
|
|
@@ -1006,7 +1119,7 @@ class StickyScrollController extends Disposable {
|
|
|
1006
1119
|
this._register(view.onDidScroll(() => this.update()));
|
|
1007
1120
|
this._register(view.onDidChangeContentHeight(() => this.update()));
|
|
1008
1121
|
this._register(tree.onDidChangeCollapseState(() => this.update()));
|
|
1009
|
-
this._register(model.onDidSpliceRenderedNodes(
|
|
1122
|
+
this._register(model.onDidSpliceRenderedNodes(e => {
|
|
1010
1123
|
const state = this._widget.state;
|
|
1011
1124
|
if (!state) {
|
|
1012
1125
|
return;
|
|
@@ -1039,8 +1152,7 @@ class StickyScrollController extends Disposable {
|
|
|
1039
1152
|
let index;
|
|
1040
1153
|
if (height === 0) {
|
|
1041
1154
|
index = this.view.firstVisibleIndex;
|
|
1042
|
-
}
|
|
1043
|
-
else {
|
|
1155
|
+
} else {
|
|
1044
1156
|
index = this.view.indexAt(height + this.view.scrollTop);
|
|
1045
1157
|
}
|
|
1046
1158
|
if (index < 0 || index >= this.view.length) {
|
|
@@ -1102,9 +1214,18 @@ class StickyScrollController extends Disposable {
|
|
|
1102
1214
|
}
|
|
1103
1215
|
createStickyScrollNode(node, currentStickyNodesHeight) {
|
|
1104
1216
|
const height = this.treeDelegate.getHeight(node);
|
|
1105
|
-
const {
|
|
1217
|
+
const {
|
|
1218
|
+
startIndex,
|
|
1219
|
+
endIndex
|
|
1220
|
+
} = this.getNodeRange(node);
|
|
1106
1221
|
const position = this.calculateStickyNodePosition(endIndex, currentStickyNodesHeight, height);
|
|
1107
|
-
return {
|
|
1222
|
+
return {
|
|
1223
|
+
node,
|
|
1224
|
+
position,
|
|
1225
|
+
height,
|
|
1226
|
+
startIndex,
|
|
1227
|
+
endIndex
|
|
1228
|
+
};
|
|
1108
1229
|
}
|
|
1109
1230
|
getAncestorUnderPrevious(node, previousAncestor = undefined) {
|
|
1110
1231
|
let currentAncestor = node;
|
|
@@ -1155,7 +1276,7 @@ class StickyScrollController extends Disposable {
|
|
|
1155
1276
|
}
|
|
1156
1277
|
const lastConstrainedStickyNode = constrainedStickyNodes[constrainedStickyNodes.length - 1];
|
|
1157
1278
|
if (constrainedStickyNodes.length > this.stickyScrollMaxItemCount || lastConstrainedStickyNode.position + lastConstrainedStickyNode.height > maximumStickyWidgetHeight) {
|
|
1158
|
-
throw ( new Error(
|
|
1279
|
+
throw ( new Error("stickyScrollDelegate violates constraints"));
|
|
1159
1280
|
}
|
|
1160
1281
|
return constrainedStickyNodes;
|
|
1161
1282
|
}
|
|
@@ -1177,11 +1298,14 @@ class StickyScrollController extends Disposable {
|
|
|
1177
1298
|
const nodeLocation = this.model.getNodeLocation(node);
|
|
1178
1299
|
const startIndex = this.model.getListIndex(nodeLocation);
|
|
1179
1300
|
if (startIndex < 0) {
|
|
1180
|
-
throw ( new Error(
|
|
1301
|
+
throw ( new Error("Node not found in tree"));
|
|
1181
1302
|
}
|
|
1182
1303
|
const renderCount = this.model.getListRenderCount(nodeLocation);
|
|
1183
1304
|
const endIndex = startIndex + renderCount - 1;
|
|
1184
|
-
return {
|
|
1305
|
+
return {
|
|
1306
|
+
startIndex,
|
|
1307
|
+
endIndex
|
|
1308
|
+
};
|
|
1185
1309
|
}
|
|
1186
1310
|
nodePositionTopBelowWidget(node) {
|
|
1187
1311
|
const ancestors = [];
|
|
@@ -1219,14 +1343,18 @@ class StickyScrollController extends Disposable {
|
|
|
1219
1343
|
}
|
|
1220
1344
|
validateStickySettings(options) {
|
|
1221
1345
|
let stickyScrollMaxItemCount = 7;
|
|
1222
|
-
if (typeof options.stickyScrollMaxItemCount ===
|
|
1346
|
+
if (typeof options.stickyScrollMaxItemCount === "number") {
|
|
1223
1347
|
stickyScrollMaxItemCount = Math.max(options.stickyScrollMaxItemCount, 1);
|
|
1224
1348
|
}
|
|
1225
|
-
return {
|
|
1349
|
+
return {
|
|
1350
|
+
stickyScrollMaxItemCount
|
|
1351
|
+
};
|
|
1226
1352
|
}
|
|
1227
1353
|
}
|
|
1228
1354
|
class StickyScrollWidget {
|
|
1229
|
-
get state() {
|
|
1355
|
+
get state() {
|
|
1356
|
+
return this._previousState;
|
|
1357
|
+
}
|
|
1230
1358
|
constructor(container, view, tree, treeRenderers, treeDelegate, accessibilityProvider) {
|
|
1231
1359
|
this.view = view;
|
|
1232
1360
|
this.tree = tree;
|
|
@@ -1235,9 +1363,9 @@ class StickyScrollWidget {
|
|
|
1235
1363
|
this.accessibilityProvider = accessibilityProvider;
|
|
1236
1364
|
this._previousElements = [];
|
|
1237
1365
|
this._previousStateDisposables = ( new DisposableStore());
|
|
1238
|
-
this._rootDomNode = $(
|
|
1366
|
+
this._rootDomNode = $(".monaco-tree-sticky-container.empty");
|
|
1239
1367
|
container.appendChild(this._rootDomNode);
|
|
1240
|
-
const shadow = $(
|
|
1368
|
+
const shadow = $(".monaco-tree-sticky-container-shadow");
|
|
1241
1369
|
this._rootDomNode.appendChild(shadow);
|
|
1242
1370
|
this.stickyScrollFocus = ( new StickyScrollFocus(this._rootDomNode, view));
|
|
1243
1371
|
this.onDidChangeHasFocus = this.stickyScrollFocus.onDidChangeHasFocus;
|
|
@@ -1286,7 +1414,10 @@ class StickyScrollWidget {
|
|
|
1286
1414
|
const elements = Array(state.count);
|
|
1287
1415
|
for (let stickyIndex = state.count - 1; stickyIndex >= 0; stickyIndex--) {
|
|
1288
1416
|
const stickyNode = state.stickyNodes[stickyIndex];
|
|
1289
|
-
const {
|
|
1417
|
+
const {
|
|
1418
|
+
element,
|
|
1419
|
+
disposable
|
|
1420
|
+
} = this.createElement(stickyNode, stickyIndex, state.count);
|
|
1290
1421
|
elements[stickyIndex] = element;
|
|
1291
1422
|
this._rootDomNode.appendChild(element);
|
|
1292
1423
|
this._previousStateDisposables.add(disposable);
|
|
@@ -1301,7 +1432,7 @@ class StickyScrollWidget {
|
|
|
1301
1432
|
}
|
|
1302
1433
|
createElement(stickyNode, stickyIndex, stickyNodesTotal) {
|
|
1303
1434
|
const nodeIndex = stickyNode.startIndex;
|
|
1304
|
-
const stickyElement = createElement(
|
|
1435
|
+
const stickyElement = createElement("div");
|
|
1305
1436
|
stickyElement.style.top = `${stickyNode.position}px`;
|
|
1306
1437
|
if (this.tree.options.setRowHeight !== false) {
|
|
1307
1438
|
stickyElement.style.height = `${stickyNode.height}px`;
|
|
@@ -1309,14 +1440,14 @@ class StickyScrollWidget {
|
|
|
1309
1440
|
if (this.tree.options.setRowLineHeight !== false) {
|
|
1310
1441
|
stickyElement.style.lineHeight = `${stickyNode.height}px`;
|
|
1311
1442
|
}
|
|
1312
|
-
stickyElement.classList.add(
|
|
1313
|
-
stickyElement.classList.add(
|
|
1314
|
-
stickyElement.setAttribute(
|
|
1315
|
-
stickyElement.setAttribute(
|
|
1316
|
-
stickyElement.setAttribute(
|
|
1443
|
+
stickyElement.classList.add("monaco-tree-sticky-row");
|
|
1444
|
+
stickyElement.classList.add("monaco-list-row");
|
|
1445
|
+
stickyElement.setAttribute("data-index", `${nodeIndex}`);
|
|
1446
|
+
stickyElement.setAttribute("data-parity", nodeIndex % 2 === 0 ? "even" : "odd");
|
|
1447
|
+
stickyElement.setAttribute("id", this.view.getElementID(nodeIndex));
|
|
1317
1448
|
const accessibilityDisposable = this.setAccessibilityAttributes(stickyElement, stickyNode.node.element, stickyIndex, stickyNodesTotal);
|
|
1318
1449
|
const nodeTemplateId = this.treeDelegate.getTemplateId(stickyNode.node);
|
|
1319
|
-
const renderer = this.treeRenderers.find(
|
|
1450
|
+
const renderer = this.treeRenderers.find(renderer => renderer.templateId === nodeTemplateId);
|
|
1320
1451
|
if (!renderer) {
|
|
1321
1452
|
throw ( new Error(`No renderer found for template id ${nodeTemplateId}`));
|
|
1322
1453
|
}
|
|
@@ -1325,52 +1456,63 @@ class StickyScrollWidget {
|
|
|
1325
1456
|
nodeCopy = ( new Proxy(stickyNode.node, {}));
|
|
1326
1457
|
}
|
|
1327
1458
|
const templateData = renderer.renderTemplate(stickyElement);
|
|
1328
|
-
renderer.renderElement(nodeCopy, stickyNode.startIndex, templateData, {
|
|
1459
|
+
renderer.renderElement(nodeCopy, stickyNode.startIndex, templateData, {
|
|
1460
|
+
height: stickyNode.height
|
|
1461
|
+
});
|
|
1329
1462
|
const disposable = toDisposable(() => {
|
|
1330
1463
|
accessibilityDisposable.dispose();
|
|
1331
|
-
renderer.disposeElement(nodeCopy, stickyNode.startIndex, templateData, {
|
|
1464
|
+
renderer.disposeElement(nodeCopy, stickyNode.startIndex, templateData, {
|
|
1465
|
+
height: stickyNode.height
|
|
1466
|
+
});
|
|
1332
1467
|
renderer.disposeTemplate(templateData);
|
|
1333
1468
|
stickyElement.remove();
|
|
1334
1469
|
});
|
|
1335
|
-
return {
|
|
1470
|
+
return {
|
|
1471
|
+
element: stickyElement,
|
|
1472
|
+
disposable
|
|
1473
|
+
};
|
|
1336
1474
|
}
|
|
1337
1475
|
setAccessibilityAttributes(container, element, stickyIndex, stickyNodesTotal) {
|
|
1338
1476
|
if (!this.accessibilityProvider) {
|
|
1339
1477
|
return Disposable.None;
|
|
1340
1478
|
}
|
|
1341
1479
|
if (this.accessibilityProvider.getSetSize) {
|
|
1342
|
-
container.setAttribute(
|
|
1480
|
+
container.setAttribute("aria-setsize", String(
|
|
1481
|
+
this.accessibilityProvider.getSetSize(element, stickyIndex, stickyNodesTotal)
|
|
1482
|
+
));
|
|
1343
1483
|
}
|
|
1344
1484
|
if (this.accessibilityProvider.getPosInSet) {
|
|
1345
|
-
container.setAttribute(
|
|
1485
|
+
container.setAttribute(
|
|
1486
|
+
"aria-posinset",
|
|
1487
|
+
String(this.accessibilityProvider.getPosInSet(element, stickyIndex))
|
|
1488
|
+
);
|
|
1346
1489
|
}
|
|
1347
1490
|
if (this.accessibilityProvider.getRole) {
|
|
1348
|
-
container.setAttribute(
|
|
1491
|
+
container.setAttribute("role", this.accessibilityProvider.getRole(element) ?? "treeitem");
|
|
1349
1492
|
}
|
|
1350
1493
|
const ariaLabel = this.accessibilityProvider.getAriaLabel(element);
|
|
1351
|
-
const observable = (ariaLabel && typeof ariaLabel !==
|
|
1494
|
+
const observable = (ariaLabel && typeof ariaLabel !== "string") ? ariaLabel : constObservable(ariaLabel);
|
|
1352
1495
|
const result = autorun(reader => {
|
|
1353
1496
|
const value = reader.readObservable(observable);
|
|
1354
1497
|
if (value) {
|
|
1355
|
-
container.setAttribute(
|
|
1356
|
-
}
|
|
1357
|
-
|
|
1358
|
-
container.removeAttribute('aria-label');
|
|
1498
|
+
container.setAttribute("aria-label", value);
|
|
1499
|
+
} else {
|
|
1500
|
+
container.removeAttribute("aria-label");
|
|
1359
1501
|
}
|
|
1360
1502
|
});
|
|
1361
|
-
if (typeof ariaLabel ===
|
|
1362
|
-
|
|
1363
|
-
container.setAttribute(
|
|
1503
|
+
if (typeof ariaLabel === "string")
|
|
1504
|
+
; else if (ariaLabel) {
|
|
1505
|
+
container.setAttribute("aria-label", ariaLabel.get());
|
|
1364
1506
|
}
|
|
1365
1507
|
const ariaLevel = this.accessibilityProvider.getAriaLevel && this.accessibilityProvider.getAriaLevel(element);
|
|
1366
|
-
if (typeof ariaLevel ===
|
|
1367
|
-
container.setAttribute(
|
|
1508
|
+
if (typeof ariaLevel === "number") {
|
|
1509
|
+
container.setAttribute("aria-level", `${ariaLevel}`);
|
|
1368
1510
|
}
|
|
1369
|
-
container.setAttribute(
|
|
1511
|
+
container.setAttribute("aria-selected", String(false));
|
|
1370
1512
|
return result;
|
|
1371
1513
|
}
|
|
1372
1514
|
setVisible(visible) {
|
|
1373
|
-
this._rootDomNode.classList.toggle(
|
|
1515
|
+
this._rootDomNode.classList.toggle("empty", !visible);
|
|
1374
1516
|
if (!visible) {
|
|
1375
1517
|
this.stickyScrollFocus.updateElements([], undefined);
|
|
1376
1518
|
}
|
|
@@ -1391,7 +1533,9 @@ class StickyScrollWidget {
|
|
|
1391
1533
|
}
|
|
1392
1534
|
}
|
|
1393
1535
|
class StickyScrollFocus extends Disposable {
|
|
1394
|
-
get domHasFocus() {
|
|
1536
|
+
get domHasFocus() {
|
|
1537
|
+
return this._domHasFocus;
|
|
1538
|
+
}
|
|
1395
1539
|
set domHasFocus(hasFocus) {
|
|
1396
1540
|
if (hasFocus !== this._domHasFocus) {
|
|
1397
1541
|
this._onDidChangeHasFocus.fire(hasFocus);
|
|
@@ -1409,12 +1553,12 @@ class StickyScrollFocus extends Disposable {
|
|
|
1409
1553
|
this._onContextMenu = ( new Emitter());
|
|
1410
1554
|
this.onContextMenu = this._onContextMenu.event;
|
|
1411
1555
|
this._domHasFocus = false;
|
|
1412
|
-
this._register(addDisposableListener(this.container,
|
|
1413
|
-
this._register(addDisposableListener(this.container,
|
|
1556
|
+
this._register(addDisposableListener(this.container, "focus", () => this.onFocus()));
|
|
1557
|
+
this._register(addDisposableListener(this.container, "blur", () => this.onBlur()));
|
|
1414
1558
|
this._register(this.view.onDidFocus(() => this.toggleStickyScrollFocused(false)));
|
|
1415
|
-
this._register(this.view.onKeyDown(
|
|
1416
|
-
this._register(this.view.onMouseDown(
|
|
1417
|
-
this._register(this.view.onContextMenu(
|
|
1559
|
+
this._register(this.view.onKeyDown(e => this.onKeyDown(e)));
|
|
1560
|
+
this._register(this.view.onMouseDown(e => this.onMouseDown(e)));
|
|
1561
|
+
this._register(this.view.onContextMenu(e => this.handleContextMenu(e)));
|
|
1418
1562
|
}
|
|
1419
1563
|
handleContextMenu(e) {
|
|
1420
1564
|
const target = e.browserEvent.target;
|
|
@@ -1426,12 +1570,12 @@ class StickyScrollFocus extends Disposable {
|
|
|
1426
1570
|
}
|
|
1427
1571
|
if (!isKeyboardEvent(e.browserEvent)) {
|
|
1428
1572
|
if (!this.state) {
|
|
1429
|
-
throw ( new Error(
|
|
1573
|
+
throw ( new Error("Context menu should not be triggered when state is undefined"));
|
|
1430
1574
|
}
|
|
1431
1575
|
const stickyIndex = this.state.stickyNodes.findIndex(stickyNode => stickyNode.node.element === e.element?.element);
|
|
1432
1576
|
if (stickyIndex === -1) {
|
|
1433
1577
|
throw ( new Error(
|
|
1434
|
-
|
|
1578
|
+
"Context menu should not be triggered when element is not in sticky scroll widget"
|
|
1435
1579
|
));
|
|
1436
1580
|
}
|
|
1437
1581
|
this.container.focus();
|
|
@@ -1440,29 +1584,33 @@ class StickyScrollFocus extends Disposable {
|
|
|
1440
1584
|
}
|
|
1441
1585
|
if (!this.state || this.focusedIndex < 0) {
|
|
1442
1586
|
throw ( new Error(
|
|
1443
|
-
|
|
1587
|
+
"Context menu key should not be triggered when focus is not in sticky scroll widget"
|
|
1444
1588
|
));
|
|
1445
1589
|
}
|
|
1446
1590
|
const stickyNode = this.state.stickyNodes[this.focusedIndex];
|
|
1447
1591
|
const element = stickyNode.node.element;
|
|
1448
1592
|
const anchor = this.elements[this.focusedIndex];
|
|
1449
|
-
this._onContextMenu.fire({
|
|
1593
|
+
this._onContextMenu.fire({
|
|
1594
|
+
element,
|
|
1595
|
+
anchor,
|
|
1596
|
+
browserEvent: e.browserEvent,
|
|
1597
|
+
isStickyScroll: true
|
|
1598
|
+
});
|
|
1450
1599
|
}
|
|
1451
1600
|
onKeyDown(e) {
|
|
1452
1601
|
if (this.domHasFocus && this.state) {
|
|
1453
|
-
if (e.key ===
|
|
1602
|
+
if (e.key === "ArrowUp") {
|
|
1454
1603
|
this.setFocusedElement(Math.max(0, this.focusedIndex - 1));
|
|
1455
1604
|
e.preventDefault();
|
|
1456
1605
|
e.stopPropagation();
|
|
1457
1606
|
}
|
|
1458
|
-
else if (e.key ===
|
|
1607
|
+
else if (e.key === "ArrowDown" || e.key === "ArrowRight") {
|
|
1459
1608
|
if (this.focusedIndex >= this.state.count - 1) {
|
|
1460
1609
|
const nodeIndexToFocus = this.state.stickyNodes[this.state.count - 1].startIndex + 1;
|
|
1461
1610
|
this.view.domFocus();
|
|
1462
1611
|
this.view.setFocus([nodeIndexToFocus]);
|
|
1463
1612
|
this.scrollNodeUnderWidget(nodeIndexToFocus, this.state);
|
|
1464
|
-
}
|
|
1465
|
-
else {
|
|
1613
|
+
} else {
|
|
1466
1614
|
this.setFocusedElement(this.focusedIndex + 1);
|
|
1467
1615
|
}
|
|
1468
1616
|
e.preventDefault();
|
|
@@ -1480,10 +1628,10 @@ class StickyScrollFocus extends Disposable {
|
|
|
1480
1628
|
}
|
|
1481
1629
|
updateElements(elements, state) {
|
|
1482
1630
|
if (state && state.count === 0) {
|
|
1483
|
-
throw ( new Error(
|
|
1631
|
+
throw ( new Error("Sticky scroll state must be undefined when there are no sticky nodes"));
|
|
1484
1632
|
}
|
|
1485
1633
|
if (state && state.count !== elements.length) {
|
|
1486
|
-
throw ( new Error(
|
|
1634
|
+
throw ( new Error("Sticky scroll focus received illigel state"));
|
|
1487
1635
|
}
|
|
1488
1636
|
const previousIndex = this.focusedIndex;
|
|
1489
1637
|
this.removeFocus();
|
|
@@ -1492,8 +1640,7 @@ class StickyScrollFocus extends Disposable {
|
|
|
1492
1640
|
if (state) {
|
|
1493
1641
|
const newFocusedIndex = clamp(previousIndex, 0, state.count - 1);
|
|
1494
1642
|
this.setFocus(newFocusedIndex);
|
|
1495
|
-
}
|
|
1496
|
-
else {
|
|
1643
|
+
} else {
|
|
1497
1644
|
if (this.domHasFocus) {
|
|
1498
1645
|
this.view.domFocus();
|
|
1499
1646
|
}
|
|
@@ -1503,7 +1650,7 @@ class StickyScrollFocus extends Disposable {
|
|
|
1503
1650
|
setFocusedElement(stickyIndex) {
|
|
1504
1651
|
const state = this.state;
|
|
1505
1652
|
if (!state) {
|
|
1506
|
-
throw ( new Error(
|
|
1653
|
+
throw ( new Error("Cannot set focus when state is undefined"));
|
|
1507
1654
|
}
|
|
1508
1655
|
this.setFocus(stickyIndex);
|
|
1509
1656
|
if (stickyIndex < state.count - 1) {
|
|
@@ -1529,7 +1676,7 @@ class StickyScrollFocus extends Disposable {
|
|
|
1529
1676
|
}
|
|
1530
1677
|
domFocus() {
|
|
1531
1678
|
if (!this.state) {
|
|
1532
|
-
throw ( new Error(
|
|
1679
|
+
throw ( new Error("Cannot focus when state is undefined"));
|
|
1533
1680
|
}
|
|
1534
1681
|
this.container.focus();
|
|
1535
1682
|
}
|
|
@@ -1537,7 +1684,7 @@ class StickyScrollFocus extends Disposable {
|
|
|
1537
1684
|
if (!this.state) {
|
|
1538
1685
|
return false;
|
|
1539
1686
|
}
|
|
1540
|
-
return this.view.getHTMLElement().classList.contains(
|
|
1687
|
+
return this.view.getHTMLElement().classList.contains("sticky-scroll-focused");
|
|
1541
1688
|
}
|
|
1542
1689
|
removeFocus() {
|
|
1543
1690
|
if (this.focusedIndex === -1) {
|
|
@@ -1548,13 +1695,13 @@ class StickyScrollFocus extends Disposable {
|
|
|
1548
1695
|
}
|
|
1549
1696
|
setFocus(newFocusIndex) {
|
|
1550
1697
|
if (0 > newFocusIndex) {
|
|
1551
|
-
throw ( new Error(
|
|
1698
|
+
throw ( new Error("addFocus() can not remove focus"));
|
|
1552
1699
|
}
|
|
1553
1700
|
if (!this.state && newFocusIndex >= 0) {
|
|
1554
|
-
throw ( new Error(
|
|
1701
|
+
throw ( new Error("Cannot set focus index when state is undefined"));
|
|
1555
1702
|
}
|
|
1556
1703
|
if (this.state && newFocusIndex >= this.state.count) {
|
|
1557
|
-
throw ( new Error(
|
|
1704
|
+
throw ( new Error("Cannot set focus index to an index that does not exist"));
|
|
1558
1705
|
}
|
|
1559
1706
|
const oldIndex = this.focusedIndex;
|
|
1560
1707
|
if (oldIndex >= 0) {
|
|
@@ -1576,17 +1723,17 @@ class StickyScrollFocus extends Disposable {
|
|
|
1576
1723
|
this.toggleElementActiveFocus(this.elements[this.focusedIndex], focused);
|
|
1577
1724
|
}
|
|
1578
1725
|
toggleElementActiveFocus(element, focused) {
|
|
1579
|
-
element.classList.toggle(
|
|
1726
|
+
element.classList.toggle("focused", focused);
|
|
1580
1727
|
}
|
|
1581
1728
|
toggleElementPassiveFocus(element, focused) {
|
|
1582
|
-
element.classList.toggle(
|
|
1729
|
+
element.classList.toggle("passive-focused", focused);
|
|
1583
1730
|
}
|
|
1584
1731
|
toggleStickyScrollFocused(focused) {
|
|
1585
|
-
this.view.getHTMLElement().classList.toggle(
|
|
1732
|
+
this.view.getHTMLElement().classList.toggle("sticky-scroll-focused", focused);
|
|
1586
1733
|
}
|
|
1587
1734
|
onFocus() {
|
|
1588
1735
|
if (!this.state || this.elements.length === 0) {
|
|
1589
|
-
throw ( new Error(
|
|
1736
|
+
throw ( new Error("Cannot focus when state is undefined or elements are empty"));
|
|
1590
1737
|
}
|
|
1591
1738
|
this.domHasFocus = true;
|
|
1592
1739
|
this.toggleStickyScrollFocused(true);
|
|
@@ -1607,13 +1754,11 @@ class StickyScrollFocus extends Disposable {
|
|
|
1607
1754
|
}
|
|
1608
1755
|
function asTreeMouseEvent(event) {
|
|
1609
1756
|
let target = TreeMouseEventTarget.Unknown;
|
|
1610
|
-
if (hasParentWithClass(event.browserEvent.target,
|
|
1757
|
+
if (hasParentWithClass(event.browserEvent.target, "monaco-tl-twistie", "monaco-tl-row")) {
|
|
1611
1758
|
target = TreeMouseEventTarget.Twistie;
|
|
1612
|
-
}
|
|
1613
|
-
else if (hasParentWithClass(event.browserEvent.target, 'monaco-tl-contents', 'monaco-tl-row')) {
|
|
1759
|
+
} else if (hasParentWithClass(event.browserEvent.target, "monaco-tl-contents", "monaco-tl-row")) {
|
|
1614
1760
|
target = TreeMouseEventTarget.Element;
|
|
1615
|
-
}
|
|
1616
|
-
else if (hasParentWithClass(event.browserEvent.target, 'monaco-tree-type-filter', 'monaco-list')) {
|
|
1761
|
+
} else if (hasParentWithClass(event.browserEvent.target, "monaco-tree-type-filter", "monaco-list")) {
|
|
1617
1762
|
target = TreeMouseEventTarget.Filter;
|
|
1618
1763
|
}
|
|
1619
1764
|
return {
|
|
@@ -1662,7 +1807,12 @@ class Trait {
|
|
|
1662
1807
|
this._nodeSet = undefined;
|
|
1663
1808
|
if (!silent) {
|
|
1664
1809
|
const that = this;
|
|
1665
|
-
this._onDidChange.fire({
|
|
1810
|
+
this._onDidChange.fire({
|
|
1811
|
+
get elements() {
|
|
1812
|
+
return that.get();
|
|
1813
|
+
},
|
|
1814
|
+
browserEvent
|
|
1815
|
+
});
|
|
1666
1816
|
}
|
|
1667
1817
|
}
|
|
1668
1818
|
get() {
|
|
@@ -1677,19 +1827,24 @@ class Trait {
|
|
|
1677
1827
|
has(node) {
|
|
1678
1828
|
return ( this.nodeSet.has(node));
|
|
1679
1829
|
}
|
|
1680
|
-
onDidModelSplice(
|
|
1830
|
+
onDidModelSplice(
|
|
1831
|
+
{
|
|
1832
|
+
insertedNodes,
|
|
1833
|
+
deletedNodes
|
|
1834
|
+
}
|
|
1835
|
+
) {
|
|
1681
1836
|
if (!this.identityProvider) {
|
|
1682
1837
|
const set = this.createNodeSet();
|
|
1683
|
-
const visit =
|
|
1838
|
+
const visit = node => set.delete(node);
|
|
1684
1839
|
deletedNodes.forEach(node => dfs(node, visit));
|
|
1685
1840
|
this.set([...( set.values())]);
|
|
1686
1841
|
return;
|
|
1687
1842
|
}
|
|
1688
1843
|
const deletedNodesIdSet = ( new Set());
|
|
1689
|
-
const deletedNodesVisitor =
|
|
1844
|
+
const deletedNodesVisitor = node => deletedNodesIdSet.add(( this.identityProvider.getId(node.element).toString()));
|
|
1690
1845
|
deletedNodes.forEach(node => dfs(node, deletedNodesVisitor));
|
|
1691
1846
|
const insertedNodesMap = ( new Map());
|
|
1692
|
-
const insertedNodesVisitor =
|
|
1847
|
+
const insertedNodesVisitor = node => insertedNodesMap.set(( this.identityProvider.getId(node.element).toString()), node);
|
|
1693
1848
|
insertedNodes.forEach(node => dfs(node, insertedNodesVisitor));
|
|
1694
1849
|
const nodes = [];
|
|
1695
1850
|
for (const node of this.nodes) {
|
|
@@ -1697,8 +1852,7 @@ class Trait {
|
|
|
1697
1852
|
const wasDeleted = ( deletedNodesIdSet.has(id));
|
|
1698
1853
|
if (!wasDeleted) {
|
|
1699
1854
|
nodes.push(node);
|
|
1700
|
-
}
|
|
1701
|
-
else {
|
|
1855
|
+
} else {
|
|
1702
1856
|
const insertedNode = insertedNodesMap.get(id);
|
|
1703
1857
|
if (insertedNode && insertedNode.visible) {
|
|
1704
1858
|
nodes.push(insertedNode);
|
|
@@ -1728,9 +1882,7 @@ class TreeNodeListMouseController extends MouseController {
|
|
|
1728
1882
|
this.stickyScrollProvider = stickyScrollProvider;
|
|
1729
1883
|
}
|
|
1730
1884
|
onViewPointer(e) {
|
|
1731
|
-
if (isButton(e.browserEvent.target) ||
|
|
1732
|
-
isEditableElement(e.browserEvent.target) ||
|
|
1733
|
-
isMonacoEditor(e.browserEvent.target)) {
|
|
1885
|
+
if (isButton(e.browserEvent.target) || isEditableElement(e.browserEvent.target) || isMonacoEditor(e.browserEvent.target)) {
|
|
1734
1886
|
return;
|
|
1735
1887
|
}
|
|
1736
1888
|
if (e.browserEvent.isHandledByList) {
|
|
@@ -1744,17 +1896,14 @@ class TreeNodeListMouseController extends MouseController {
|
|
|
1744
1896
|
return super.onViewPointer(e);
|
|
1745
1897
|
}
|
|
1746
1898
|
const target = e.browserEvent.target;
|
|
1747
|
-
const onTwistie = target.classList.contains(
|
|
1748
|
-
|| (target.classList.contains('monaco-icon-label') && target.classList.contains('folder-icon') && e.browserEvent.offsetX < 16);
|
|
1899
|
+
const onTwistie = target.classList.contains("monaco-tl-twistie") || (target.classList.contains("monaco-icon-label") && target.classList.contains("folder-icon") && e.browserEvent.offsetX < 16);
|
|
1749
1900
|
const isStickyElement = isStickyScrollElement(e.browserEvent.target);
|
|
1750
1901
|
let expandOnlyOnTwistieClick = false;
|
|
1751
1902
|
if (isStickyElement) {
|
|
1752
1903
|
expandOnlyOnTwistieClick = true;
|
|
1753
|
-
}
|
|
1754
|
-
else if (typeof this.tree.expandOnlyOnTwistieClick === 'function') {
|
|
1904
|
+
} else if (typeof this.tree.expandOnlyOnTwistieClick === "function") {
|
|
1755
1905
|
expandOnlyOnTwistieClick = this.tree.expandOnlyOnTwistieClick(node.element);
|
|
1756
|
-
}
|
|
1757
|
-
else {
|
|
1906
|
+
} else {
|
|
1758
1907
|
expandOnlyOnTwistieClick = !!this.tree.expandOnlyOnTwistieClick;
|
|
1759
1908
|
}
|
|
1760
1909
|
if (!isStickyElement) {
|
|
@@ -1764,8 +1913,7 @@ class TreeNodeListMouseController extends MouseController {
|
|
|
1764
1913
|
if (!this.tree.expandOnDoubleClick && e.browserEvent.detail === 2) {
|
|
1765
1914
|
return super.onViewPointer(e);
|
|
1766
1915
|
}
|
|
1767
|
-
}
|
|
1768
|
-
else {
|
|
1916
|
+
} else {
|
|
1769
1917
|
this.handleStickyScrollMouseEvent(e, node);
|
|
1770
1918
|
}
|
|
1771
1919
|
if (node.collapsible && (!isStickyElement || onTwistie)) {
|
|
@@ -1788,7 +1936,7 @@ class TreeNodeListMouseController extends MouseController {
|
|
|
1788
1936
|
}
|
|
1789
1937
|
const stickyScrollController = this.stickyScrollProvider();
|
|
1790
1938
|
if (!stickyScrollController) {
|
|
1791
|
-
throw ( new Error(
|
|
1939
|
+
throw ( new Error("Sticky scroll controller not found"));
|
|
1792
1940
|
}
|
|
1793
1941
|
const nodeIndex = this.list.indexOf(node);
|
|
1794
1942
|
const elementScrollTop = this.list.getElementTop(nodeIndex);
|
|
@@ -1799,7 +1947,7 @@ class TreeNodeListMouseController extends MouseController {
|
|
|
1799
1947
|
this.list.setSelection([nodeIndex]);
|
|
1800
1948
|
}
|
|
1801
1949
|
onDoubleClick(e) {
|
|
1802
|
-
const onTwistie = e.browserEvent.target.classList.contains(
|
|
1950
|
+
const onTwistie = e.browserEvent.target.classList.contains("monaco-tl-twistie");
|
|
1803
1951
|
if (onTwistie || !this.tree.expandOnDoubleClick) {
|
|
1804
1952
|
return;
|
|
1805
1953
|
}
|
|
@@ -1824,7 +1972,16 @@ class TreeNodeListMouseController extends MouseController {
|
|
|
1824
1972
|
}
|
|
1825
1973
|
}
|
|
1826
1974
|
class TreeNodeList extends List {
|
|
1827
|
-
constructor(
|
|
1975
|
+
constructor(
|
|
1976
|
+
user,
|
|
1977
|
+
container,
|
|
1978
|
+
virtualDelegate,
|
|
1979
|
+
renderers,
|
|
1980
|
+
focusTrait,
|
|
1981
|
+
selectionTrait,
|
|
1982
|
+
anchorTrait,
|
|
1983
|
+
options
|
|
1984
|
+
) {
|
|
1828
1985
|
super(user, container, virtualDelegate, renderers, options);
|
|
1829
1986
|
this.focusTrait = focusTrait;
|
|
1830
1987
|
this.selectionTrait = selectionTrait;
|
|
@@ -1858,7 +2015,7 @@ class TreeNodeList extends List {
|
|
|
1858
2015
|
if (additionalSelection.length > 0) {
|
|
1859
2016
|
super.setSelection(distinct([...super.getSelection(), ...additionalSelection]));
|
|
1860
2017
|
}
|
|
1861
|
-
if (typeof anchor ===
|
|
2018
|
+
if (typeof anchor === "number") {
|
|
1862
2019
|
super.setAnchor(anchor);
|
|
1863
2020
|
}
|
|
1864
2021
|
}
|
|
@@ -1877,52 +2034,105 @@ class TreeNodeList extends List {
|
|
|
1877
2034
|
setAnchor(index, fromAPI = false) {
|
|
1878
2035
|
super.setAnchor(index);
|
|
1879
2036
|
if (!fromAPI) {
|
|
1880
|
-
if (typeof index ===
|
|
2037
|
+
if (typeof index === "undefined") {
|
|
1881
2038
|
this.anchorTrait.set([]);
|
|
1882
|
-
}
|
|
1883
|
-
else {
|
|
2039
|
+
} else {
|
|
1884
2040
|
this.anchorTrait.set([this.element(index)]);
|
|
1885
2041
|
}
|
|
1886
2042
|
}
|
|
1887
2043
|
}
|
|
1888
2044
|
}
|
|
1889
2045
|
var AbstractTreePart;
|
|
1890
|
-
(function
|
|
2046
|
+
(function(AbstractTreePart) {
|
|
1891
2047
|
AbstractTreePart[AbstractTreePart["Tree"] = 0] = "Tree";
|
|
1892
2048
|
AbstractTreePart[AbstractTreePart["StickyScroll"] = 1] = "StickyScroll";
|
|
1893
2049
|
})(AbstractTreePart || (AbstractTreePart = {}));
|
|
1894
2050
|
class AbstractTree {
|
|
1895
|
-
get onDidScroll() {
|
|
1896
|
-
|
|
1897
|
-
|
|
1898
|
-
get
|
|
1899
|
-
|
|
1900
|
-
|
|
1901
|
-
get
|
|
1902
|
-
|
|
1903
|
-
|
|
1904
|
-
get
|
|
1905
|
-
|
|
1906
|
-
|
|
1907
|
-
get
|
|
1908
|
-
|
|
1909
|
-
|
|
1910
|
-
get
|
|
1911
|
-
|
|
1912
|
-
|
|
1913
|
-
get
|
|
1914
|
-
|
|
1915
|
-
|
|
1916
|
-
|
|
1917
|
-
|
|
1918
|
-
|
|
1919
|
-
|
|
1920
|
-
this.
|
|
1921
|
-
}
|
|
1922
|
-
get
|
|
1923
|
-
|
|
1924
|
-
|
|
1925
|
-
get
|
|
2051
|
+
get onDidScroll() {
|
|
2052
|
+
return this.view.onDidScroll;
|
|
2053
|
+
}
|
|
2054
|
+
get onDidChangeFocus() {
|
|
2055
|
+
return this.eventBufferer.wrapEvent(this.focus.onDidChange);
|
|
2056
|
+
}
|
|
2057
|
+
get onDidChangeSelection() {
|
|
2058
|
+
return this.eventBufferer.wrapEvent(this.selection.onDidChange);
|
|
2059
|
+
}
|
|
2060
|
+
get onMouseClick() {
|
|
2061
|
+
return ( Event.map(this.view.onMouseClick, asTreeMouseEvent));
|
|
2062
|
+
}
|
|
2063
|
+
get onMouseDblClick() {
|
|
2064
|
+
return Event.filter(( Event.map(this.view.onMouseDblClick, asTreeMouseEvent)), e => e.target !== TreeMouseEventTarget.Filter);
|
|
2065
|
+
}
|
|
2066
|
+
get onMouseMiddleClick() {
|
|
2067
|
+
return Event.filter(( Event.map(this.view.onMouseMiddleClick, asTreeMouseEvent)), e => e.target !== TreeMouseEventTarget.Filter);
|
|
2068
|
+
}
|
|
2069
|
+
get onMouseOver() {
|
|
2070
|
+
return ( Event.map(this.view.onMouseOver, asTreeMouseEvent));
|
|
2071
|
+
}
|
|
2072
|
+
get onMouseOut() {
|
|
2073
|
+
return ( Event.map(this.view.onMouseOut, asTreeMouseEvent));
|
|
2074
|
+
}
|
|
2075
|
+
get onContextMenu() {
|
|
2076
|
+
return Event.any(Event.filter(( Event.map(this.view.onContextMenu, asTreeContextMenuEvent)), e => !e.isStickyScroll), this.stickyScrollController?.onContextMenu ?? Event.None);
|
|
2077
|
+
}
|
|
2078
|
+
get onTap() {
|
|
2079
|
+
return ( Event.map(this.view.onTap, asTreeMouseEvent));
|
|
2080
|
+
}
|
|
2081
|
+
get onPointer() {
|
|
2082
|
+
return ( Event.map(this.view.onPointer, asTreeMouseEvent));
|
|
2083
|
+
}
|
|
2084
|
+
get onKeyDown() {
|
|
2085
|
+
return this.view.onKeyDown;
|
|
2086
|
+
}
|
|
2087
|
+
get onKeyUp() {
|
|
2088
|
+
return this.view.onKeyUp;
|
|
2089
|
+
}
|
|
2090
|
+
get onKeyPress() {
|
|
2091
|
+
return this.view.onKeyPress;
|
|
2092
|
+
}
|
|
2093
|
+
get onDidFocus() {
|
|
2094
|
+
return this.view.onDidFocus;
|
|
2095
|
+
}
|
|
2096
|
+
get onDidBlur() {
|
|
2097
|
+
return this.view.onDidBlur;
|
|
2098
|
+
}
|
|
2099
|
+
get onDidChangeModel() {
|
|
2100
|
+
return Event.any(this.onDidChangeModelRelay.event, this.onDidSwapModel.event);
|
|
2101
|
+
}
|
|
2102
|
+
get onDidChangeCollapseState() {
|
|
2103
|
+
return this.onDidChangeCollapseStateRelay.event;
|
|
2104
|
+
}
|
|
2105
|
+
get onDidChangeRenderNodeCount() {
|
|
2106
|
+
return this.onDidChangeRenderNodeCountRelay.event;
|
|
2107
|
+
}
|
|
2108
|
+
get findMode() {
|
|
2109
|
+
return this.findController?.mode ?? TreeFindMode.Highlight;
|
|
2110
|
+
}
|
|
2111
|
+
set findMode(findMode) {
|
|
2112
|
+
if (this.findController) {
|
|
2113
|
+
this.findController.mode = findMode;
|
|
2114
|
+
}
|
|
2115
|
+
}
|
|
2116
|
+
get findMatchType() {
|
|
2117
|
+
return this.findController?.matchType ?? TreeFindMatchType.Fuzzy;
|
|
2118
|
+
}
|
|
2119
|
+
set findMatchType(findFuzzy) {
|
|
2120
|
+
if (this.findController) {
|
|
2121
|
+
this.findController.matchType = findFuzzy;
|
|
2122
|
+
}
|
|
2123
|
+
}
|
|
2124
|
+
get onDidChangeFindPattern() {
|
|
2125
|
+
return this.findController ? this.findController.onDidChangePattern : Event.None;
|
|
2126
|
+
}
|
|
2127
|
+
get expandOnDoubleClick() {
|
|
2128
|
+
return typeof this._options.expandOnDoubleClick === "undefined" ? true : this._options.expandOnDoubleClick;
|
|
2129
|
+
}
|
|
2130
|
+
get expandOnlyOnTwistieClick() {
|
|
2131
|
+
return typeof this._options.expandOnlyOnTwistieClick === "undefined" ? true : this._options.expandOnlyOnTwistieClick;
|
|
2132
|
+
}
|
|
2133
|
+
get onDidDispose() {
|
|
2134
|
+
return this.view.onDidDispose;
|
|
2135
|
+
}
|
|
1926
2136
|
constructor(_user, container, delegate, renderers, _options = {}) {
|
|
1927
2137
|
this._user = _user;
|
|
1928
2138
|
this._options = _options;
|
|
@@ -1947,7 +2157,10 @@ class AbstractTree {
|
|
|
1947
2157
|
_options.filter,
|
|
1948
2158
|
_options.defaultFindVisibility
|
|
1949
2159
|
));
|
|
1950
|
-
_options = {
|
|
2160
|
+
_options = {
|
|
2161
|
+
..._options,
|
|
2162
|
+
filter: this.findFilter
|
|
2163
|
+
};
|
|
1951
2164
|
this.disposables.add(this.findFilter);
|
|
1952
2165
|
}
|
|
1953
2166
|
this.model = this.createModel(_user, _options);
|
|
@@ -1976,12 +2189,15 @@ class AbstractTree {
|
|
|
1976
2189
|
this.focus,
|
|
1977
2190
|
this.selection,
|
|
1978
2191
|
this.anchor,
|
|
1979
|
-
{
|
|
2192
|
+
{
|
|
2193
|
+
...asListOptions(() => this.model, this.disposables, _options),
|
|
2194
|
+
tree: this,
|
|
2195
|
+
stickyScrollProvider: () => this.stickyScrollController
|
|
2196
|
+
}
|
|
1980
2197
|
));
|
|
1981
2198
|
this.setupModel(this.model);
|
|
1982
2199
|
if (_options.keyboardSupport !== false) {
|
|
1983
|
-
const onKeyDown = Event.chain(this.view.onKeyDown, $ => ( $.filter(e => !isEditableElement(e.target))
|
|
1984
|
-
.map(e => ( new StandardKeyboardEvent(e)))));
|
|
2200
|
+
const onKeyDown = Event.chain(this.view.onKeyDown, $ => ( $.filter(e => !isEditableElement(e.target)).map(e => ( new StandardKeyboardEvent(e)))));
|
|
1985
2201
|
Event.chain(onKeyDown, $ => $.filter(e => e.keyCode === KeyCode.LeftArrow))(this.onLeftArrow, this, this.disposables);
|
|
1986
2202
|
Event.chain(onKeyDown, $ => $.filter(e => e.keyCode === KeyCode.RightArrow))(this.onRightArrow, this, this.disposables);
|
|
1987
2203
|
Event.chain(onKeyDown, $ => $.filter(e => e.keyCode === KeyCode.Space))(this.onSpace, this, this.disposables);
|
|
@@ -1991,15 +2207,14 @@ class AbstractTree {
|
|
|
1991
2207
|
styles: _options.findWidgetStyles,
|
|
1992
2208
|
defaultFindMode: _options.defaultFindMode,
|
|
1993
2209
|
defaultFindMatchType: _options.defaultFindMatchType,
|
|
1994
|
-
showNotFoundMessage: _options.showNotFoundMessage
|
|
2210
|
+
showNotFoundMessage: _options.showNotFoundMessage
|
|
1995
2211
|
};
|
|
1996
2212
|
this.findController = this.disposables.add(( new FindController(this, this.findFilter, _options.contextViewProvider, findOptions)));
|
|
1997
2213
|
this.focusNavigationFilter = node => this.findController.shouldAllowFocus(node);
|
|
1998
2214
|
this.onDidChangeFindOpenState = this.findController.onDidChangeOpenState;
|
|
1999
2215
|
this.onDidChangeFindMode = this.findController.onDidChangeMode;
|
|
2000
2216
|
this.onDidChangeFindMatchType = this.findController.onDidChangeMatchType;
|
|
2001
|
-
}
|
|
2002
|
-
else {
|
|
2217
|
+
} else {
|
|
2003
2218
|
this.onDidChangeFindMode = Event.None;
|
|
2004
2219
|
this.onDidChangeFindMatchType = Event.None;
|
|
2005
2220
|
}
|
|
@@ -2008,10 +2223,13 @@ class AbstractTree {
|
|
|
2008
2223
|
this.onDidChangeStickyScrollFocused = this.stickyScrollController.onDidChangeHasFocus;
|
|
2009
2224
|
}
|
|
2010
2225
|
this.styleElement = createStyleSheet(this.view.getHTMLElement());
|
|
2011
|
-
this.getHTMLElement().classList.toggle(
|
|
2226
|
+
this.getHTMLElement().classList.toggle("always", this._options.renderIndentGuides === RenderIndentGuides.Always);
|
|
2012
2227
|
}
|
|
2013
2228
|
updateOptions(optionsUpdate = {}) {
|
|
2014
|
-
this._options = {
|
|
2229
|
+
this._options = {
|
|
2230
|
+
...this._options,
|
|
2231
|
+
...optionsUpdate
|
|
2232
|
+
};
|
|
2015
2233
|
for (const renderer of this.renderers) {
|
|
2016
2234
|
renderer.updateOptions(optionsUpdate);
|
|
2017
2235
|
}
|
|
@@ -2019,7 +2237,7 @@ class AbstractTree {
|
|
|
2019
2237
|
this.findController?.updateOptions(optionsUpdate);
|
|
2020
2238
|
this.updateStickyScroll(optionsUpdate);
|
|
2021
2239
|
this._onDidUpdateOptions.fire(this._options);
|
|
2022
|
-
this.getHTMLElement().classList.toggle(
|
|
2240
|
+
this.getHTMLElement().classList.toggle("always", this._options.renderIndentGuides === RenderIndentGuides.Always);
|
|
2023
2241
|
}
|
|
2024
2242
|
get options() {
|
|
2025
2243
|
return this._options;
|
|
@@ -2035,8 +2253,7 @@ class AbstractTree {
|
|
|
2035
2253
|
this._options
|
|
2036
2254
|
));
|
|
2037
2255
|
this.onDidChangeStickyScrollFocused = this.stickyScrollController.onDidChangeHasFocus;
|
|
2038
|
-
}
|
|
2039
|
-
else if (this.stickyScrollController && !this._options.enableStickyScroll) {
|
|
2256
|
+
} else if (this.stickyScrollController && !this._options.enableStickyScroll) {
|
|
2040
2257
|
this.onDidChangeStickyScrollFocused = Event.None;
|
|
2041
2258
|
this.stickyScrollController.dispose();
|
|
2042
2259
|
this.stickyScrollController = undefined;
|
|
@@ -2111,8 +2328,7 @@ class AbstractTree {
|
|
|
2111
2328
|
domFocus() {
|
|
2112
2329
|
if (this.stickyScrollController?.focusedLast()) {
|
|
2113
2330
|
this.stickyScrollController.domFocus();
|
|
2114
|
-
}
|
|
2115
|
-
else {
|
|
2331
|
+
} else {
|
|
2116
2332
|
this.view.domFocus();
|
|
2117
2333
|
}
|
|
2118
2334
|
}
|
|
@@ -2126,37 +2342,70 @@ class AbstractTree {
|
|
|
2126
2342
|
const suffix = `.${this.view.domId}`;
|
|
2127
2343
|
const content = [];
|
|
2128
2344
|
if (styles.treeIndentGuidesStroke) {
|
|
2129
|
-
content.push(
|
|
2130
|
-
|
|
2345
|
+
content.push(
|
|
2346
|
+
`.monaco-list${suffix}:hover .monaco-tl-indent > .indent-guide, .monaco-list${suffix}.always .monaco-tl-indent > .indent-guide { opacity: 1; border-color: ${styles.treeInactiveIndentGuidesStroke}; }`
|
|
2347
|
+
);
|
|
2348
|
+
content.push(
|
|
2349
|
+
`.monaco-list${suffix} .monaco-tl-indent > .indent-guide.active { opacity: 1; border-color: ${styles.treeIndentGuidesStroke}; }`
|
|
2350
|
+
);
|
|
2131
2351
|
}
|
|
2132
2352
|
const stickyScrollBackground = styles.treeStickyScrollBackground ?? styles.listBackground;
|
|
2133
2353
|
if (stickyScrollBackground) {
|
|
2134
|
-
content.push(
|
|
2135
|
-
|
|
2354
|
+
content.push(
|
|
2355
|
+
`.monaco-list${suffix} .monaco-scrollable-element .monaco-tree-sticky-container { background-color: ${stickyScrollBackground}; }`
|
|
2356
|
+
);
|
|
2357
|
+
content.push(
|
|
2358
|
+
`.monaco-list${suffix} .monaco-scrollable-element .monaco-tree-sticky-container .monaco-tree-sticky-row { background-color: ${stickyScrollBackground}; }`
|
|
2359
|
+
);
|
|
2136
2360
|
}
|
|
2137
2361
|
if (styles.treeStickyScrollBorder) {
|
|
2138
|
-
content.push(
|
|
2362
|
+
content.push(
|
|
2363
|
+
`.monaco-list${suffix} .monaco-scrollable-element .monaco-tree-sticky-container { border-bottom: 1px solid ${styles.treeStickyScrollBorder}; }`
|
|
2364
|
+
);
|
|
2139
2365
|
}
|
|
2140
2366
|
if (styles.treeStickyScrollShadow) {
|
|
2141
|
-
content.push(
|
|
2367
|
+
content.push(
|
|
2368
|
+
`.monaco-list${suffix} .monaco-scrollable-element .monaco-tree-sticky-container .monaco-tree-sticky-container-shadow { box-shadow: ${styles.treeStickyScrollShadow} 0 6px 6px -6px inset; height: 3px; }`
|
|
2369
|
+
);
|
|
2142
2370
|
}
|
|
2143
2371
|
if (styles.listFocusForeground) {
|
|
2144
|
-
content.push(
|
|
2145
|
-
|
|
2146
|
-
|
|
2147
|
-
|
|
2372
|
+
content.push(
|
|
2373
|
+
`.monaco-list${suffix}.sticky-scroll-focused .monaco-scrollable-element .monaco-tree-sticky-container:focus .monaco-list-row.focused { color: ${styles.listFocusForeground}; }`
|
|
2374
|
+
);
|
|
2375
|
+
content.push(
|
|
2376
|
+
`.monaco-list${suffix}:not(.sticky-scroll-focused) .monaco-scrollable-element .monaco-tree-sticky-container .monaco-list-row.focused { color: inherit; }`
|
|
2377
|
+
);
|
|
2378
|
+
}
|
|
2379
|
+
const focusAndSelectionOutline = asCssValueWithDefault(
|
|
2380
|
+
styles.listFocusAndSelectionOutline,
|
|
2381
|
+
asCssValueWithDefault(styles.listSelectionOutline, styles.listFocusOutline ?? "")
|
|
2382
|
+
);
|
|
2148
2383
|
if (focusAndSelectionOutline) {
|
|
2149
|
-
content.push(
|
|
2150
|
-
|
|
2384
|
+
content.push(
|
|
2385
|
+
`.monaco-list${suffix}.sticky-scroll-focused .monaco-scrollable-element .monaco-tree-sticky-container:focus .monaco-list-row.focused.selected { outline: 1px solid ${focusAndSelectionOutline}; outline-offset: -1px;}`
|
|
2386
|
+
);
|
|
2387
|
+
content.push(
|
|
2388
|
+
`.monaco-list${suffix}:not(.sticky-scroll-focused) .monaco-scrollable-element .monaco-tree-sticky-container .monaco-list-row.focused.selected { outline: inherit;}`
|
|
2389
|
+
);
|
|
2151
2390
|
}
|
|
2152
2391
|
if (styles.listFocusOutline) {
|
|
2153
|
-
content.push(
|
|
2154
|
-
|
|
2155
|
-
|
|
2156
|
-
content.push(
|
|
2157
|
-
|
|
2158
|
-
|
|
2159
|
-
|
|
2392
|
+
content.push(
|
|
2393
|
+
`.monaco-list${suffix}.sticky-scroll-focused .monaco-scrollable-element .monaco-tree-sticky-container:focus .monaco-list-row.focused { outline: 1px solid ${styles.listFocusOutline}; outline-offset: -1px; }`
|
|
2394
|
+
);
|
|
2395
|
+
content.push(
|
|
2396
|
+
`.monaco-list${suffix}:not(.sticky-scroll-focused) .monaco-scrollable-element .monaco-tree-sticky-container .monaco-list-row.focused { outline: inherit; }`
|
|
2397
|
+
);
|
|
2398
|
+
content.push(
|
|
2399
|
+
`.context-menu-visible .monaco-list${suffix}.last-focused.sticky-scroll-focused .monaco-scrollable-element .monaco-tree-sticky-container .monaco-list-row.passive-focused { outline: 1px solid ${styles.listFocusOutline}; outline-offset: -1px; }`
|
|
2400
|
+
);
|
|
2401
|
+
content.push(
|
|
2402
|
+
`.context-menu-visible .monaco-list${suffix}.last-focused.sticky-scroll-focused .monaco-list-rows .monaco-list-row.focused { outline: inherit; }`
|
|
2403
|
+
);
|
|
2404
|
+
content.push(
|
|
2405
|
+
`.context-menu-visible .monaco-list${suffix}.last-focused:not(.sticky-scroll-focused) .monaco-tree-sticky-container .monaco-list-rows .monaco-list-row.focused { outline: inherit; }`
|
|
2406
|
+
);
|
|
2407
|
+
}
|
|
2408
|
+
this.styleElement.textContent = content.join("\n");
|
|
2160
2409
|
this.view.style(styles);
|
|
2161
2410
|
}
|
|
2162
2411
|
getParentElement(location) {
|
|
@@ -2214,7 +2463,7 @@ class AbstractTree {
|
|
|
2214
2463
|
this.model.refilter();
|
|
2215
2464
|
}
|
|
2216
2465
|
setAnchor(element) {
|
|
2217
|
-
if (typeof element ===
|
|
2466
|
+
if (typeof element === "undefined") {
|
|
2218
2467
|
return this.view.setAnchor(undefined);
|
|
2219
2468
|
}
|
|
2220
2469
|
this.eventBufferer.bufferEvents(() => {
|
|
@@ -2248,22 +2497,44 @@ class AbstractTree {
|
|
|
2248
2497
|
this.view.setFocus(indexes, browserEvent, true);
|
|
2249
2498
|
});
|
|
2250
2499
|
}
|
|
2251
|
-
focusNext(
|
|
2500
|
+
focusNext(
|
|
2501
|
+
n = 1,
|
|
2502
|
+
loop = false,
|
|
2503
|
+
browserEvent,
|
|
2504
|
+
filter = (isKeyboardEvent(browserEvent) && browserEvent.altKey) ? undefined : this.focusNavigationFilter
|
|
2505
|
+
) {
|
|
2252
2506
|
this.view.focusNext(n, loop, browserEvent, filter);
|
|
2253
2507
|
}
|
|
2254
|
-
focusPrevious(
|
|
2508
|
+
focusPrevious(
|
|
2509
|
+
n = 1,
|
|
2510
|
+
loop = false,
|
|
2511
|
+
browserEvent,
|
|
2512
|
+
filter = (isKeyboardEvent(browserEvent) && browserEvent.altKey) ? undefined : this.focusNavigationFilter
|
|
2513
|
+
) {
|
|
2255
2514
|
this.view.focusPrevious(n, loop, browserEvent, filter);
|
|
2256
2515
|
}
|
|
2257
|
-
focusNextPage(
|
|
2516
|
+
focusNextPage(
|
|
2517
|
+
browserEvent,
|
|
2518
|
+
filter = (isKeyboardEvent(browserEvent) && browserEvent.altKey) ? undefined : this.focusNavigationFilter
|
|
2519
|
+
) {
|
|
2258
2520
|
return this.view.focusNextPage(browserEvent, filter);
|
|
2259
2521
|
}
|
|
2260
|
-
focusPreviousPage(
|
|
2522
|
+
focusPreviousPage(
|
|
2523
|
+
browserEvent,
|
|
2524
|
+
filter = (isKeyboardEvent(browserEvent) && browserEvent.altKey) ? undefined : this.focusNavigationFilter
|
|
2525
|
+
) {
|
|
2261
2526
|
return this.view.focusPreviousPage(browserEvent, filter, () => this.stickyScrollController?.height ?? 0);
|
|
2262
2527
|
}
|
|
2263
|
-
focusLast(
|
|
2528
|
+
focusLast(
|
|
2529
|
+
browserEvent,
|
|
2530
|
+
filter = (isKeyboardEvent(browserEvent) && browserEvent.altKey) ? undefined : this.focusNavigationFilter
|
|
2531
|
+
) {
|
|
2264
2532
|
this.view.focusLast(browserEvent, filter);
|
|
2265
2533
|
}
|
|
2266
|
-
focusFirst(
|
|
2534
|
+
focusFirst(
|
|
2535
|
+
browserEvent,
|
|
2536
|
+
filter = (isKeyboardEvent(browserEvent) && browserEvent.altKey) ? undefined : this.focusNavigationFilter
|
|
2537
|
+
) {
|
|
2267
2538
|
this.view.focusFirst(browserEvent, filter);
|
|
2268
2539
|
}
|
|
2269
2540
|
getFocus() {
|
|
@@ -2284,8 +2555,7 @@ class AbstractTree {
|
|
|
2284
2555
|
}
|
|
2285
2556
|
if (!this.stickyScrollController) {
|
|
2286
2557
|
this.view.reveal(index, relativeTop);
|
|
2287
|
-
}
|
|
2288
|
-
else {
|
|
2558
|
+
} else {
|
|
2289
2559
|
const paddingTop = this.stickyScrollController.nodePositionTopBelowWidget(this.getNode(location));
|
|
2290
2560
|
this.view.reveal(index, relativeTop, paddingTop);
|
|
2291
2561
|
}
|
|
@@ -2300,9 +2570,9 @@ class AbstractTree {
|
|
|
2300
2570
|
}
|
|
2301
2571
|
getViewState(identityProvider = this.options.identityProvider) {
|
|
2302
2572
|
if (!identityProvider) {
|
|
2303
|
-
throw ( new TreeError(this._user,
|
|
2573
|
+
throw ( new TreeError(this._user, "Can't get tree view state without an identity provider"));
|
|
2304
2574
|
}
|
|
2305
|
-
const getId =
|
|
2575
|
+
const getId = element => ( identityProvider.getId(element).toString());
|
|
2306
2576
|
const state = AbstractTreeViewState.empty(this.scrollTop);
|
|
2307
2577
|
for (const focus of this.getFocus()) {
|
|
2308
2578
|
state.focus.add(getId(focus));
|
|
@@ -2375,7 +2645,13 @@ class AbstractTree {
|
|
|
2375
2645
|
}
|
|
2376
2646
|
setupModel(model) {
|
|
2377
2647
|
this.modelDisposables.clear();
|
|
2378
|
-
this.modelDisposables.add(model.onDidSpliceRenderedNodes((
|
|
2648
|
+
this.modelDisposables.add(model.onDidSpliceRenderedNodes((
|
|
2649
|
+
{
|
|
2650
|
+
start,
|
|
2651
|
+
deleteCount,
|
|
2652
|
+
elements
|
|
2653
|
+
}
|
|
2654
|
+
) => this.view.splice(start, deleteCount, elements)));
|
|
2379
2655
|
const onDidModelSplice = Event.forEach(model.onDidSpliceModel, e => {
|
|
2380
2656
|
this.eventBufferer.bufferEvents(() => {
|
|
2381
2657
|
this.focus.onDidModelSplice(e);
|
|
@@ -2385,23 +2661,36 @@ class AbstractTree {
|
|
|
2385
2661
|
onDidModelSplice(() => null, null, this.modelDisposables);
|
|
2386
2662
|
const activeNodesEmitter = this.modelDisposables.add(( new Emitter()));
|
|
2387
2663
|
const activeNodesDebounce = this.modelDisposables.add(( new Delayer(0)));
|
|
2388
|
-
this.modelDisposables.add(
|
|
2389
|
-
|
|
2390
|
-
|
|
2391
|
-
|
|
2392
|
-
|
|
2393
|
-
|
|
2394
|
-
|
|
2395
|
-
|
|
2396
|
-
|
|
2397
|
-
|
|
2398
|
-
|
|
2399
|
-
|
|
2664
|
+
this.modelDisposables.add(
|
|
2665
|
+
Event.any(onDidModelSplice, this.focus.onDidChange, this.selection.onDidChange)(() => {
|
|
2666
|
+
activeNodesDebounce.trigger(() => {
|
|
2667
|
+
const set = ( new Set());
|
|
2668
|
+
for (const node of this.focus.getNodes()) {
|
|
2669
|
+
set.add(node);
|
|
2670
|
+
}
|
|
2671
|
+
for (const node of this.selection.getNodes()) {
|
|
2672
|
+
set.add(node);
|
|
2673
|
+
}
|
|
2674
|
+
activeNodesEmitter.fire([...( set.values())]);
|
|
2675
|
+
});
|
|
2676
|
+
})
|
|
2677
|
+
);
|
|
2400
2678
|
this.onDidChangeActiveNodesRelay.input = activeNodesEmitter.event;
|
|
2401
2679
|
this.onDidChangeModelRelay.input = Event.signal(model.onDidSpliceModel);
|
|
2402
2680
|
this.onDidChangeCollapseStateRelay.input = model.onDidChangeCollapseState;
|
|
2403
2681
|
this.onDidChangeRenderNodeCountRelay.input = model.onDidChangeRenderNodeCount;
|
|
2404
2682
|
this.onDidSpliceModelRelay.input = model.onDidSpliceModel;
|
|
2683
|
+
if (isMacintosh) {
|
|
2684
|
+
this.modelDisposables.add(model.onDidChangeCollapseState(e => {
|
|
2685
|
+
const {
|
|
2686
|
+
node,
|
|
2687
|
+
deep
|
|
2688
|
+
} = e;
|
|
2689
|
+
if (node.collapsible && !deep && this.isDOMFocused()) {
|
|
2690
|
+
alert(node.collapsed ? ( localize(40, "collapsed")) : ( localize(41, "expanded")));
|
|
2691
|
+
}
|
|
2692
|
+
}));
|
|
2693
|
+
}
|
|
2405
2694
|
}
|
|
2406
2695
|
navigate(start) {
|
|
2407
2696
|
return ( new TreeNavigator(this.view, this.model, start));
|
|
@@ -2422,8 +2711,7 @@ class TreeNavigator {
|
|
|
2422
2711
|
this.model = model;
|
|
2423
2712
|
if (start) {
|
|
2424
2713
|
this.index = this.model.getListIndex(start);
|
|
2425
|
-
}
|
|
2426
|
-
else {
|
|
2714
|
+
} else {
|
|
2427
2715
|
this.index = -1;
|
|
2428
2716
|
}
|
|
2429
2717
|
}
|