@codingame/monaco-vscode-api 5.2.0 → 6.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -0
- package/api.js +1 -1
- package/extensions.d.ts +4 -4
- package/localExtensionHost.js +2 -1
- package/missing-services.js +77 -22
- package/package.json +8 -8
- package/service-override/dialogs.d.ts +1 -8
- package/service-override/search.d.ts +1 -8
- package/service-override/tools/editor.js +11 -2
- package/service-override/userDataProfile.d.ts +5 -0
- package/services.js +2 -2
- package/vscode/src/vs/base/browser/canIUse.js +10 -4
- package/vscode/src/vs/base/browser/deviceAccess.js +60 -0
- package/vscode/src/vs/base/browser/dom.js +25 -9
- package/vscode/src/vs/base/browser/formattedTextRenderer.js +36 -24
- package/vscode/src/vs/base/browser/keyboardEvent.js +24 -24
- package/vscode/src/vs/base/browser/markdownRenderer.js +130 -30
- package/vscode/src/vs/base/browser/performance.js +24 -18
- package/vscode/src/vs/base/browser/ui/actionbar/actionbar.js +22 -16
- package/vscode/src/vs/base/browser/ui/breadcrumbs/breadcrumbsWidget.js +3 -2
- package/vscode/src/vs/base/browser/ui/button/button.js +19 -7
- package/vscode/src/vs/base/browser/ui/codicons/codicon/codicon.css.js +1 -1
- package/vscode/src/vs/base/browser/ui/contextview/contextview.js +43 -17
- package/vscode/src/vs/base/browser/ui/dialog/dialog.js +7 -6
- package/vscode/src/vs/base/browser/ui/dropdown/dropdown.js +4 -2
- package/vscode/src/vs/base/browser/ui/dropdown/dropdownActionViewItem.js +3 -2
- package/vscode/src/vs/base/browser/ui/findinput/findInput.js +5 -4
- package/vscode/src/vs/base/browser/ui/findinput/replaceInput.js +5 -4
- package/vscode/src/vs/base/browser/ui/hover/hover.d.ts +5 -0
- package/vscode/src/vs/base/browser/ui/hover/hoverDelegate2.js +1 -0
- package/vscode/src/vs/base/browser/ui/hover/hoverWidget.css.js +1 -1
- package/vscode/src/vs/base/browser/ui/hover/hoverWidget.js +10 -6
- package/vscode/src/vs/base/browser/ui/iconLabel/iconLabel.js +16 -1
- package/vscode/src/vs/base/browser/ui/iconLabel/iconlabel.css.js +1 -1
- package/vscode/src/vs/base/browser/ui/icons/iconSelectBox.js +2 -1
- package/vscode/src/vs/base/browser/ui/inputbox/inputBox.js +17 -9
- package/vscode/src/vs/base/browser/ui/list/list.js +12 -1
- package/vscode/src/vs/base/browser/ui/list/listView.js +19 -11
- package/vscode/src/vs/base/browser/ui/list/listWidget.js +17 -16
- package/vscode/src/vs/base/browser/ui/menu/menu.js +17 -15
- package/vscode/src/vs/base/browser/ui/menu/menubar.js +14 -14
- package/vscode/src/vs/base/browser/ui/resizable/resizable.js +9 -9
- package/vscode/src/vs/base/browser/ui/sash/sash.js +30 -18
- package/vscode/src/vs/base/browser/ui/scrollbar/horizontalScrollbar.js +5 -4
- package/vscode/src/vs/base/browser/ui/scrollbar/scrollableElement.js +3 -3
- package/vscode/src/vs/base/browser/ui/scrollbar/scrollbarVisibilityController.js +3 -2
- package/vscode/src/vs/base/browser/ui/scrollbar/verticalScrollbar.js +3 -2
- package/vscode/src/vs/base/browser/ui/selectBox/selectBox.js +3 -0
- package/vscode/src/vs/base/browser/ui/selectBox/selectBoxCustom.js +25 -20
- package/vscode/src/vs/base/browser/ui/selectBox/selectBoxNative.js +6 -2
- package/vscode/src/vs/base/browser/ui/splitview/paneview.js +26 -24
- package/vscode/src/vs/base/browser/ui/splitview/splitview.js +33 -27
- package/vscode/src/vs/base/browser/ui/table/tableWidget.js +5 -3
- package/vscode/src/vs/base/browser/ui/toggle/toggle.js +4 -2
- package/vscode/src/vs/base/browser/ui/toolbar/toolbar.js +2 -2
- package/vscode/src/vs/base/browser/ui/tree/abstractTree.js +30 -24
- package/vscode/src/vs/base/browser/ui/tree/asyncDataTree.js +7 -7
- package/vscode/src/vs/base/browser/ui/tree/indexTreeModel.js +15 -15
- package/vscode/src/vs/base/browser/ui/tree/tree.js +13 -1
- package/vscode/src/vs/base/common/actions.js +1 -1
- package/vscode/src/vs/base/common/arrays.js +2 -5
- package/vscode/src/vs/base/common/assert.js +7 -2
- package/vscode/src/vs/base/common/async.js +38 -14
- package/vscode/src/vs/base/common/charCode.js +296 -0
- package/vscode/src/vs/base/common/codicons.d.ts +1 -0
- package/vscode/src/vs/base/common/codiconsLibrary.js +1 -0
- package/vscode/src/vs/base/common/color.js +24 -23
- package/vscode/src/vs/base/common/diff/diff.js +15 -10
- package/vscode/src/vs/base/common/event.js +83 -26
- package/vscode/src/vs/base/common/extpath.js +10 -9
- package/vscode/src/vs/base/common/filters.js +40 -32
- package/vscode/src/vs/base/common/fuzzyScorer.js +10 -9
- package/vscode/src/vs/base/common/glob.js +2 -1
- package/vscode/src/vs/base/common/hash.js +15 -10
- package/vscode/src/vs/base/common/htmlContent.js +8 -3
- package/vscode/src/vs/base/common/json.js +323 -149
- package/vscode/src/vs/base/common/jsonErrorMessages.js +10 -9
- package/vscode/src/vs/base/common/jsonFormatter.js +30 -30
- package/vscode/src/vs/base/common/keyCodes.js +591 -249
- package/vscode/src/vs/base/common/keybindingLabels.js +4 -3
- package/vscode/src/vs/base/common/keybindings.js +30 -17
- package/vscode/src/vs/base/common/labels.js +10 -10
- package/vscode/src/vs/base/common/lifecycle.js +5 -0
- package/vscode/src/vs/base/common/map.js +20 -14
- package/vscode/src/vs/base/common/marshalling.js +5 -4
- package/vscode/src/vs/base/common/marshallingIds.js +22 -0
- package/vscode/src/vs/base/common/naturalLanguage/korean.js +213 -129
- package/vscode/src/vs/base/common/network.js +3 -2
- package/vscode/src/vs/base/common/objects.js +8 -1
- package/vscode/src/vs/base/common/observableInternal/autorun.js +19 -13
- package/vscode/src/vs/base/common/observableInternal/base.js +1 -1
- package/vscode/src/vs/base/common/observableInternal/derived.js +35 -19
- package/vscode/src/vs/base/common/observableInternal/utils.js +9 -1
- package/vscode/src/vs/base/common/platform.js +26 -10
- package/vscode/src/vs/base/common/prefixTree.js +3 -0
- package/vscode/src/vs/base/common/processes.js +32 -0
- package/vscode/src/vs/base/common/resources.js +4 -3
- package/vscode/src/vs/base/common/scrollable.js +7 -1
- package/vscode/src/vs/base/common/strings.d.ts +9 -0
- package/vscode/src/vs/base/common/strings.js +94 -47
- package/vscode/src/vs/base/common/ternarySearchTree.js +54 -39
- package/vscode/src/vs/base/common/uint.js +14 -5
- package/vscode/src/vs/base/common/uri.js +41 -39
- package/vscode/src/vs/base/common/uriIpc.js +2 -1
- package/vscode/src/vs/base/common/worker/simpleWorker.js +20 -12
- package/vscode/src/vs/base/parts/ipc/common/ipc.js +77 -55
- package/vscode/src/vs/base/parts/ipc/common/ipc.net.js +108 -51
- package/vscode/src/vs/base/parts/storage/common/storage.js +3 -1
- package/vscode/src/vs/editor/browser/config/charWidthReader.js +10 -4
- package/vscode/src/vs/editor/browser/config/editorConfiguration.js +4 -3
- package/vscode/src/vs/editor/browser/config/fontMeasurements.js +21 -21
- package/vscode/src/vs/editor/browser/controller/mouseHandler.js +28 -25
- package/vscode/src/vs/editor/browser/controller/mouseTarget.js +68 -50
- package/vscode/src/vs/editor/browser/controller/pointerHandler.js +5 -3
- package/vscode/src/vs/editor/browser/controller/textAreaHandler.js +49 -44
- package/vscode/src/vs/editor/browser/controller/textAreaInput.js +8 -6
- package/vscode/src/vs/editor/browser/controller/textAreaState.js +8 -7
- package/vscode/src/vs/editor/browser/coreCommands.js +215 -198
- package/vscode/src/vs/editor/browser/editorBrowser.js +30 -1
- package/vscode/src/vs/editor/browser/editorExtensions.js +19 -10
- package/vscode/src/vs/editor/browser/services/abstractCodeEditorService.js +28 -18
- package/vscode/src/vs/editor/browser/services/editorWorkerService.js +2 -1
- package/vscode/src/vs/editor/browser/services/hoverService/hoverService.js +26 -10
- package/vscode/src/vs/editor/browser/services/hoverService/hoverWidget.js +70 -62
- package/vscode/src/vs/editor/browser/services/hoverService/updatableHoverWidget.js +5 -3
- package/vscode/src/vs/editor/browser/services/markerDecorations.js +2 -2
- package/vscode/src/vs/editor/browser/stableEditorScroll.js +4 -3
- package/vscode/src/vs/editor/browser/view/domLineBreaksComputer.js +27 -21
- package/vscode/src/vs/editor/browser/view/viewController.js +5 -4
- package/vscode/src/vs/editor/browser/view/viewLayer.js +2 -1
- package/vscode/src/vs/editor/browser/view/viewOverlays.js +9 -8
- package/vscode/src/vs/editor/browser/view/viewPart.js +15 -2
- package/vscode/src/vs/editor/browser/view/viewUserInputEvents.js +2 -1
- package/vscode/src/vs/editor/browser/view.js +9 -8
- package/vscode/src/vs/editor/browser/viewParts/blockDecorations/blockDecorations.js +2 -1
- package/vscode/src/vs/editor/browser/viewParts/contentWidgets/contentWidgets.js +47 -20
- package/vscode/src/vs/editor/browser/viewParts/currentLineHighlight/currentLineHighlight.js +7 -6
- package/vscode/src/vs/editor/browser/viewParts/decorations/decorations.js +3 -2
- package/vscode/src/vs/editor/browser/viewParts/editorScrollbar/editorScrollbar.js +19 -17
- package/vscode/src/vs/editor/browser/viewParts/glyphMargin/glyphMargin.js +16 -10
- package/vscode/src/vs/editor/browser/viewParts/indentGuides/indentGuides.js +7 -6
- package/vscode/src/vs/editor/browser/viewParts/lineNumbers/lineNumbers.js +9 -8
- package/vscode/src/vs/editor/browser/viewParts/lines/rangeUtil.js +4 -3
- package/vscode/src/vs/editor/browser/viewParts/lines/viewLine.js +29 -24
- package/vscode/src/vs/editor/browser/viewParts/lines/viewLines.js +35 -31
- package/vscode/src/vs/editor/browser/viewParts/linesDecorations/linesDecorations.js +3 -2
- package/vscode/src/vs/editor/browser/viewParts/margin/margin.js +5 -4
- package/vscode/src/vs/editor/browser/viewParts/minimap/minimap.js +39 -29
- package/vscode/src/vs/editor/browser/viewParts/minimap/minimapCharRenderer.js +9 -9
- package/vscode/src/vs/editor/browser/viewParts/minimap/minimapCharRendererFactory.js +22 -22
- package/vscode/src/vs/editor/browser/viewParts/minimap/minimapCharSheet.js +20 -7
- package/vscode/src/vs/editor/browser/viewParts/overlayWidgets/overlayWidgets.js +41 -20
- package/vscode/src/vs/editor/browser/viewParts/overviewRuler/decorationsOverviewRuler.js +37 -19
- package/vscode/src/vs/editor/browser/viewParts/overviewRuler/overviewRuler.js +7 -6
- package/vscode/src/vs/editor/browser/viewParts/rulers/rulers.js +5 -4
- package/vscode/src/vs/editor/browser/viewParts/scrollDecoration/scrollDecoration.js +4 -3
- package/vscode/src/vs/editor/browser/viewParts/selections/selections.js +33 -26
- package/vscode/src/vs/editor/browser/viewParts/viewCursors/viewCursor.js +9 -9
- package/vscode/src/vs/editor/browser/viewParts/viewCursors/viewCursors.js +22 -21
- package/vscode/src/vs/editor/browser/viewParts/viewZones/viewZones.js +6 -5
- package/vscode/src/vs/editor/browser/viewParts/whitespace/whitespace.js +18 -16
- package/vscode/src/vs/editor/browser/widget/codeEditor/codeEditorContributions.js +12 -11
- package/vscode/src/vs/editor/browser/widget/codeEditor/codeEditorWidget.js +195 -149
- package/vscode/src/vs/editor/browser/widget/diffEditor/commands.js +7 -5
- package/vscode/src/vs/editor/browser/widget/diffEditor/components/accessibleDiffViewer.js +24 -23
- package/vscode/src/vs/editor/browser/widget/diffEditor/components/diffEditorSash.js +47 -35
- package/vscode/src/vs/editor/browser/widget/diffEditor/components/diffEditorViewZones/diffEditorViewZones.js +15 -12
- package/vscode/src/vs/editor/browser/widget/diffEditor/components/diffEditorViewZones/inlineDiffDeletedCodeMargin.js +9 -6
- package/vscode/src/vs/editor/browser/widget/diffEditor/components/diffEditorViewZones/renderLines.js +10 -10
- package/vscode/src/vs/editor/browser/widget/diffEditor/delegatingEditorImpl.js +19 -18
- package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditorOptions.js +7 -6
- package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditorViewModel.js +9 -3
- package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditorWidget.js +26 -9
- package/vscode/src/vs/editor/browser/widget/diffEditor/diffProviderFactoryService.js +2 -2
- package/vscode/src/vs/editor/browser/widget/diffEditor/features/gutterFeature.js +29 -12
- package/vscode/src/vs/editor/browser/widget/diffEditor/features/hideUnchangedRegionsFeature.js +13 -10
- package/vscode/src/vs/editor/browser/widget/diffEditor/features/overviewRulerFeature.js +2 -1
- package/vscode/src/vs/editor/browser/widget/diffEditor/style.css.js +1 -1
- package/vscode/src/vs/editor/browser/widget/diffEditor/utils.js +4 -7
- package/vscode/src/vs/editor/browser/widget/markdownRenderer/browser/markdownRenderer.js +2 -1
- package/vscode/src/vs/editor/browser/widget/multiDiffEditor/multiDiffEditorWidgetImpl.js +49 -39
- package/vscode/src/vs/editor/browser/widget/multiDiffEditor/style.css.js +1 -1
- package/vscode/src/vs/editor/common/commands/replaceCommand.js +2 -2
- package/vscode/src/vs/editor/common/commands/shiftCommand.js +6 -5
- package/vscode/src/vs/editor/common/commands/trimTrailingWhitespaceCommand.js +2 -1
- package/vscode/src/vs/editor/common/config/editorConfigurationSchema.js +2 -2
- package/vscode/src/vs/editor/common/config/editorOptions.d.ts +4 -0
- package/vscode/src/vs/editor/common/config/editorOptions.js +719 -559
- package/vscode/src/vs/editor/common/config/fontInfo.js +8 -8
- package/vscode/src/vs/editor/common/core/characterClassifier.js +8 -3
- package/vscode/src/vs/editor/common/core/cursorColumns.js +3 -2
- package/vscode/src/vs/editor/common/core/eolCounter.js +16 -8
- package/vscode/src/vs/editor/common/core/lineRange.d.ts +0 -9
- package/vscode/src/vs/editor/common/core/lineRange.js +0 -28
- package/vscode/src/vs/editor/common/core/selection.js +12 -7
- package/vscode/src/vs/editor/common/core/wordCharacterClassifier.js +12 -5
- package/vscode/src/vs/editor/common/cursor/cursor.js +34 -31
- package/vscode/src/vs/editor/common/cursor/cursorAtomicMoveOperations.js +17 -10
- package/vscode/src/vs/editor/common/cursor/cursorColumnSelection.js +3 -3
- package/vscode/src/vs/editor/common/cursor/cursorDeleteOperations.js +4 -4
- package/vscode/src/vs/editor/common/cursor/cursorMoveCommands.js +52 -50
- package/vscode/src/vs/editor/common/cursor/cursorMoveOperations.js +14 -12
- package/vscode/src/vs/editor/common/cursor/cursorTypeOperations.js +35 -33
- package/vscode/src/vs/editor/common/cursor/cursorWordOperations.js +79 -65
- package/vscode/src/vs/editor/common/cursor/oneCursor.js +7 -6
- package/vscode/src/vs/editor/common/cursorCommon.js +54 -38
- package/vscode/src/vs/editor/common/cursorEvents.js +11 -0
- package/vscode/src/vs/editor/common/diff/defaultLinesDiffComputer/defaultLinesDiffComputer.js +1 -1
- package/vscode/src/vs/editor/common/diff/defaultLinesDiffComputer/lineSequence.js +2 -1
- package/vscode/src/vs/editor/common/diff/defaultLinesDiffComputer/linesSliceCharSequence.js +43 -30
- package/vscode/src/vs/editor/common/diff/defaultLinesDiffComputer/utils.js +2 -1
- package/vscode/src/vs/editor/common/diff/legacyLinesDiffComputer.js +5 -4
- package/vscode/src/vs/editor/common/editorCommon.js +16 -1
- package/vscode/src/vs/editor/common/encodedTokenAttributes.js +71 -19
- package/vscode/src/vs/editor/common/languages/autoIndent.js +83 -89
- package/vscode/src/vs/editor/common/languages/enterAction.js +10 -20
- package/vscode/src/vs/editor/common/languages/languageConfiguration.js +9 -7
- package/vscode/src/vs/editor/common/languages/languageConfigurationRegistry.js +3 -10
- package/vscode/src/vs/editor/common/languages/linkComputer.js +94 -69
- package/vscode/src/vs/editor/common/languages/nullTokenize.js +6 -5
- package/vscode/src/vs/editor/common/languages/supports/indentRules.js +12 -5
- package/vscode/src/vs/editor/common/languages/supports/indentationLineProcessor.js +150 -0
- package/vscode/src/vs/editor/common/languages/supports/languageBracketsConfiguration.d.ts +2 -0
- package/vscode/src/vs/editor/common/languages/supports/languageBracketsConfiguration.js +5 -0
- package/vscode/src/vs/editor/common/languages/supports/onEnter.js +4 -3
- package/vscode/src/vs/editor/common/languages/supports/richEditBrackets.js +3 -3
- package/vscode/src/vs/editor/common/languages/supports/tokenization.js +25 -24
- package/vscode/src/vs/editor/common/languages/supports.d.ts +5 -1
- package/vscode/src/vs/editor/common/languages/supports.js +13 -1
- package/vscode/src/vs/editor/common/languages/textToHtmlTokenizer.js +14 -12
- package/vscode/src/vs/editor/common/languages.d.ts +6 -15
- package/vscode/src/vs/editor/common/languages.js +204 -113
- package/vscode/src/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/ast.js +18 -10
- package/vscode/src/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/bracketPairsTree.js +18 -16
- package/vscode/src/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/brackets.js +4 -4
- package/vscode/src/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/concat23Trees.js +3 -3
- package/vscode/src/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/parser.js +8 -7
- package/vscode/src/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/tokenizer.js +15 -33
- package/vscode/src/vs/editor/common/model/bracketPairsTextModelPart/fixBrackets.js +5 -4
- package/vscode/src/vs/editor/common/model/editStack.js +6 -4
- package/vscode/src/vs/editor/common/model/indentationGuesser.js +7 -6
- package/vscode/src/vs/editor/common/model/intervalTree.js +119 -71
- package/vscode/src/vs/editor/common/model/pieceTreeTextBuffer/pieceTreeBase.js +17 -16
- package/vscode/src/vs/editor/common/model/pieceTreeTextBuffer/pieceTreeTextBuffer.js +11 -11
- package/vscode/src/vs/editor/common/model/pieceTreeTextBuffer/pieceTreeTextBufferBuilder.js +5 -3
- package/vscode/src/vs/editor/common/model/pieceTreeTextBuffer/rbTreeBase.js +46 -41
- package/vscode/src/vs/editor/common/model/textModel.js +35 -26
- package/vscode/src/vs/editor/common/model/textModelSearch.js +15 -14
- package/vscode/src/vs/editor/common/model/textModelTokens.js +8 -3
- package/vscode/src/vs/editor/common/model/tokenizationTextModelPart.js +8 -5
- package/vscode/src/vs/editor/common/model/utils.js +3 -2
- package/vscode/src/vs/editor/common/model.js +46 -1
- package/vscode/src/vs/editor/common/modelLineProjectionData.js +10 -10
- package/vscode/src/vs/editor/common/services/editorBaseApi.js +5 -5
- package/vscode/src/vs/editor/common/services/findSectionHeaders.js +1 -1
- package/vscode/src/vs/editor/common/services/getIconClasses.js +6 -1
- package/vscode/src/vs/editor/common/services/languageFeatureDebounce.js +2 -2
- package/vscode/src/vs/editor/common/services/languageFeaturesService.js +2 -2
- package/vscode/src/vs/editor/common/services/languagesRegistry.js +4 -3
- package/vscode/src/vs/editor/common/services/markerDecorationsService.js +19 -18
- package/vscode/src/vs/editor/common/services/modelService.js +9 -8
- package/vscode/src/vs/editor/common/services/semanticTokensDto.js +8 -3
- package/vscode/src/vs/editor/common/services/semanticTokensProviderStyling.js +27 -16
- package/vscode/src/vs/editor/common/services/semanticTokensStylingService.js +2 -2
- package/vscode/src/vs/editor/common/services/treeViewsDndService.js +2 -2
- package/vscode/src/vs/editor/common/services/unicodeTextModelHighlighter.js +31 -18
- package/vscode/src/vs/editor/common/standaloneStrings.js +18 -39
- package/vscode/src/vs/editor/common/textModelEvents.js +14 -6
- package/vscode/src/vs/editor/common/tokenizationRegistry.js +3 -2
- package/vscode/src/vs/editor/common/tokenizationTextModelPart.js +6 -0
- package/vscode/src/vs/editor/common/tokens/contiguousTokensStore.js +7 -7
- package/vscode/src/vs/editor/common/tokens/lineTokens.d.ts +12 -1
- package/vscode/src/vs/editor/common/tokens/lineTokens.js +64 -8
- package/vscode/src/vs/editor/common/tokens/sparseMultilineTokens.js +5 -4
- package/vscode/src/vs/editor/common/tokens/sparseTokensStore.js +7 -6
- package/vscode/src/vs/editor/common/viewEventHandler.js +19 -18
- package/vscode/src/vs/editor/common/viewEvents.js +50 -19
- package/vscode/src/vs/editor/common/viewLayout/lineDecorations.js +9 -6
- package/vscode/src/vs/editor/common/viewLayout/linePart.js +12 -3
- package/vscode/src/vs/editor/common/viewLayout/viewLayout.js +25 -23
- package/vscode/src/vs/editor/common/viewLayout/viewLineRenderer.js +97 -72
- package/vscode/src/vs/editor/common/viewModel/minimapTokensColorTracker.js +3 -2
- package/vscode/src/vs/editor/common/viewModel/modelLineProjection.js +2 -1
- package/vscode/src/vs/editor/common/viewModel/monospaceLineBreaksComputer.js +30 -19
- package/vscode/src/vs/editor/common/viewModel/overviewZoneManager.js +5 -1
- package/vscode/src/vs/editor/common/viewModel/viewModelDecorations.js +11 -9
- package/vscode/src/vs/editor/common/viewModel/viewModelImpl.js +42 -38
- package/vscode/src/vs/editor/common/viewModel/viewModelLines.js +15 -8
- package/vscode/src/vs/editor/common/viewModel.js +9 -2
- package/vscode/src/vs/editor/common/viewModelEventDispatcher.js +30 -14
- package/vscode/src/vs/editor/contrib/anchorSelect/browser/anchorSelect.js +12 -10
- package/vscode/src/vs/editor/contrib/bracketMatching/browser/bracketMatching.js +15 -12
- package/vscode/src/vs/editor/contrib/caretOperations/browser/transpose.js +4 -2
- package/vscode/src/vs/editor/contrib/clipboard/browser/clipboard.js +19 -16
- package/vscode/src/vs/editor/contrib/codeAction/browser/codeAction.js +3 -2
- package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionCommands.js +21 -19
- package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionContributions.js +6 -6
- package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionController.js +14 -11
- package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionKeybindingResolver.js +2 -2
- package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionMenu.js +4 -3
- package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionModel.js +19 -17
- package/vscode/src/vs/editor/contrib/codeAction/browser/lightBulbWidget.js +21 -12
- package/vscode/src/vs/editor/contrib/codeAction/common/types.js +10 -4
- package/vscode/src/vs/editor/contrib/codelens/browser/codeLensCache.js +6 -6
- package/vscode/src/vs/editor/contrib/codelens/browser/codelensController.js +14 -13
- package/vscode/src/vs/editor/contrib/codelens/browser/codelensWidget.js +4 -2
- package/vscode/src/vs/editor/contrib/colorPicker/browser/colorContributions.js +8 -5
- package/vscode/src/vs/editor/contrib/colorPicker/browser/colorDetector.js +9 -8
- package/vscode/src/vs/editor/contrib/colorPicker/browser/colorHoverParticipant.js +7 -4
- package/vscode/src/vs/editor/contrib/colorPicker/browser/standaloneColorPickerActions.js +6 -4
- package/vscode/src/vs/editor/contrib/colorPicker/browser/standaloneColorPickerWidget.js +8 -5
- package/vscode/src/vs/editor/contrib/comment/browser/blockCommentCommand.js +5 -4
- package/vscode/src/vs/editor/contrib/comment/browser/comment.js +18 -16
- package/vscode/src/vs/editor/contrib/comment/browser/lineCommentCommand.js +20 -12
- package/vscode/src/vs/editor/contrib/contextmenu/browser/contextmenu.js +23 -18
- package/vscode/src/vs/editor/contrib/cursorUndo/browser/cursorUndo.js +6 -4
- package/vscode/src/vs/editor/contrib/dnd/browser/dnd.js +17 -12
- package/vscode/src/vs/editor/contrib/documentSymbols/browser/outlineModel.js +2 -2
- package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/copyPasteContribution.js +8 -6
- package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/copyPasteController.js +12 -9
- package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/dropIntoEditorContribution.js +10 -8
- package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/dropIntoEditorController.js +4 -3
- package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/postEditWidget.js +76 -34
- package/vscode/src/vs/editor/contrib/editorState/browser/editorState.js +16 -9
- package/vscode/src/vs/editor/contrib/editorState/browser/keybindingCancellation.js +6 -4
- package/vscode/src/vs/editor/contrib/find/browser/findController.js +95 -85
- package/vscode/src/vs/editor/contrib/find/browser/findDecorations.js +10 -8
- package/vscode/src/vs/editor/contrib/find/browser/findModel.js +31 -25
- package/vscode/src/vs/editor/contrib/find/browser/findOptionsWidget.js +2 -1
- package/vscode/src/vs/editor/contrib/find/browser/findState.js +17 -11
- package/vscode/src/vs/editor/contrib/find/browser/findWidget.js +58 -49
- package/vscode/src/vs/editor/contrib/find/browser/replacePattern.js +25 -19
- package/vscode/src/vs/editor/contrib/folding/browser/folding.js +68 -64
- package/vscode/src/vs/editor/contrib/folding/browser/foldingDecorations.js +14 -13
- package/vscode/src/vs/editor/contrib/folding/browser/foldingModel.js +6 -6
- package/vscode/src/vs/editor/contrib/folding/browser/foldingRanges.js +20 -14
- package/vscode/src/vs/editor/contrib/format/browser/format.js +31 -10
- package/vscode/src/vs/editor/contrib/format/browser/formatActions.js +18 -16
- package/vscode/src/vs/editor/contrib/gotoError/browser/gotoError.js +17 -14
- package/vscode/src/vs/editor/contrib/gotoError/browser/gotoErrorWidget.js +8 -5
- package/vscode/src/vs/editor/contrib/gotoError/browser/markerNavigationService.js +2 -2
- package/vscode/src/vs/editor/contrib/gotoSymbol/browser/goToCommands.js +39 -38
- package/vscode/src/vs/editor/contrib/gotoSymbol/browser/goToSymbol.js +13 -3
- package/vscode/src/vs/editor/contrib/gotoSymbol/browser/link/clickLinkGesture.js +9 -7
- package/vscode/src/vs/editor/contrib/gotoSymbol/browser/link/goToDefinitionAtPosition.js +9 -7
- package/vscode/src/vs/editor/contrib/gotoSymbol/browser/peek/referencesController.js +31 -28
- package/vscode/src/vs/editor/contrib/gotoSymbol/browser/peek/referencesWidget.js +8 -4
- package/vscode/src/vs/editor/contrib/gotoSymbol/browser/referencesModel.js +2 -6
- package/vscode/src/vs/editor/contrib/gotoSymbol/browser/symbolNavigation.js +10 -8
- package/vscode/src/vs/editor/contrib/hover/browser/contentHoverComputer.js +4 -2
- package/vscode/src/vs/editor/contrib/hover/browser/contentHoverController.js +31 -12
- package/vscode/src/vs/editor/contrib/hover/browser/contentHoverWidget.js +14 -10
- package/vscode/src/vs/editor/contrib/hover/browser/hover.css.js +1 -1
- package/vscode/src/vs/editor/contrib/hover/browser/hoverAccessibleViews.js +247 -0
- package/vscode/src/vs/editor/contrib/hover/browser/hoverActionIds.js +7 -1
- package/vscode/src/vs/editor/contrib/hover/browser/hoverActions.js +38 -34
- package/vscode/src/vs/editor/contrib/hover/browser/hoverContribution.js +7 -2
- package/vscode/src/vs/editor/contrib/hover/browser/hoverController.js +46 -17
- package/vscode/src/vs/editor/contrib/hover/browser/hoverOperation.js +37 -18
- package/vscode/src/vs/editor/contrib/hover/browser/hoverTypes.js +12 -7
- package/vscode/src/vs/editor/contrib/hover/browser/marginHoverWidget.js +9 -7
- package/vscode/src/vs/editor/contrib/hover/browser/markdownHoverParticipant.js +100 -60
- package/vscode/src/vs/editor/contrib/hover/browser/markerHoverParticipant.js +7 -4
- package/vscode/src/vs/editor/contrib/hover/browser/resizableContentWidget.js +6 -4
- package/vscode/src/vs/editor/contrib/inPlaceReplace/browser/inPlaceReplace.js +10 -11
- package/vscode/src/vs/editor/contrib/indentation/browser/indentation.js +20 -6
- package/vscode/src/vs/editor/contrib/indentation/common/indentation.js +25 -20
- package/vscode/src/vs/editor/contrib/inlayHints/browser/inlayHintsContribution.js +2 -2
- package/vscode/src/vs/editor/contrib/inlayHints/browser/inlayHintsController.js +26 -20
- package/vscode/src/vs/editor/contrib/inlayHints/browser/inlayHintsHover.js +4 -2
- package/vscode/src/vs/editor/contrib/inlayHints/browser/inlayHintsLocations.js +3 -2
- package/vscode/src/vs/editor/contrib/inlineCompletions/browser/commands.js +9 -7
- package/vscode/src/vs/editor/contrib/inlineCompletions/browser/ghostText.js +0 -1
- package/vscode/src/vs/editor/contrib/inlineCompletions/browser/ghostTextWidget.js +19 -18
- package/vscode/src/vs/editor/contrib/inlineCompletions/browser/hoverParticipant.js +9 -7
- package/vscode/src/vs/editor/contrib/inlineCompletions/browser/inlineCompletions.contribution.js +5 -2
- package/vscode/src/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsAccessibleView.js +55 -0
- package/vscode/src/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsController.js +10 -8
- package/vscode/src/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsHintsWidget.js +26 -14
- package/vscode/src/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsModel.js +8 -5
- package/vscode/src/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsSource.js +2 -1
- package/vscode/src/vs/editor/contrib/inlineCompletions/browser/singleTextEdit.js +2 -1
- package/vscode/src/vs/editor/contrib/inlineCompletions/browser/suggestWidgetInlineCompletionProvider.js +2 -2
- package/vscode/src/vs/editor/contrib/inlineEdit/browser/commands.js +12 -10
- package/vscode/src/vs/editor/contrib/inlineEdit/browser/ghostTextWidget.js +3 -2
- package/vscode/src/vs/editor/contrib/inlineEdit/browser/hoverParticipant.js +8 -6
- package/vscode/src/vs/editor/contrib/inlineEdit/browser/inlineEdit.contribution.js +2 -2
- package/vscode/src/vs/editor/contrib/inlineEdit/browser/inlineEditController.js +5 -4
- package/vscode/src/vs/editor/contrib/inlineEdit/browser/inlineEditHintsWidget.js +6 -3
- package/vscode/src/vs/editor/contrib/inlineProgress/browser/inlineProgress.js +7 -4
- package/vscode/src/vs/editor/contrib/lineSelection/browser/lineSelection.js +6 -3
- package/vscode/src/vs/editor/contrib/linesOperations/browser/copyLinesCommand.js +2 -2
- package/vscode/src/vs/editor/contrib/linesOperations/browser/linesOperations.js +35 -33
- package/vscode/src/vs/editor/contrib/linesOperations/browser/moveLinesCommand.js +4 -2
- package/vscode/src/vs/editor/contrib/linkedEditing/browser/linkedEditing.js +14 -10
- package/vscode/src/vs/editor/contrib/links/browser/links.js +13 -10
- package/vscode/src/vs/editor/contrib/longLinesHelper/browser/longLinesHelper.js +6 -4
- package/vscode/src/vs/editor/contrib/message/browser/messageController.js +14 -9
- package/vscode/src/vs/editor/contrib/multicursor/browser/multicursor.js +53 -51
- package/vscode/src/vs/editor/contrib/parameterHints/browser/parameterHints.js +15 -13
- package/vscode/src/vs/editor/contrib/parameterHints/browser/parameterHintsModel.js +18 -16
- package/vscode/src/vs/editor/contrib/parameterHints/browser/parameterHintsWidget.js +19 -6
- package/vscode/src/vs/editor/contrib/peekView/browser/peekView.js +8 -7
- package/vscode/src/vs/editor/contrib/quickAccess/browser/editorNavigationQuickAccess.js +8 -6
- package/vscode/src/vs/editor/contrib/quickAccess/browser/gotoLineQuickAccess.js +5 -3
- package/vscode/src/vs/editor/contrib/quickAccess/browser/gotoSymbolQuickAccess.js +38 -34
- package/vscode/src/vs/editor/contrib/readOnlyMessage/browser/contribution.js +4 -3
- package/vscode/src/vs/editor/contrib/rename/browser/rename.js +22 -20
- package/vscode/src/vs/editor/contrib/rename/browser/renameWidget.js +15 -11
- package/vscode/src/vs/editor/contrib/sectionHeaders/browser/sectionHeaders.js +15 -12
- package/vscode/src/vs/editor/contrib/semanticTokens/browser/viewportSemanticTokens.js +2 -2
- package/vscode/src/vs/editor/contrib/smartSelect/browser/smartSelect.js +14 -11
- package/vscode/src/vs/editor/contrib/smartSelect/browser/wordSelections.js +3 -2
- package/vscode/src/vs/editor/contrib/snippet/browser/snippetController2.js +13 -10
- package/vscode/src/vs/editor/contrib/snippet/browser/snippetParser.js +100 -81
- package/vscode/src/vs/editor/contrib/snippet/browser/snippetSession.js +10 -7
- package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScroll.css.js +1 -1
- package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollActions.js +7 -5
- package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollContribution.js +2 -2
- package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollController.js +19 -16
- package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollModelProvider.js +2 -1
- package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollProvider.js +3 -2
- package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollWidget.js +14 -11
- package/vscode/src/vs/editor/contrib/suggest/browser/completionModel.js +18 -10
- package/vscode/src/vs/editor/contrib/suggest/browser/suggest.js +24 -16
- package/vscode/src/vs/editor/contrib/suggest/browser/suggestCommitCharacters.js +4 -2
- package/vscode/src/vs/editor/contrib/suggest/browser/suggestController.js +83 -69
- package/vscode/src/vs/editor/contrib/suggest/browser/suggestInlineCompletions.js +6 -4
- package/vscode/src/vs/editor/contrib/suggest/browser/suggestMemory.js +6 -6
- package/vscode/src/vs/editor/contrib/suggest/browser/suggestModel.js +66 -57
- package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidget.js +71 -59
- package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidgetDetails.js +6 -5
- package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidgetRenderer.js +10 -9
- package/vscode/src/vs/editor/contrib/suggest/browser/wordContextKey.js +3 -2
- package/vscode/src/vs/editor/contrib/suggest/browser/wordDistance.js +4 -2
- package/vscode/src/vs/editor/contrib/toggleTabFocusMode/browser/toggleTabFocusMode.js +6 -4
- package/vscode/src/vs/editor/contrib/unicodeHighlighter/browser/unicodeHighlighter.js +28 -25
- package/vscode/src/vs/editor/contrib/unusualLineTerminators/browser/unusualLineTerminators.js +7 -6
- package/vscode/src/vs/editor/contrib/wordHighlighter/browser/highlightDecorations.js +10 -10
- package/vscode/src/vs/editor/contrib/wordHighlighter/browser/wordHighlighter.js +16 -12
- package/vscode/src/vs/editor/contrib/wordOperations/browser/wordOperations.js +54 -50
- package/vscode/src/vs/editor/contrib/wordPartOperations/browser/wordPartOperations.js +21 -19
- package/vscode/src/vs/editor/contrib/zoneWidget/browser/zoneWidget.js +12 -9
- package/vscode/src/vs/editor/editor.api.d.ts +47 -4
- package/vscode/src/vs/editor/standalone/browser/iPadShowKeyboard/iPadShowKeyboard.js +6 -4
- package/vscode/src/vs/editor/standalone/browser/quickInput/standaloneQuickInputService.js +5 -3
- package/vscode/src/vs/editor/standalone/browser/standaloneCodeEditorService.js +5 -4
- package/vscode/src/vs/editor/standalone/browser/standaloneLayoutService.js +2 -2
- package/vscode/src/vs/editor/standalone/browser/standaloneServices.js +50 -43
- package/vscode/src/vs/editor/standalone/browser/standaloneThemeService.js +5 -5
- package/vscode/src/vs/platform/accessibility/browser/accessibilityService.js +3 -3
- package/vscode/src/vs/platform/accessibility/browser/accessibleView.js +58 -0
- package/vscode/src/vs/{workbench/contrib → platform}/accessibility/browser/accessibleView.service.js +1 -1
- package/vscode/src/vs/platform/accessibility/browser/accessibleViewRegistry.js +35 -0
- package/vscode/src/vs/platform/accessibility/common/accessibility.js +7 -1
- package/vscode/src/vs/platform/accessibilitySignal/browser/accessibilitySignalService.d.ts +3 -0
- package/vscode/src/vs/platform/accessibilitySignal/browser/accessibilitySignalService.js +61 -51
- package/vscode/src/vs/platform/accessibilitySignal/browser/accessibilitySignalService.service.d.ts +1 -0
- package/vscode/src/vs/platform/action/common/action.d.ts +4 -0
- package/vscode/src/vs/platform/actionWidget/browser/actionList.js +13 -8
- package/vscode/src/vs/platform/actionWidget/browser/actionWidget.js +16 -14
- package/vscode/src/vs/platform/actions/browser/dropdownWithPrimaryActionViewItem.js +3 -2
- package/vscode/src/vs/platform/actions/browser/menuEntryActionViewItem.js +6 -4
- package/vscode/src/vs/platform/actions/browser/toolbar.js +10 -4
- package/vscode/src/vs/platform/actions/common/actions.contribution.js +1 -0
- package/vscode/src/vs/platform/actions/common/actions.d.ts +3 -0
- package/vscode/src/vs/platform/actions/common/actions.js +14 -10
- package/vscode/src/vs/platform/actions/common/menuService.js +9 -8
- package/vscode/src/vs/platform/clipboard/browser/clipboardService.js +5 -5
- package/vscode/src/vs/platform/configuration/common/configuration.js +20 -9
- package/vscode/src/vs/platform/configuration/common/configurationModels.js +4 -3
- package/vscode/src/vs/platform/configuration/common/configurationRegistry.js +15 -15
- package/vscode/src/vs/platform/contextkey/browser/contextKeyService.js +4 -2
- package/vscode/src/vs/platform/contextkey/common/contextkey.js +98 -78
- package/vscode/src/vs/platform/contextkey/common/scanner.js +94 -69
- package/vscode/src/vs/platform/contextview/browser/contextMenuHandler.js +2 -2
- package/vscode/src/vs/platform/contextview/browser/contextViewService.js +6 -6
- package/vscode/src/vs/platform/diagnostics/common/diagnostics.js +4 -1
- package/vscode/src/vs/platform/editor/common/editor.js +14 -1
- package/vscode/src/vs/platform/extensionManagement/common/extensionEnablementService.js +9 -8
- package/vscode/src/vs/platform/extensionManagement/common/extensionManagement.d.ts +1 -0
- package/vscode/src/vs/platform/extensionManagement/common/extensionManagement.js +106 -61
- package/vscode/src/vs/platform/extensionManagement/common/extensionManagementUtil.js +5 -3
- package/vscode/src/vs/platform/extensionManagement/common/extensionStorage.js +13 -12
- package/vscode/src/vs/platform/extensionManagement/common/extensionsProfileScannerService.js +16 -9
- package/vscode/src/vs/platform/extensionManagement/common/extensionsScannerService.js +26 -26
- package/vscode/src/vs/platform/extensionResourceLoader/common/extensionResourceLoader.js +6 -4
- package/vscode/src/vs/platform/extensions/common/extensions.js +22 -1
- package/vscode/src/vs/platform/externalServices/common/serviceMachineId.js +3 -2
- package/vscode/src/vs/platform/files/browser/htmlFileSystemProvider.js +4 -4
- package/vscode/src/vs/platform/files/common/files.js +53 -25
- package/vscode/src/vs/platform/files/common/inMemoryFilesystemProvider.js +10 -10
- package/vscode/src/vs/platform/files/common/watcher.js +26 -10
- package/vscode/src/vs/platform/history/browser/contextScopedHistoryWidget.js +8 -7
- package/vscode/src/vs/platform/hover/browser/hover.js +5 -4
- package/vscode/src/vs/platform/instantiation/common/extensions.js +6 -1
- package/vscode/src/vs/platform/instantiation/common/instantiation.d.ts +5 -1
- package/vscode/src/vs/platform/instantiation/common/instantiationService.js +16 -7
- package/vscode/src/vs/platform/issue/common/issue.service.js +3 -0
- package/vscode/src/vs/platform/keybinding/common/abstractKeybindingService.js +7 -6
- package/vscode/src/vs/platform/keybinding/common/keybindingResolver.js +15 -9
- package/vscode/src/vs/platform/keybinding/common/keybindingsRegistry.d.ts +3 -0
- package/vscode/src/vs/platform/keybinding/common/keybindingsRegistry.js +12 -4
- package/vscode/src/vs/platform/keybinding/common/resolvedKeybindingItem.js +2 -1
- package/vscode/src/vs/platform/keybinding/common/usLayoutResolvedKeybinding.js +64 -63
- package/vscode/src/vs/platform/label/common/label.js +7 -0
- package/vscode/src/vs/platform/languagePacks/common/localizedStrings.js +11 -0
- package/vscode/src/vs/platform/list/browser/listService.js +3 -2
- package/vscode/src/vs/platform/markers/common/markerService.js +1 -0
- package/vscode/src/vs/platform/markers/common/markers.js +6 -1
- package/vscode/src/vs/platform/observable/common/platformObservableUtils.js +19 -0
- package/vscode/src/vs/platform/opener/browser/link.js +2 -1
- package/vscode/src/vs/platform/product/common/product.js +1 -1
- package/vscode/src/vs/platform/progress/common/progress.js +10 -47
- package/vscode/src/vs/platform/quickinput/browser/pickerQuickAccess.js +7 -0
- package/vscode/src/vs/platform/quickinput/browser/quickAccess.js +9 -8
- package/vscode/src/vs/platform/quickinput/browser/quickInput.js +81 -113
- package/vscode/src/vs/platform/quickinput/browser/quickInputActions.js +145 -0
- package/vscode/src/vs/platform/quickinput/browser/quickInputBox.js +3 -2
- package/vscode/src/vs/platform/quickinput/browser/quickInputController.js +39 -13
- package/vscode/src/vs/platform/quickinput/browser/quickInputService.js +1 -0
- package/vscode/src/vs/platform/quickinput/browser/quickInputTree.js +63 -85
- package/vscode/src/vs/platform/quickinput/browser/quickInputUtils.js +2 -1
- package/vscode/src/vs/platform/quickinput/browser/quickPickPin.js +3 -2
- package/vscode/src/vs/platform/quickinput/common/quickAccess.d.ts +16 -0
- package/vscode/src/vs/platform/quickinput/common/quickInput.d.ts +76 -1
- package/vscode/src/vs/platform/quickinput/common/quickInput.js +19 -1
- package/vscode/src/vs/platform/quickinput/common/quickInput.service.d.ts +5 -1
- package/vscode/src/vs/platform/remote/common/remoteAgentConnection.js +29 -15
- package/vscode/src/vs/platform/remote/common/remoteAuthorityResolver.js +8 -3
- package/vscode/src/vs/platform/request/common/request.js +2 -2
- package/vscode/src/vs/platform/storage/common/storage.js +22 -22
- package/vscode/src/vs/platform/telemetry/common/telemetry.js +15 -1
- package/vscode/src/vs/platform/telemetry/common/telemetry.service.d.ts +1 -0
- package/vscode/src/vs/platform/telemetry/common/telemetryUtils.js +12 -12
- package/vscode/src/vs/platform/terminal/common/capabilities/capabilities.d.ts +1 -0
- package/vscode/src/vs/platform/terminal/common/capabilities/capabilities.js +14 -0
- package/vscode/src/vs/platform/terminal/common/terminal.js +151 -1
- package/vscode/src/vs/platform/theme/common/colorUtils.js +25 -15
- package/vscode/src/vs/platform/theme/common/colors/baseColors.js +1 -1
- package/vscode/src/vs/platform/theme/common/colors/editorColors.js +66 -64
- package/vscode/src/vs/platform/tunnel/common/tunnel.js +3 -1
- package/vscode/src/vs/platform/undoRedo/common/undoRedo.js +6 -1
- package/vscode/src/vs/platform/undoRedo/common/undoRedoService.js +29 -24
- package/vscode/src/vs/platform/update/common/update.js +37 -10
- package/vscode/src/vs/platform/uriIdentity/common/uriIdentityService.js +3 -1
- package/vscode/src/vs/platform/userDataProfile/common/userDataProfile.js +12 -3
- package/vscode/src/vs/platform/userDataProfile/common/userDataProfileStorageService.service.js +3 -0
- package/vscode/src/vs/platform/userDataSync/common/abstractSynchronizer.js +56 -58
- package/vscode/src/vs/platform/userDataSync/common/userDataSync.js +75 -8
- package/vscode/src/vs/platform/userDataSync/common/userDataSyncMachines.js +6 -5
- package/vscode/src/vs/platform/userDataSync/common/userDataSyncStoreService.js +49 -48
- package/vscode/src/vs/platform/window/common/window.js +24 -7
- package/vscode/src/vs/platform/workspace/common/workspace.js +7 -1
- package/vscode/src/vs/platform/workspace/common/workspaceTrust.js +7 -0
- package/vscode/src/vs/workbench/api/browser/statusBarService.js +12 -6
- package/vscode/src/vs/workbench/api/common/extHost.api.impl.js +59 -40
- package/vscode/src/vs/workbench/api/common/extHost.common.services.js +27 -27
- package/vscode/src/vs/workbench/api/common/extHost.protocol.js +68 -3
- package/vscode/src/vs/workbench/api/common/extHostApiCommands.js +19 -0
- package/vscode/src/vs/workbench/api/common/extHostAuthentication.js +6 -6
- package/vscode/src/vs/workbench/api/common/extHostChatAgents2.js +115 -45
- package/vscode/src/vs/workbench/api/common/extHostChatVariables.js +14 -9
- package/vscode/src/vs/workbench/api/common/extHostComments.js +14 -12
- package/vscode/src/vs/workbench/api/common/extHostConfiguration.js +10 -9
- package/vscode/src/vs/workbench/api/common/extHostCustomEditors.js +13 -8
- package/vscode/src/vs/workbench/api/common/extHostDebugService.js +5 -3
- package/vscode/src/vs/workbench/api/common/extHostEditorTabs.js +19 -19
- package/vscode/src/vs/workbench/api/common/extHostEmbedding.js +64 -0
- package/vscode/src/vs/workbench/api/common/extHostExtensionService.js +2 -2
- package/vscode/src/vs/workbench/api/common/extHostFileSystem.js +17 -15
- package/vscode/src/vs/workbench/api/common/extHostFileSystemConsumer.js +2 -2
- package/vscode/src/vs/workbench/api/common/extHostFileSystemEventService.js +13 -12
- package/vscode/src/vs/workbench/api/common/extHostFileSystemInfo.js +2 -1
- package/vscode/src/vs/workbench/api/common/extHostLanguageFeatures.js +79 -76
- package/vscode/src/vs/workbench/api/common/extHostLanguageModels.js +121 -87
- package/vscode/src/vs/workbench/api/common/extHostNotebook.js +24 -8
- package/vscode/src/vs/workbench/api/common/extHostNotebookKernels.js +1 -0
- package/vscode/src/vs/workbench/api/common/extHostSCM.js +34 -28
- package/vscode/src/vs/workbench/api/common/extHostSpeech.js +38 -2
- package/vscode/src/vs/workbench/api/common/extHostTask.js +2 -2
- package/vscode/src/vs/workbench/api/common/extHostTelemetry.js +7 -5
- package/vscode/src/vs/workbench/api/common/extHostTerminalService.js +8 -6
- package/vscode/src/vs/workbench/api/common/extHostTestItem.js +7 -7
- package/vscode/src/vs/workbench/api/common/extHostTesting.js +140 -45
- package/vscode/src/vs/workbench/api/common/extHostTimeline.js +2 -1
- package/vscode/src/vs/workbench/api/common/extHostTypeConverters.js +259 -278
- package/vscode/src/vs/workbench/api/common/extHostTypes.js +83 -22
- package/vscode/src/vs/workbench/api/common/extHostWebviewMessaging.js +23 -22
- package/vscode/src/vs/workbench/api/common/extHostWorkspace.js +2 -1
- package/vscode/src/vs/workbench/api/common/jsonValidationExtensionPoint.js +2 -2
- package/vscode/src/vs/workbench/api/worker/extHost.worker.services.js +3 -3
- package/vscode/src/vs/workbench/api/worker/extensionHostWorker.js +4 -4
- package/vscode/src/vs/workbench/browser/actions/developerActions.js +13 -10
- package/vscode/src/vs/workbench/browser/actions/layoutActions.js +95 -100
- package/vscode/src/vs/workbench/browser/actions/textInputActions.js +7 -6
- package/vscode/src/vs/workbench/browser/actions/widgetNavigationCommands.js +8 -7
- package/vscode/src/vs/workbench/browser/actions/windowActions.js +24 -23
- package/vscode/src/vs/workbench/browser/actions/workspaceActions.js +17 -16
- package/vscode/src/vs/workbench/browser/codeeditor.js +12 -9
- package/vscode/src/vs/workbench/browser/labels.js +3 -0
- package/vscode/src/vs/workbench/browser/parts/auxiliarybar/auxiliaryBarActions.js +11 -8
- package/vscode/src/vs/workbench/browser/parts/editor/breadcrumbs.js +29 -28
- package/vscode/src/vs/workbench/browser/parts/editor/breadcrumbsControl.js +34 -33
- package/vscode/src/vs/workbench/browser/parts/editor/breadcrumbsModel.js +4 -2
- package/vscode/src/vs/workbench/browser/parts/editor/diffEditorCommands.js +37 -33
- package/vscode/src/vs/workbench/browser/parts/editor/editor.contribution._autosave.js +2 -2
- package/vscode/src/vs/workbench/browser/parts/editor/editor.js +2 -0
- package/vscode/src/vs/workbench/browser/parts/editor/editorActions.js +224 -219
- package/vscode/src/vs/workbench/browser/parts/editor/editorAutoSave.js +30 -27
- package/vscode/src/vs/workbench/browser/parts/editor/editorCommands.js +204 -161
- package/vscode/src/vs/workbench/browser/parts/editor/editorGroupView.js +151 -80
- package/vscode/src/vs/workbench/browser/parts/editor/editorGroupWatermark.js +9 -5
- package/vscode/src/vs/workbench/browser/parts/editor/editorPane.js +4 -3
- package/vscode/src/vs/workbench/browser/parts/editor/editorPanes.js +3 -3
- package/vscode/src/vs/workbench/browser/parts/editor/editorPlaceholder.js +5 -3
- package/vscode/src/vs/workbench/browser/parts/editor/editorQuickAccess.js +7 -6
- package/vscode/src/vs/workbench/browser/parts/editor/editorStatus.js +28 -22
- package/vscode/src/vs/workbench/browser/parts/editor/editorTabsControl.js +12 -10
- package/vscode/src/vs/workbench/browser/parts/editor/editorTitleControl.js +3 -0
- package/vscode/src/vs/workbench/browser/parts/editor/editorsObserver.js +19 -17
- package/vscode/src/vs/workbench/browser/parts/editor/media/editortabscontrol.css.js +1 -1
- package/vscode/src/vs/workbench/browser/parts/editor/media/multieditortabscontrol.css.js +1 -1
- package/vscode/src/vs/workbench/browser/parts/editor/multiEditorTabsControl.js +218 -76
- package/vscode/src/vs/workbench/browser/parts/editor/multiRowEditorTabsControl.js +4 -0
- package/vscode/src/vs/workbench/browser/parts/editor/noEditorTabsControl.js +1 -0
- package/vscode/src/vs/workbench/browser/parts/editor/sideBySideEditor.js +16 -15
- package/vscode/src/vs/workbench/browser/parts/editor/singleEditorTabsControl.js +10 -11
- package/vscode/src/vs/workbench/browser/parts/editor/textCodeEditor.js +2 -1
- package/vscode/src/vs/workbench/browser/parts/editor/textDiffEditor.js +7 -5
- package/vscode/src/vs/workbench/browser/parts/editor/textEditor.js +12 -10
- package/vscode/src/vs/workbench/browser/parts/editor/textResourceEditor.js +7 -4
- package/vscode/src/vs/workbench/browser/parts/globalCompositeBar.js +13 -9
- package/vscode/src/vs/workbench/browser/parts/notifications/notificationsAlerts.js +3 -2
- package/vscode/src/vs/workbench/browser/parts/notifications/notificationsCenter.js +10 -8
- package/vscode/src/vs/workbench/browser/parts/notifications/notificationsCommands.js +33 -33
- package/vscode/src/vs/workbench/browser/parts/notifications/notificationsStatus.js +8 -6
- package/vscode/src/vs/workbench/browser/parts/notifications/notificationsToasts.js +12 -8
- package/vscode/src/vs/workbench/browser/parts/notifications/notificationsViewer.js +12 -6
- package/vscode/src/vs/workbench/browser/parts/paneCompositePart.d.ts +1 -1
- package/vscode/src/vs/workbench/browser/parts/panel/panelActions.js +32 -36
- package/vscode/src/vs/workbench/browser/parts/sidebar/sidebarPart.d.ts +1 -1
- package/vscode/src/vs/workbench/browser/parts/titlebar/media/menubarControl.css.js +1 -1
- package/vscode/src/vs/workbench/browser/parts/titlebar/menubarControl.js +22 -16
- package/vscode/src/vs/workbench/browser/parts/titlebar/windowTitle.js +21 -14
- package/vscode/src/vs/workbench/browser/parts/views/treeView.js +8 -12
- package/vscode/src/vs/workbench/browser/parts/views/viewFilter.d.ts +2 -0
- package/vscode/src/vs/workbench/browser/parts/views/viewFilter.js +13 -6
- package/vscode/src/vs/workbench/browser/parts/views/viewPane.js +13 -9
- package/vscode/src/vs/workbench/browser/parts/views/viewPaneContainer.js +57 -46
- package/vscode/src/vs/workbench/browser/window.js +329 -0
- package/vscode/src/vs/workbench/browser/workbench.contribution.js +207 -199
- package/vscode/src/vs/workbench/common/configuration.js +94 -20
- package/vscode/src/vs/workbench/common/contextkeys.js +50 -40
- package/vscode/src/vs/workbench/common/contributions.js +23 -22
- package/vscode/src/vs/workbench/common/editor/diffEditorInput.js +16 -16
- package/vscode/src/vs/workbench/common/editor/editorGroupModel.js +125 -63
- package/vscode/src/vs/workbench/common/editor/editorInput.js +6 -6
- package/vscode/src/vs/workbench/common/editor/editorOptions.js +5 -4
- package/vscode/src/vs/workbench/common/editor/filteredEditorGroupModel.js +9 -6
- package/vscode/src/vs/workbench/common/editor/resourceEditorInput.js +13 -12
- package/vscode/src/vs/workbench/common/editor/sideBySideEditorInput.js +7 -7
- package/vscode/src/vs/workbench/common/editor/textEditorModel.js +3 -2
- package/vscode/src/vs/workbench/common/editor.d.ts +13 -11
- package/vscode/src/vs/workbench/common/editor.js +49 -1
- package/vscode/src/vs/workbench/common/memento.js +10 -9
- package/vscode/src/vs/workbench/common/notifications.js +32 -11
- package/vscode/src/vs/workbench/common/theme.js +167 -137
- package/vscode/src/vs/workbench/common/views.js +5 -6
- package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibilityConfiguration.js +477 -378
- package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibleViewActions.js +87 -49
- package/vscode/src/vs/workbench/contrib/accessibility/browser/editorAccessibilityHelp.js +19 -29
- package/vscode/src/vs/workbench/contrib/accessibility/common/accessibilityCommands.js +15 -0
- package/vscode/src/vs/workbench/contrib/callHierarchy/common/callHierarchy.js +6 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatActions.js +74 -48
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatExecuteActions.js +10 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQuickInputActions.js +5 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatAccessibilityProvider.js +3 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatAgentHover.js +50 -43
- package/vscode/src/vs/workbench/contrib/chat/browser/chatConfirmationWidget.js +47 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditorInput.js +2 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatFollowups.js +8 -21
- package/vscode/src/vs/workbench/contrib/chat/browser/chatInputPart.js +101 -47
- package/vscode/src/vs/workbench/contrib/chat/browser/chatListRenderer.js +276 -140
- package/vscode/src/vs/workbench/contrib/chat/browser/chatMarkdownDecorationsRenderer.js +120 -29
- package/vscode/src/vs/workbench/contrib/chat/browser/chatMarkdownRenderer.js +65 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatWidget.js +51 -34
- package/vscode/src/vs/workbench/contrib/chat/browser/codeBlockPart.css.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/codeBlockPart.js +55 -34
- package/vscode/src/vs/workbench/contrib/chat/browser/contrib/chatDynamicVariables.js +20 -18
- package/vscode/src/vs/workbench/contrib/chat/browser/media/chat.css.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/media/chatAgentHover.css.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/media/chatConfirmationWidget.css.js +4 -0
- package/vscode/src/vs/workbench/contrib/chat/common/annotations.js +7 -7
- package/vscode/src/vs/workbench/contrib/chat/common/chatAgents.js +79 -23
- package/vscode/src/vs/workbench/contrib/chat/common/chatContextKeys.js +2 -1
- package/vscode/src/vs/workbench/contrib/chat/common/chatModel.js +189 -103
- package/vscode/src/vs/workbench/contrib/chat/common/chatParserTypes.js +9 -10
- package/vscode/src/vs/workbench/contrib/chat/common/chatRequestParser.js +21 -5
- package/vscode/src/vs/workbench/contrib/chat/common/chatService.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/common/chatViewModel.js +19 -12
- package/vscode/src/vs/workbench/contrib/chat/common/chatWordCounter.js +8 -15
- package/vscode/src/vs/workbench/contrib/chat/common/codeBlockModelCollection.js +11 -2
- package/vscode/src/vs/workbench/contrib/chat/common/languageModels.js +170 -0
- package/vscode/src/vs/workbench/contrib/codeActions/browser/codeActions.contribution.js +2 -1
- package/vscode/src/vs/workbench/contrib/codeActions/browser/codeActionsContribution.js +2 -2
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/dictation/editorDictation.js +20 -12
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/diffEditorAccessibilityHelp.js +77 -0
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/diffEditorHelper.js +9 -89
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/editorFeatures.js +2 -2
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/editorLineNumberMenu.js +7 -5
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/find/simpleFindWidget.js +4 -7
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/largeFileOptimizations.js +2 -2
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/menuPreventer.js +5 -4
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/quickaccess/gotoSymbolQuickAccess.js +10 -6
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/saveParticipants.js +15 -12
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/simpleEditorOptions.js +2 -1
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/suggestEnabledInput/suggestEnabledInput.js +5 -3
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleMultiCursorModifier.js +2 -1
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleWordWrap.js +17 -14
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/workbenchReferenceSearch.js +2 -2
- package/vscode/src/vs/workbench/contrib/comments/browser/commentFormActions.js +2 -1
- package/vscode/src/vs/workbench/contrib/comments/browser/commentGlyphWidget.js +2 -1
- package/vscode/src/vs/workbench/contrib/comments/browser/commentNode.js +14 -12
- package/vscode/src/vs/workbench/contrib/comments/browser/commentReply.js +23 -15
- package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadAdditionalActions.js +2 -1
- package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadBody.js +3 -2
- package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadHeader.js +3 -1
- package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadWidget.js +12 -10
- package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadZoneWidget.js +11 -14
- package/vscode/src/vs/workbench/contrib/comments/browser/commentsAccessibility.js +49 -76
- package/vscode/src/vs/workbench/contrib/comments/browser/commentsController.js +50 -40
- package/vscode/src/vs/workbench/contrib/comments/browser/commentsTreeViewer.js +15 -8
- package/vscode/src/vs/workbench/contrib/comments/browser/commentsView.js +4 -2
- package/vscode/src/vs/workbench/contrib/comments/browser/commentsViewActions.js +8 -6
- package/vscode/src/vs/workbench/contrib/comments/browser/simpleCommentEditor.js +9 -8
- package/vscode/src/vs/workbench/contrib/comments/common/commentCommandIds.js +15 -0
- package/vscode/src/vs/workbench/contrib/contextmenu/browser/contextmenu.contribution.js +2 -1
- package/vscode/src/vs/workbench/contrib/customEditor/browser/customEditorInput.js +14 -14
- package/vscode/src/vs/workbench/contrib/debug/browser/baseDebugView.js +3 -2
- package/vscode/src/vs/workbench/contrib/debug/browser/breakpointEditorContribution.js +19 -17
- package/vscode/src/vs/workbench/contrib/debug/browser/breakpointWidget.js +33 -32
- package/vscode/src/vs/workbench/contrib/debug/browser/breakpointsView.js +25 -20
- package/vscode/src/vs/workbench/contrib/debug/browser/callStackEditorContribution.js +4 -3
- package/vscode/src/vs/workbench/contrib/debug/browser/debugCommands.js +62 -60
- package/vscode/src/vs/workbench/contrib/debug/common/debug.js +40 -4
- package/vscode/src/vs/workbench/contrib/debug/common/debug.service.d.ts +2 -2
- package/vscode/src/vs/workbench/contrib/debug/common/debugModel.d.ts +4 -1
- package/vscode/src/vs/workbench/contrib/debug/common/debugModel.js +15 -16
- package/vscode/src/vs/workbench/contrib/debug/common/debugSource.js +2 -1
- package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsActions.js +118 -109
- package/vscode/src/vs/workbench/contrib/extensions/browser/media/extensionActions.css.js +1 -1
- package/vscode/src/vs/workbench/contrib/extensions/common/extensions.js +24 -1
- package/vscode/src/vs/workbench/contrib/extensions/common/extensionsInput.js +2 -1
- package/vscode/src/vs/workbench/contrib/extensions/common/extensionsUtils.js +4 -2
- package/vscode/src/vs/workbench/contrib/files/browser/editors/binaryFileEditor.js +3 -2
- package/vscode/src/vs/workbench/contrib/files/browser/editors/fileEditorInput.js +23 -16
- package/vscode/src/vs/workbench/contrib/files/browser/editors/textFileEditor.js +12 -9
- package/vscode/src/vs/workbench/contrib/files/browser/editors/textFileEditorTracker.js +3 -2
- package/vscode/src/vs/workbench/contrib/files/browser/editors/textFileSaveErrorHandler.js +14 -12
- package/vscode/src/vs/workbench/contrib/files/browser/explorerFileContrib.js +10 -2
- package/vscode/src/vs/workbench/contrib/files/browser/explorerViewlet.js +9 -7
- package/vscode/src/vs/workbench/contrib/files/browser/fileActions.js +12 -9
- package/vscode/src/vs/workbench/contrib/files/browser/fileCommands._save.js +23 -22
- package/vscode/src/vs/workbench/contrib/files/browser/fileImportExport.js +13 -11
- package/vscode/src/vs/workbench/contrib/files/browser/files.contribution._configuration.js +25 -25
- package/vscode/src/vs/workbench/contrib/files/browser/files.contribution._editorPane.js +7 -7
- package/vscode/src/vs/workbench/contrib/files/browser/files.js +8 -1
- package/vscode/src/vs/workbench/contrib/files/browser/media/explorerviewlet.css.js +1 -1
- package/vscode/src/vs/workbench/contrib/files/browser/views/emptyView.js +2 -2
- package/vscode/src/vs/workbench/contrib/files/browser/views/explorerView.js +16 -10
- package/vscode/src/vs/workbench/contrib/files/browser/views/explorerViewer.js +55 -111
- package/vscode/src/vs/workbench/contrib/files/browser/views/openEditorsView.js +42 -35
- package/vscode/src/vs/workbench/contrib/files/common/dirtyFilesIndicator.js +2 -1
- package/vscode/src/vs/workbench/contrib/files/common/explorerFileNestingTrie.js +15 -8
- package/vscode/src/vs/workbench/contrib/files/common/explorerModel.js +5 -3
- package/vscode/src/vs/workbench/contrib/files/common/files.js +25 -2
- package/vscode/src/vs/workbench/contrib/folding/browser/folding.contribution.js +2 -1
- package/vscode/src/vs/workbench/contrib/format/browser/formatActionsMultiple.js +8 -6
- package/vscode/src/vs/workbench/contrib/format/browser/formatActionsNone.js +7 -4
- package/vscode/src/vs/workbench/contrib/format/browser/formatModified.js +2 -2
- package/vscode/src/vs/workbench/contrib/inlayHints/browser/inlayHintsAccessibilty.js +6 -4
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatActions.js +82 -137
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatContentWidget.js +11 -8
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatController.js +292 -328
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSession.js +69 -67
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionServiceImpl.js +79 -417
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatStrategies.js +50 -61
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatWidget.js +32 -124
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatZoneWidget.js +41 -20
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/media/inlineChat.css.js +1 -1
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/utils.js +5 -1
- package/vscode/src/vs/workbench/contrib/inlineChat/common/inlineChat.js +59 -53
- package/vscode/src/vs/workbench/contrib/interactive/browser/interactiveEditorInput.js +5 -4
- package/vscode/src/vs/workbench/contrib/list/browser/list.contribution.js +2 -2
- package/vscode/src/vs/workbench/contrib/markers/common/markers.js +7 -2
- package/vscode/src/vs/workbench/contrib/mergeEditor/browser/mergeEditorInput.js +3 -3
- package/vscode/src/vs/workbench/contrib/mergeEditor/browser/mergeEditorInputModel.js +15 -13
- package/vscode/src/vs/workbench/contrib/mergeEditor/browser/model/diffComputer.js +1 -1
- package/vscode/src/vs/workbench/contrib/mergeEditor/browser/model/lineRange.js +3 -2
- package/vscode/src/vs/workbench/contrib/mergeEditor/browser/model/mergeEditorModel.js +26 -20
- package/vscode/src/vs/workbench/contrib/mergeEditor/browser/model/modifiedBaseRange.js +13 -8
- package/vscode/src/vs/workbench/contrib/mergeEditor/browser/model/textModelDiffs.js +22 -10
- package/vscode/src/vs/workbench/contrib/mergeEditor/browser/utils.js +5 -11
- package/vscode/src/vs/workbench/contrib/multiDiffEditor/browser/multiDiffEditorInput.js +4 -3
- package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/cellStatusBar/executionStatusBarItemController.js +7 -57
- package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/findFilters.js +25 -1
- package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/findModel.js +7 -6
- package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/notebookFindReplaceWidget.js +103 -23
- package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/notebookFindWidget.js +6 -5
- package/vscode/src/vs/workbench/contrib/notebook/browser/controller/cellOperations.js +16 -15
- package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/notebookChatContext.js +2 -2
- package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/notebookChatController.js +137 -261
- package/vscode/src/vs/workbench/contrib/notebook/browser/controller/coreActions.js +26 -8
- package/vscode/src/vs/workbench/contrib/notebook/browser/controller/editActions.js +25 -23
- package/vscode/src/vs/workbench/contrib/notebook/browser/controller/foldingController.js +23 -21
- package/vscode/src/vs/workbench/contrib/notebook/browser/media/notebook.css.js +1 -1
- package/vscode/src/vs/workbench/contrib/notebook/browser/notebookAccessibilityProvider.js +4 -2
- package/vscode/src/vs/workbench/contrib/notebook/browser/notebookBrowser.js +21 -1
- package/vscode/src/vs/workbench/contrib/notebook/browser/notebookEditor.js +16 -11
- package/vscode/src/vs/workbench/contrib/notebook/browser/notebookEditorWidget.js +36 -18
- package/vscode/src/vs/workbench/contrib/notebook/browser/notebookOptions.js +24 -13
- package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellComments.js +1 -1
- package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellContextKeys.js +8 -7
- package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellDnd.js +3 -3
- package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellDragRenderer.js +5 -3
- package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellFocusIndicator.js +1 -1
- package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellOutput.js +17 -10
- package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellStatusPart.js +14 -9
- package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellToolbars.js +3 -2
- package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellWidgets.js +7 -0
- package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/codeCell.js +11 -1
- package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/codeCellRunToolbar.js +2 -1
- package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/foldedCellHint.js +15 -5
- package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/markupCell.js +7 -4
- package/vscode/src/vs/workbench/contrib/notebook/browser/view/notebookCellList.js +36 -25
- package/vscode/src/vs/workbench/contrib/notebook/browser/view/notebookCellListView.js +14 -3
- package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/backLayerWebView.js +20 -10
- package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/webviewPreloads.js +2 -1
- package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/baseCellViewModel.js +2 -1
- package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/codeCellViewModel.js +7 -10
- package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/foldingModel.js +3 -2
- package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/markupCellViewModel.js +2 -2
- package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/notebookViewModelImpl.js +19 -9
- package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookEditorStickyScroll.js +5 -3
- package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookEditorToolbar.js +5 -4
- package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookKernelQuickPickStrategy.js +15 -11
- package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookTopCellToolbar.js +2 -2
- package/vscode/src/vs/workbench/contrib/notebook/common/model/notebookCellTextModel.js +4 -3
- package/vscode/src/vs/workbench/contrib/notebook/common/notebookCommon.js +35 -2
- package/vscode/src/vs/workbench/contrib/notebook/common/notebookEditorInput.js +14 -12
- package/vscode/src/vs/workbench/contrib/notebook/common/notebookEditorModel.js +41 -15
- package/vscode/src/vs/workbench/contrib/outline/browser/outline.js +8 -2
- package/vscode/src/vs/workbench/contrib/preferences/browser/keybindingWidgets.js +5 -3
- package/vscode/src/vs/workbench/contrib/preferences/browser/preferencesWidgets.js +29 -23
- package/vscode/src/vs/workbench/contrib/preferences/browser/settingsLayout.js +1 -1
- package/vscode/src/vs/workbench/contrib/preferences/browser/settingsTreeModels.js +31 -24
- package/vscode/src/vs/workbench/contrib/remote/browser/remoteExplorer.js +11 -8
- package/vscode/src/vs/workbench/contrib/remote/browser/tunnelView.js +29 -27
- package/vscode/src/vs/workbench/contrib/remote/browser/urlFinder.js +2 -2
- package/vscode/src/vs/workbench/contrib/scm/browser/dirtydiffDecorator.js +27 -45
- package/vscode/src/vs/workbench/contrib/scm/common/scm.js +13 -1
- package/vscode/src/vs/workbench/contrib/search/browser/anythingQuickAccess.js +785 -0
- package/vscode/src/vs/workbench/contrib/search/browser/media/anythingQuickAccess.css.js +4 -0
- package/vscode/src/vs/workbench/contrib/search/browser/notebookSearch/notebookSearchService.js +2 -2
- package/vscode/src/vs/workbench/contrib/search/browser/searchActionsFind.js +23 -22
- package/vscode/src/vs/workbench/contrib/search/browser/searchModel.js +36 -32
- package/vscode/src/vs/workbench/contrib/search/browser/symbolsQuickAccess.js +222 -0
- package/vscode/src/vs/workbench/contrib/search/common/cacheState.js +85 -0
- package/vscode/src/vs/workbench/contrib/search/common/cellSearchModel.js +3 -2
- package/vscode/src/vs/workbench/contrib/search/common/constants.js +49 -1
- package/vscode/src/vs/workbench/contrib/snippets/browser/snippetCompletionProvider.js +6 -5
- package/vscode/src/vs/workbench/contrib/snippets/browser/snippetsFile.js +8 -2
- package/vscode/src/vs/workbench/contrib/snippets/browser/snippetsService.js +16 -13
- package/vscode/src/vs/workbench/contrib/snippets/browser/tabCompletion.js +11 -11
- package/vscode/src/vs/workbench/contrib/speech/common/speechService.js +47 -30
- package/vscode/src/vs/workbench/contrib/tags/browser/workspaceTagsService.js +1 -0
- package/vscode/src/vs/workbench/contrib/tasks/common/tasks.js +80 -11
- package/vscode/src/vs/workbench/contrib/terminal/browser/terminal.d.ts +5 -3
- package/vscode/src/vs/workbench/contrib/terminal/browser/terminal.js +27 -1
- package/vscode/src/vs/workbench/contrib/terminal/browser/terminalEditorInput.js +8 -5
- package/vscode/src/vs/workbench/contrib/terminal/browser/terminalMenus.js +721 -0
- package/vscode/src/vs/workbench/contrib/terminal/browser/terminalProcessExtHostProxy.js +9 -8
- package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/xtermTerminal.d.ts +0 -9
- package/vscode/src/vs/workbench/contrib/terminal/common/terminal.d.ts +2 -5
- package/vscode/src/vs/workbench/contrib/terminal/common/terminal.js +166 -71
- package/vscode/src/vs/workbench/contrib/terminal/common/terminalContextKey.js +92 -144
- package/vscode/src/vs/workbench/contrib/terminal/common/terminalStrings.js +41 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/accessibility/common/terminal.accessibility.js +12 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/find/common/terminal.find.js +22 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/suggest/common/terminal.suggest.js +18 -0
- package/vscode/src/vs/workbench/contrib/testing/common/constants.js +103 -0
- package/vscode/src/vs/workbench/contrib/testing/common/getComputedState.js +4 -3
- package/vscode/src/vs/workbench/contrib/testing/common/testCoverage.js +79 -22
- package/vscode/src/vs/workbench/contrib/testing/common/testId.js +46 -18
- package/vscode/src/vs/workbench/contrib/testing/common/testItemCollection.js +51 -41
- package/vscode/src/vs/workbench/contrib/testing/common/testResult.js +33 -19
- package/vscode/src/vs/workbench/contrib/testing/common/testTypes.js +108 -38
- package/vscode/src/vs/workbench/contrib/testing/common/testingStates.js +19 -18
- package/vscode/src/vs/workbench/contrib/timeline/common/timeline.js +1 -2
- package/vscode/src/vs/workbench/contrib/typeHierarchy/common/typeHierarchy.js +6 -1
- package/vscode/src/vs/workbench/contrib/url/browser/trustedDomainService.js +77 -0
- package/vscode/src/vs/workbench/contrib/url/browser/trustedDomainService.service.js +3 -0
- package/vscode/src/vs/workbench/contrib/url/browser/trustedDomains.js +119 -0
- package/vscode/src/vs/workbench/contrib/webview/browser/webview.js +9 -2
- package/vscode/src/vs/workbench/contrib/webview/common/webview.js +4 -3
- package/vscode/src/vs/workbench/contrib/webviewPanel/browser/webviewEditor.js +3 -2
- package/vscode/src/vs/workbench/contrib/webviewPanel/browser/webviewEditorInput.js +2 -1
- package/vscode/src/vs/workbench/contrib/webviewPanel/browser/webviewIconManager.js +2 -1
- package/vscode/src/vs/workbench/contrib/webviewPanel/browser/webviewWorkbenchService.js +22 -10
- package/vscode/src/vs/workbench/services/authentication/browser/authenticationService.js +25 -9
- package/vscode/src/vs/workbench/services/auxiliaryWindow/browser/auxiliaryWindowService.js +370 -0
- package/vscode/src/vs/workbench/services/configuration/common/configuration.js +8 -7
- package/vscode/src/vs/workbench/services/driver/browser/driver.js +187 -0
- package/vscode/src/vs/workbench/services/editor/browser/codeEditorService.js +3 -1
- package/vscode/src/vs/workbench/services/editor/browser/editorService.js +42 -29
- package/vscode/src/vs/workbench/services/editor/common/customEditorLabelService.js +1 -0
- package/vscode/src/vs/workbench/services/editor/common/editorGroupColumn.js +5 -5
- package/vscode/src/vs/workbench/services/editor/common/editorGroupFinder.js +5 -5
- package/vscode/src/vs/workbench/services/editor/common/editorGroupsService.d.ts +36 -1
- package/vscode/src/vs/workbench/services/editor/common/editorGroupsService.js +2 -2
- package/vscode/src/vs/workbench/services/editor/common/editorGroupsService.service.d.ts +11 -2
- package/vscode/src/vs/workbench/services/editor/common/editorResolverService.js +6 -1
- package/vscode/src/vs/workbench/services/editor/common/editorService.service.d.ts +3 -0
- package/vscode/src/vs/workbench/services/extensionManagement/common/extensionManagement.d.ts +1 -0
- package/vscode/src/vs/workbench/services/extensionManagement/common/extensionManagement.js +20 -1
- package/vscode/src/vs/workbench/services/extensionManagement/common/extensionManagement.service.d.ts +1 -0
- package/vscode/src/vs/workbench/services/extensionRecommendations/common/extensionRecommendations.js +11 -0
- package/vscode/src/vs/workbench/services/extensionRecommendations/common/workspaceExtensionsConfig.js +4 -7
- package/vscode/src/vs/workbench/services/extensions/common/extensionDescriptionRegistry.js +8 -2
- package/vscode/src/vs/workbench/services/extensions/common/extensionHostKind.js +16 -10
- package/vscode/src/vs/workbench/services/extensions/common/extensionHostProtocol.js +18 -7
- package/vscode/src/vs/workbench/services/extensions/common/extensionManifestPropertiesService.js +1 -0
- package/vscode/src/vs/workbench/services/extensions/common/extensionRunningLocation.js +4 -3
- package/vscode/src/vs/workbench/services/extensions/common/extensions.js +17 -6
- package/vscode/src/vs/workbench/services/extensions/common/extensionsApiProposals.js +4 -4
- package/vscode/src/vs/workbench/services/extensions/common/extensionsRegistry.d.ts +2 -1
- package/vscode/src/vs/workbench/services/extensions/common/extensionsRegistry.js +5 -0
- package/vscode/src/vs/workbench/services/extensions/common/rpcProtocol.js +103 -64
- package/vscode/src/vs/workbench/services/filesConfiguration/common/filesConfigurationService.js +31 -15
- package/vscode/src/vs/workbench/services/{views/browser/treeViewsService.service.js → integrity/common/integrity.service.js} +2 -2
- package/vscode/src/vs/workbench/services/language/common/languageService.js +2 -1
- package/vscode/src/vs/workbench/services/layout/browser/layoutService.js +71 -24
- package/vscode/src/vs/workbench/services/lifecycle/common/lifecycle.js +28 -8
- package/vscode/src/vs/workbench/services/lifecycle/common/lifecycleService.js +11 -11
- package/vscode/src/vs/workbench/services/notebook/common/notebookDocumentService.js +1 -0
- package/vscode/src/vs/workbench/services/outline/browser/outline.js +22 -0
- package/vscode/src/vs/workbench/services/preferences/common/preferencesModels.js +10 -9
- package/vscode/src/vs/workbench/services/progress/browser/progressIndicator.js +19 -17
- package/vscode/src/vs/workbench/services/remote/common/remoteExplorerService.js +4 -2
- package/vscode/src/vs/workbench/services/remote/common/tunnelModel.js +16 -16
- package/vscode/src/vs/workbench/services/search/common/fileSearchManager.js +3 -2
- package/vscode/src/vs/workbench/services/search/common/queryBuilder.js +9 -9
- package/vscode/src/vs/workbench/services/search/common/replace.js +12 -11
- package/vscode/src/vs/workbench/services/search/common/search.js +32 -1
- package/vscode/src/vs/workbench/services/search/common/textSearchManager.js +6 -6
- package/vscode/src/vs/workbench/services/statusbar/browser/statusbar.js +6 -1
- package/vscode/src/vs/workbench/services/storage/browser/storageService.js +290 -0
- package/vscode/src/vs/workbench/services/textfile/common/encoding.js +6 -2
- package/vscode/src/vs/workbench/services/textfile/common/textEditorService.js +1 -0
- package/vscode/src/vs/workbench/services/textfile/common/textFileEditorModel.js +28 -27
- package/vscode/src/vs/workbench/services/textfile/common/textfiles.js +27 -3
- package/vscode/src/vs/workbench/services/themes/common/colorExtensionPoint.js +2 -2
- package/vscode/src/vs/workbench/services/themes/common/iconExtensionPoint.js +2 -2
- package/vscode/src/vs/workbench/services/themes/common/workbenchThemeService.js +43 -1
- package/vscode/src/vs/workbench/services/untitled/common/untitledTextEditorInput.js +2 -2
- package/vscode/src/vs/workbench/services/untitled/common/untitledTextEditorModel.js +2 -2
- package/vscode/src/vs/workbench/services/userDataProfile/browser/iconSelectBox.js +12 -11
- package/vscode/src/vs/workbench/services/userDataProfile/common/userDataProfile.js +7 -2
- package/vscode/src/vs/workbench/services/userDataSync/common/userDataSync.js +19 -13
- package/vscode/src/vs/workbench/services/views/browser/viewsService.js +29 -25
- package/vscode/src/vs/workbench/services/workingCopy/common/fileWorkingCopy.js +6 -0
- package/vscode/src/vs/workbench/services/workingCopy/common/resourceWorkingCopy.js +3 -2
- package/vscode/src/vs/workbench/services/workingCopy/common/storedFileWorkingCopy.js +52 -32
- package/vscode/src/vs/workbench/services/workingCopy/common/workingCopy.js +7 -1
- package/vscode/src/vs/workbench/services/workspaces/common/workspaceTrust.js +17 -14
- package/vscode-dts/vscode.proposed.attributableCoverage.d.ts +28 -0
- package/vscode-dts/vscode.proposed.chatParticipantAdditions.d.ts +90 -97
- package/vscode-dts/vscode.proposed.chatParticipantPrivate.d.ts +76 -0
- package/vscode-dts/vscode.proposed.chatProvider.d.ts +24 -7
- package/vscode-dts/vscode.proposed.chatVariableResolver.d.ts +82 -2
- package/vscode-dts/vscode.proposed.defaultChatParticipant.d.ts +0 -5
- package/vscode-dts/vscode.proposed.editorHoverVerbosityLevel.d.ts +2 -2
- package/vscode-dts/vscode.proposed.embeddings.d.ts +33 -0
- package/vscode-dts/vscode.proposed.interactive.d.ts +2 -110
- package/vscode-dts/vscode.proposed.languageModelSystem.d.ts +17 -0
- package/vscode-dts/vscode.proposed.resolvers.d.ts +2 -1
- package/vscode-dts/vscode.proposed.speech.d.ts +26 -6
- package/vscode-dts/vscode.proposed.testObserver.d.ts +9 -0
- package/vscode/src/vs/workbench/api/common/extHostInlineChat.js +0 -194
- package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibleView.js +0 -876
- package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibleViewContributions.js +0 -407
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityHelp.js +0 -196
- package/vscode/src/vs/workbench/contrib/inlineChat/common/inlineChat.service.js +0 -3
- package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/cellCommands/cellCommands.js +0 -595
- package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/cellDiagnostics/cellDiagnostics.js +0 -102
- package/vscode-dts/vscode.proposed.chatParticipant.d.ts +0 -458
- package/vscode-dts/vscode.proposed.debugFocus.d.ts +0 -66
- package/vscode-dts/vscode.proposed.languageModels.d.ts +0 -291
- package/vscode-dts/vscode.proposed.testPreserveFocus.d.ts +0 -28
- /package/vscode/src/vs/workbench/{services → contrib}/issue/browser/issueTroubleshoot.service.js +0 -0
- /package/vscode/src/vs/workbench/{services → contrib}/issue/common/issue.service.js +0 -0
|
@@ -4,9 +4,10 @@ import { isNative, isLinux } from '../../../../base/common/platform.js';
|
|
|
4
4
|
import { RangeUtil } from './rangeUtil.js';
|
|
5
5
|
import { VisibleRanges, FloatHorizontalRange } from '../../view/renderingContext.js';
|
|
6
6
|
import { LineDecoration } from '../../../common/viewLayout/lineDecorations.js';
|
|
7
|
-
import { LineRange, renderViewLine, DomPosition, RenderLineInput } from '../../../common/viewLayout/viewLineRenderer.js';
|
|
7
|
+
import { LineRange, renderViewLine, ForeignElementType, DomPosition, RenderLineInput } from '../../../common/viewLayout/viewLineRenderer.js';
|
|
8
|
+
import { InlineDecorationType } from '../../../common/viewModel.js';
|
|
8
9
|
import { isHighContrast } from '../../../../platform/theme/common/theme.js';
|
|
9
|
-
import { EditorFontLigatures } from '../../../common/config/editorOptions.js';
|
|
10
|
+
import { EditorOption, EditorFontLigatures } from '../../../common/config/editorOptions.js';
|
|
10
11
|
const canUseFastRenderedViewLine = ( (function() {
|
|
11
12
|
if (isNative) {
|
|
12
13
|
return true;
|
|
@@ -21,24 +22,24 @@ class ViewLineOptions {
|
|
|
21
22
|
constructor(config, themeType) {
|
|
22
23
|
this.themeType = themeType;
|
|
23
24
|
const options = config.options;
|
|
24
|
-
const fontInfo = options.get(
|
|
25
|
-
const experimentalWhitespaceRendering = options.get(
|
|
25
|
+
const fontInfo = options.get(EditorOption.fontInfo);
|
|
26
|
+
const experimentalWhitespaceRendering = options.get(EditorOption.experimentalWhitespaceRendering);
|
|
26
27
|
if (experimentalWhitespaceRendering === 'off') {
|
|
27
|
-
this.renderWhitespace = options.get(
|
|
28
|
+
this.renderWhitespace = options.get(EditorOption.renderWhitespace);
|
|
28
29
|
}
|
|
29
30
|
else {
|
|
30
31
|
this.renderWhitespace = 'none';
|
|
31
32
|
}
|
|
32
|
-
this.renderControlCharacters = options.get(
|
|
33
|
+
this.renderControlCharacters = options.get(EditorOption.renderControlCharacters);
|
|
33
34
|
this.spaceWidth = fontInfo.spaceWidth;
|
|
34
35
|
this.middotWidth = fontInfo.middotWidth;
|
|
35
36
|
this.wsmiddotWidth = fontInfo.wsmiddotWidth;
|
|
36
37
|
this.useMonospaceOptimizations = (fontInfo.isMonospace
|
|
37
|
-
&& !options.get(
|
|
38
|
+
&& !options.get(EditorOption.disableMonospaceOptimizations));
|
|
38
39
|
this.canUseHalfwidthRightwardsArrow = fontInfo.canUseHalfwidthRightwardsArrow;
|
|
39
|
-
this.lineHeight = options.get(
|
|
40
|
-
this.stopRenderingLineAfter = options.get(
|
|
41
|
-
this.fontLigatures = options.get(
|
|
40
|
+
this.lineHeight = options.get(EditorOption.lineHeight);
|
|
41
|
+
this.stopRenderingLineAfter = options.get(EditorOption.stopRenderingLineAfter);
|
|
42
|
+
this.fontLigatures = options.get(EditorOption.fontLigatures);
|
|
42
43
|
}
|
|
43
44
|
equals(other) {
|
|
44
45
|
return (this.themeType === other.themeType
|
|
@@ -118,7 +119,7 @@ class ViewLine {
|
|
|
118
119
|
startColumn,
|
|
119
120
|
endColumn,
|
|
120
121
|
'inline-selected-text',
|
|
121
|
-
|
|
122
|
+
InlineDecorationType.Regular
|
|
122
123
|
)));
|
|
123
124
|
}
|
|
124
125
|
if (this._options.renderWhitespace === 'selection') {
|
|
@@ -164,7 +165,7 @@ class ViewLine {
|
|
|
164
165
|
const output = renderViewLine(renderLineInput, sb);
|
|
165
166
|
sb.appendString('</div>');
|
|
166
167
|
let renderedViewLine = null;
|
|
167
|
-
if (monospaceAssumptionsAreValid && canUseFastRenderedViewLine && lineData.isBasicASCII && options.useMonospaceOptimizations && output.containsForeignElements ===
|
|
168
|
+
if (monospaceAssumptionsAreValid && canUseFastRenderedViewLine && lineData.isBasicASCII && options.useMonospaceOptimizations && output.containsForeignElements === ForeignElementType.None) {
|
|
168
169
|
renderedViewLine = ( new FastRenderedViewLine(
|
|
169
170
|
this._renderedViewLine ? this._renderedViewLine.domNode : null,
|
|
170
171
|
renderLineInput,
|
|
@@ -244,12 +245,16 @@ class ViewLine {
|
|
|
244
245
|
return this._renderedViewLine.getColumnOfNodeOffset(spanNode, offset);
|
|
245
246
|
}
|
|
246
247
|
}
|
|
248
|
+
var Constants;
|
|
249
|
+
( (function(Constants) {
|
|
250
|
+
Constants[Constants["MaxMonospaceDistance"] = 300] = "MaxMonospaceDistance";
|
|
251
|
+
})(Constants || (Constants = {})));
|
|
247
252
|
class FastRenderedViewLine {
|
|
248
253
|
constructor(domNode, renderLineInput, characterMapping) {
|
|
249
254
|
this._cachedWidth = -1;
|
|
250
255
|
this.domNode = domNode;
|
|
251
256
|
this.input = renderLineInput;
|
|
252
|
-
const keyColumnCount = Math.floor(renderLineInput.lineContent.length /
|
|
257
|
+
const keyColumnCount = Math.floor(renderLineInput.lineContent.length / Constants.MaxMonospaceDistance);
|
|
253
258
|
if (keyColumnCount > 0) {
|
|
254
259
|
this._keyColumnPixelOffsetCache = ( new Float32Array(keyColumnCount));
|
|
255
260
|
for (let i = 0; i < keyColumnCount; i++) {
|
|
@@ -263,7 +268,7 @@ class FastRenderedViewLine {
|
|
|
263
268
|
this._charWidth = renderLineInput.spaceWidth;
|
|
264
269
|
}
|
|
265
270
|
getWidth(context) {
|
|
266
|
-
if (!this.domNode || this.input.lineContent.length <
|
|
271
|
+
if (!this.domNode || this.input.lineContent.length < Constants.MaxMonospaceDistance) {
|
|
267
272
|
const horizontalOffset = this._characterMapping.getHorizontalOffset(this._characterMapping.length);
|
|
268
273
|
return Math.round(this._charWidth * horizontalOffset);
|
|
269
274
|
}
|
|
@@ -274,13 +279,13 @@ class FastRenderedViewLine {
|
|
|
274
279
|
return this._cachedWidth;
|
|
275
280
|
}
|
|
276
281
|
getWidthIsFast() {
|
|
277
|
-
return (
|
|
282
|
+
return (this.input.lineContent.length < Constants.MaxMonospaceDistance) || this._cachedWidth !== -1;
|
|
278
283
|
}
|
|
279
284
|
monospaceAssumptionsAreValid() {
|
|
280
285
|
if (!this.domNode) {
|
|
281
286
|
return monospaceAssumptionsAreValid;
|
|
282
287
|
}
|
|
283
|
-
if (this.input.lineContent.length <
|
|
288
|
+
if (this.input.lineContent.length < Constants.MaxMonospaceDistance) {
|
|
284
289
|
const expectedWidth = this.getWidth(null);
|
|
285
290
|
const actualWidth = this.domNode.domNode.firstChild.offsetWidth;
|
|
286
291
|
if (Math.abs(expectedWidth - actualWidth) >= 2) {
|
|
@@ -291,7 +296,7 @@ class FastRenderedViewLine {
|
|
|
291
296
|
return monospaceAssumptionsAreValid;
|
|
292
297
|
}
|
|
293
298
|
toSlowRenderedLine() {
|
|
294
|
-
return createRenderedLine(this.domNode, this.input, this._characterMapping, false,
|
|
299
|
+
return createRenderedLine(this.domNode, this.input, this._characterMapping, false, ForeignElementType.None);
|
|
295
300
|
}
|
|
296
301
|
getVisibleRangesForRange(lineNumber, startColumn, endColumn, context) {
|
|
297
302
|
const startPosition = this._getColumnPixelOffset(lineNumber, startColumn, context);
|
|
@@ -299,12 +304,12 @@ class FastRenderedViewLine {
|
|
|
299
304
|
return [( new FloatHorizontalRange(startPosition, endPosition - startPosition))];
|
|
300
305
|
}
|
|
301
306
|
_getColumnPixelOffset(lineNumber, column, context) {
|
|
302
|
-
if (column <=
|
|
307
|
+
if (column <= Constants.MaxMonospaceDistance) {
|
|
303
308
|
const horizontalOffset = this._characterMapping.getHorizontalOffset(column);
|
|
304
309
|
return this._charWidth * horizontalOffset;
|
|
305
310
|
}
|
|
306
|
-
const keyColumnOrdinal = Math.floor((column - 1) /
|
|
307
|
-
const keyColumn = (keyColumnOrdinal + 1) *
|
|
311
|
+
const keyColumnOrdinal = Math.floor((column - 1) / Constants.MaxMonospaceDistance) - 1;
|
|
312
|
+
const keyColumn = (keyColumnOrdinal + 1) * Constants.MaxMonospaceDistance + 1;
|
|
308
313
|
let keyColumnPixelOffset = -1;
|
|
309
314
|
if (this._keyColumnPixelOffsetCache) {
|
|
310
315
|
keyColumnPixelOffset = this._keyColumnPixelOffsetCache[keyColumnOrdinal];
|
|
@@ -407,13 +412,13 @@ class RenderedViewLine {
|
|
|
407
412
|
}
|
|
408
413
|
_readPixelOffset(domNode, lineNumber, column, context) {
|
|
409
414
|
if (this._characterMapping.length === 0) {
|
|
410
|
-
if (this._containsForeignElements ===
|
|
415
|
+
if (this._containsForeignElements === ForeignElementType.None) {
|
|
411
416
|
return 0;
|
|
412
417
|
}
|
|
413
|
-
if (this._containsForeignElements ===
|
|
418
|
+
if (this._containsForeignElements === ForeignElementType.After) {
|
|
414
419
|
return 0;
|
|
415
420
|
}
|
|
416
|
-
if (this._containsForeignElements ===
|
|
421
|
+
if (this._containsForeignElements === ForeignElementType.Before) {
|
|
417
422
|
return this.getWidth(context);
|
|
418
423
|
}
|
|
419
424
|
const readingTarget = this._getReadingTarget(domNode);
|
|
@@ -444,7 +449,7 @@ class RenderedViewLine {
|
|
|
444
449
|
}
|
|
445
450
|
return r[0].left;
|
|
446
451
|
}
|
|
447
|
-
if (column === this._characterMapping.length && this._isWhitespaceOnly && this._containsForeignElements ===
|
|
452
|
+
if (column === this._characterMapping.length && this._isWhitespaceOnly && this._containsForeignElements === ForeignElementType.None) {
|
|
448
453
|
return this.getWidth(context);
|
|
449
454
|
}
|
|
450
455
|
const domPosition = this._characterMapping.getDomPosition(column);
|
|
@@ -1,15 +1,19 @@
|
|
|
1
1
|
import { MOUSE_CURSOR_TEXT_CSS_CLASS_NAME } from '../../../../base/browser/ui/mouseCursor/mouseCursor.js';
|
|
2
2
|
import { RunOnceScheduler } from '../../../../base/common/async.js';
|
|
3
3
|
import { isLinux } from '../../../../base/common/platform.js';
|
|
4
|
+
import { Constants } from '../../../../base/common/uint.js';
|
|
4
5
|
import './viewLines.css.js';
|
|
5
6
|
import { applyFontInfo } from '../../config/domFontInfo.js';
|
|
6
7
|
import { LineVisibleRanges, HorizontalRange, HorizontalPosition } from '../../view/renderingContext.js';
|
|
7
8
|
import { VisibleLinesCollection } from '../../view/viewLayer.js';
|
|
8
|
-
import { ViewPart, PartFingerprints } from '../../view/viewPart.js';
|
|
9
|
+
import { ViewPart, PartFingerprints, PartFingerprint } from '../../view/viewPart.js';
|
|
9
10
|
import { DomReadingContext } from './domReadingContext.js';
|
|
10
11
|
import { ViewLineOptions, ViewLine } from './viewLine.js';
|
|
12
|
+
import { EditorOption } from '../../../common/config/editorOptions.js';
|
|
11
13
|
import { Position } from '../../../common/core/position.js';
|
|
12
14
|
import { Range } from '../../../common/core/range.js';
|
|
15
|
+
import { ScrollType } from '../../../common/editorCommon.js';
|
|
16
|
+
import { VerticalRevealType } from '../../../common/viewEvents.js';
|
|
13
17
|
class LastRenderedData {
|
|
14
18
|
constructor() {
|
|
15
19
|
this._currentVisibleRange = ( new Range(1, 1, 1, 1));
|
|
@@ -64,17 +68,17 @@ class ViewLines extends ViewPart {
|
|
|
64
68
|
this.domNode = this._visibleLines.domNode;
|
|
65
69
|
const conf = this._context.configuration;
|
|
66
70
|
const options = this._context.configuration.options;
|
|
67
|
-
const fontInfo = options.get(
|
|
68
|
-
const wrappingInfo = options.get(
|
|
69
|
-
this._lineHeight = options.get(
|
|
71
|
+
const fontInfo = options.get(EditorOption.fontInfo);
|
|
72
|
+
const wrappingInfo = options.get(EditorOption.wrappingInfo);
|
|
73
|
+
this._lineHeight = options.get(EditorOption.lineHeight);
|
|
70
74
|
this._typicalHalfwidthCharacterWidth = fontInfo.typicalHalfwidthCharacterWidth;
|
|
71
75
|
this._isViewportWrapping = wrappingInfo.isViewportWrapping;
|
|
72
|
-
this._revealHorizontalRightPadding = options.get(
|
|
73
|
-
this._cursorSurroundingLines = options.get(
|
|
74
|
-
this._cursorSurroundingLinesStyle = options.get(
|
|
75
|
-
this._canUseLayerHinting = !options.get(
|
|
76
|
+
this._revealHorizontalRightPadding = options.get(EditorOption.revealHorizontalRightPadding);
|
|
77
|
+
this._cursorSurroundingLines = options.get(EditorOption.cursorSurroundingLines);
|
|
78
|
+
this._cursorSurroundingLinesStyle = options.get(EditorOption.cursorSurroundingLinesStyle);
|
|
79
|
+
this._canUseLayerHinting = !options.get(EditorOption.disableLayerHinting);
|
|
76
80
|
this._viewLineOptions = ( new ViewLineOptions(conf, this._context.theme.type));
|
|
77
|
-
PartFingerprints.write(this.domNode,
|
|
81
|
+
PartFingerprints.write(this.domNode, PartFingerprint.ViewLines);
|
|
78
82
|
this.domNode.setClassName(`view-lines ${MOUSE_CURSOR_TEXT_CSS_CLASS_NAME}`);
|
|
79
83
|
applyFontInfo(this.domNode, fontInfo);
|
|
80
84
|
this._maxLineWidth = 0;
|
|
@@ -86,8 +90,8 @@ class ViewLines extends ViewPart {
|
|
|
86
90
|
}, 2000));
|
|
87
91
|
this._lastRenderedData = ( new LastRenderedData());
|
|
88
92
|
this._horizontalRevealRequest = null;
|
|
89
|
-
this._stickyScrollEnabled = options.get(
|
|
90
|
-
this._maxNumberStickyLines = options.get(
|
|
93
|
+
this._stickyScrollEnabled = options.get(EditorOption.stickyScroll).enabled;
|
|
94
|
+
this._maxNumberStickyLines = options.get(EditorOption.stickyScroll).maxLineCount;
|
|
91
95
|
}
|
|
92
96
|
dispose() {
|
|
93
97
|
this._asyncUpdateLineWidths.dispose();
|
|
@@ -102,24 +106,24 @@ class ViewLines extends ViewPart {
|
|
|
102
106
|
}
|
|
103
107
|
onConfigurationChanged(e) {
|
|
104
108
|
this._visibleLines.onConfigurationChanged(e);
|
|
105
|
-
if (e.hasChanged(
|
|
109
|
+
if (e.hasChanged(EditorOption.wrappingInfo)) {
|
|
106
110
|
this._maxLineWidth = 0;
|
|
107
111
|
}
|
|
108
112
|
const options = this._context.configuration.options;
|
|
109
|
-
const fontInfo = options.get(
|
|
110
|
-
const wrappingInfo = options.get(
|
|
111
|
-
this._lineHeight = options.get(
|
|
113
|
+
const fontInfo = options.get(EditorOption.fontInfo);
|
|
114
|
+
const wrappingInfo = options.get(EditorOption.wrappingInfo);
|
|
115
|
+
this._lineHeight = options.get(EditorOption.lineHeight);
|
|
112
116
|
this._typicalHalfwidthCharacterWidth = fontInfo.typicalHalfwidthCharacterWidth;
|
|
113
117
|
this._isViewportWrapping = wrappingInfo.isViewportWrapping;
|
|
114
|
-
this._revealHorizontalRightPadding = options.get(
|
|
115
|
-
this._cursorSurroundingLines = options.get(
|
|
116
|
-
this._cursorSurroundingLinesStyle = options.get(
|
|
117
|
-
this._canUseLayerHinting = !options.get(
|
|
118
|
-
this._stickyScrollEnabled = options.get(
|
|
119
|
-
this._maxNumberStickyLines = options.get(
|
|
118
|
+
this._revealHorizontalRightPadding = options.get(EditorOption.revealHorizontalRightPadding);
|
|
119
|
+
this._cursorSurroundingLines = options.get(EditorOption.cursorSurroundingLines);
|
|
120
|
+
this._cursorSurroundingLinesStyle = options.get(EditorOption.cursorSurroundingLinesStyle);
|
|
121
|
+
this._canUseLayerHinting = !options.get(EditorOption.disableLayerHinting);
|
|
122
|
+
this._stickyScrollEnabled = options.get(EditorOption.stickyScroll).enabled;
|
|
123
|
+
this._maxNumberStickyLines = options.get(EditorOption.stickyScroll).maxLineCount;
|
|
120
124
|
applyFontInfo(this.domNode, fontInfo);
|
|
121
125
|
this._onOptionsMaybeChanged();
|
|
122
|
-
if (e.hasChanged(
|
|
126
|
+
if (e.hasChanged(EditorOption.layoutInfo)) {
|
|
123
127
|
this._maxLineWidth = 0;
|
|
124
128
|
}
|
|
125
129
|
return true;
|
|
@@ -210,7 +214,7 @@ class ViewLines extends ViewPart {
|
|
|
210
214
|
this._horizontalRevealRequest = null;
|
|
211
215
|
}
|
|
212
216
|
const scrollTopDelta = Math.abs(this._context.viewLayout.getCurrentScrollTop() - newScrollPosition.scrollTop);
|
|
213
|
-
const scrollType = (scrollTopDelta <= this._lineHeight ?
|
|
217
|
+
const scrollType = (scrollTopDelta <= this._lineHeight ? ScrollType.Immediate : e.scrollType);
|
|
214
218
|
this._context.viewModel.viewLayout.setScrollPosition(newScrollPosition, scrollType);
|
|
215
219
|
return true;
|
|
216
220
|
}
|
|
@@ -530,7 +534,7 @@ class ViewLines extends ViewPart {
|
|
|
530
534
|
}
|
|
531
535
|
}
|
|
532
536
|
if (!minimalReveal) {
|
|
533
|
-
if (verticalType ===
|
|
537
|
+
if (verticalType === VerticalRevealType.Simple || verticalType === VerticalRevealType.Bottom) {
|
|
534
538
|
paddingBottom += this._lineHeight;
|
|
535
539
|
}
|
|
536
540
|
}
|
|
@@ -543,8 +547,8 @@ class ViewLines extends ViewPart {
|
|
|
543
547
|
}
|
|
544
548
|
newScrollTop = boxStartY;
|
|
545
549
|
}
|
|
546
|
-
else if (verticalType ===
|
|
547
|
-
if (verticalType ===
|
|
550
|
+
else if (verticalType === VerticalRevealType.NearTop || verticalType === VerticalRevealType.NearTopIfOutsideViewport) {
|
|
551
|
+
if (verticalType === VerticalRevealType.NearTopIfOutsideViewport && viewportStartY <= boxStartY && boxEndY <= viewportEndY) {
|
|
548
552
|
newScrollTop = viewportStartY;
|
|
549
553
|
}
|
|
550
554
|
else {
|
|
@@ -554,8 +558,8 @@ class ViewLines extends ViewPart {
|
|
|
554
558
|
newScrollTop = Math.max(minScrollTop, desiredScrollTop);
|
|
555
559
|
}
|
|
556
560
|
}
|
|
557
|
-
else if (verticalType ===
|
|
558
|
-
if (verticalType ===
|
|
561
|
+
else if (verticalType === VerticalRevealType.Center || verticalType === VerticalRevealType.CenterIfOutsideViewport) {
|
|
562
|
+
if (verticalType === VerticalRevealType.CenterIfOutsideViewport && viewportStartY <= boxStartY && boxEndY <= viewportEndY) {
|
|
559
563
|
newScrollTop = viewportStartY;
|
|
560
564
|
}
|
|
561
565
|
else {
|
|
@@ -564,16 +568,16 @@ class ViewLines extends ViewPart {
|
|
|
564
568
|
}
|
|
565
569
|
}
|
|
566
570
|
else {
|
|
567
|
-
newScrollTop = this._computeMinimumScrolling(viewportStartY, viewportEndY, boxStartY, boxEndY, verticalType ===
|
|
571
|
+
newScrollTop = this._computeMinimumScrolling(viewportStartY, viewportEndY, boxStartY, boxEndY, verticalType === VerticalRevealType.Top, verticalType === VerticalRevealType.Bottom);
|
|
568
572
|
}
|
|
569
573
|
return newScrollTop;
|
|
570
574
|
}
|
|
571
575
|
_computeScrollLeftToReveal(horizontalRevealRequest) {
|
|
572
576
|
const viewport = this._context.viewLayout.getCurrentViewport();
|
|
573
|
-
const layoutInfo = this._context.configuration.options.get(
|
|
577
|
+
const layoutInfo = this._context.configuration.options.get(EditorOption.layoutInfo);
|
|
574
578
|
const viewportStartX = viewport.left;
|
|
575
579
|
const viewportEndX = viewportStartX + viewport.width - layoutInfo.verticalScrollbarWidth;
|
|
576
|
-
let boxStartX =
|
|
580
|
+
let boxStartX = Constants.MAX_SAFE_SMALL_INTEGER;
|
|
577
581
|
let boxEndX = 0;
|
|
578
582
|
if (horizontalRevealRequest.type === 'range') {
|
|
579
583
|
const visibleRanges = this._visibleRangesForLineRange(horizontalRevealRequest.lineNumber, horizontalRevealRequest.startColumn, horizontalRevealRequest.endColumn);
|
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
import './linesDecorations.css.js';
|
|
2
2
|
import { DedupOverlay, DecorationToRender } from '../glyphMargin/glyphMargin.js';
|
|
3
|
+
import { EditorOption } from '../../../common/config/editorOptions.js';
|
|
3
4
|
class LinesDecorationsOverlay extends DedupOverlay {
|
|
4
5
|
constructor(context) {
|
|
5
6
|
super();
|
|
6
7
|
this._context = context;
|
|
7
8
|
const options = this._context.configuration.options;
|
|
8
|
-
const layoutInfo = options.get(
|
|
9
|
+
const layoutInfo = options.get(EditorOption.layoutInfo);
|
|
9
10
|
this._decorationsLeft = layoutInfo.decorationsLeft;
|
|
10
11
|
this._decorationsWidth = layoutInfo.decorationsWidth;
|
|
11
12
|
this._renderResult = null;
|
|
@@ -18,7 +19,7 @@ class LinesDecorationsOverlay extends DedupOverlay {
|
|
|
18
19
|
}
|
|
19
20
|
onConfigurationChanged(e) {
|
|
20
21
|
const options = this._context.configuration.options;
|
|
21
|
-
const layoutInfo = options.get(
|
|
22
|
+
const layoutInfo = options.get(EditorOption.layoutInfo);
|
|
22
23
|
this._decorationsLeft = layoutInfo.decorationsLeft;
|
|
23
24
|
this._decorationsWidth = layoutInfo.decorationsWidth;
|
|
24
25
|
return true;
|
|
@@ -1,14 +1,15 @@
|
|
|
1
1
|
import './margin.css.js';
|
|
2
2
|
import { createFastDomNode } from '../../../../base/browser/fastDomNode.js';
|
|
3
3
|
import { ViewPart } from '../../view/viewPart.js';
|
|
4
|
+
import { EditorOption } from '../../../common/config/editorOptions.js';
|
|
4
5
|
class Margin extends ViewPart {
|
|
5
6
|
static { this.CLASS_NAME = 'glyph-margin'; }
|
|
6
7
|
static { this.OUTER_CLASS_NAME = 'margin'; }
|
|
7
8
|
constructor(context) {
|
|
8
9
|
super(context);
|
|
9
10
|
const options = this._context.configuration.options;
|
|
10
|
-
const layoutInfo = options.get(
|
|
11
|
-
this._canUseLayerHinting = !options.get(
|
|
11
|
+
const layoutInfo = options.get(EditorOption.layoutInfo);
|
|
12
|
+
this._canUseLayerHinting = !options.get(EditorOption.disableLayerHinting);
|
|
12
13
|
this._contentLeft = layoutInfo.contentLeft;
|
|
13
14
|
this._glyphMarginLeft = layoutInfo.glyphMarginLeft;
|
|
14
15
|
this._glyphMarginWidth = layoutInfo.glyphMarginWidth;
|
|
@@ -29,8 +30,8 @@ class Margin extends ViewPart {
|
|
|
29
30
|
}
|
|
30
31
|
onConfigurationChanged(e) {
|
|
31
32
|
const options = this._context.configuration.options;
|
|
32
|
-
const layoutInfo = options.get(
|
|
33
|
-
this._canUseLayerHinting = !options.get(
|
|
33
|
+
const layoutInfo = options.get(EditorOption.layoutInfo);
|
|
34
|
+
this._canUseLayerHinting = !options.get(EditorOption.disableLayerHinting);
|
|
34
35
|
this._contentLeft = layoutInfo.contentLeft;
|
|
35
36
|
this._glyphMarginLeft = layoutInfo.glyphMarginLeft;
|
|
36
37
|
this._glyphMarginWidth = layoutInfo.glyphMarginWidth;
|
|
@@ -2,15 +2,20 @@ import './minimap.css.js';
|
|
|
2
2
|
import { addStandardDisposableListener, getDomNodePagePosition, EventType, addDisposableListener } from '../../../../base/browser/dom.js';
|
|
3
3
|
import { createFastDomNode } from '../../../../base/browser/fastDomNode.js';
|
|
4
4
|
import { GlobalPointerMoveMonitor } from '../../../../base/browser/globalPointerMoveMonitor.js';
|
|
5
|
+
import { CharCode } from '../../../../base/common/charCode.js';
|
|
5
6
|
import { Disposable } from '../../../../base/common/lifecycle.js';
|
|
6
7
|
import { isWindows } from '../../../../base/common/platform.js';
|
|
7
8
|
import { isFullWidthCharacter } from '../../../../base/common/strings.js';
|
|
8
9
|
import { RenderedLinesCollection } from '../../view/viewLayer.js';
|
|
9
|
-
import { ViewPart, PartFingerprints } from '../../view/viewPart.js';
|
|
10
|
-
import { MINIMAP_GUTTER_WIDTH, EditorLayoutInfoComputer } from '../../../common/config/editorOptions.js';
|
|
10
|
+
import { ViewPart, PartFingerprints, PartFingerprint } from '../../view/viewPart.js';
|
|
11
|
+
import { RenderMinimap, MINIMAP_GUTTER_WIDTH, EditorOption, EditorLayoutInfoComputer } from '../../../common/config/editorOptions.js';
|
|
11
12
|
import { Range } from '../../../common/core/range.js';
|
|
12
13
|
import { RGBA8 } from '../../../common/core/rgba.js';
|
|
14
|
+
import { ScrollType } from '../../../common/editorCommon.js';
|
|
15
|
+
import { ColorId } from '../../../common/encodedTokenAttributes.js';
|
|
16
|
+
import { Constants } from './minimapCharSheet.js';
|
|
13
17
|
import { MinimapTokensColorTracker } from '../../../common/viewModel/minimapTokensColorTracker.js';
|
|
18
|
+
import { VerticalRevealType } from '../../../common/viewEvents.js';
|
|
14
19
|
import { ViewModelDecoration } from '../../../common/viewModel.js';
|
|
15
20
|
import '../../../../platform/theme/common/colorUtils.js';
|
|
16
21
|
import '../../../../platform/theme/common/colors/baseColors.js';
|
|
@@ -26,6 +31,7 @@ import '../../../../platform/theme/common/colors/searchColors.js';
|
|
|
26
31
|
import { Selection } from '../../../common/core/selection.js';
|
|
27
32
|
import { Gesture, EventType as EventType$1 } from '../../../../base/browser/touch.js';
|
|
28
33
|
import { MinimapCharRendererFactory } from './minimapCharRendererFactory.js';
|
|
34
|
+
import { MinimapPosition, MinimapSectionHeaderStyle } from '../../../common/model.js';
|
|
29
35
|
import { createSingleCallFunction } from '../../../../base/common/functional.js';
|
|
30
36
|
import { LRUCache } from '../../../../base/common/map.js';
|
|
31
37
|
import { DEFAULT_FONT_FAMILY } from '../../../../base/browser/fonts.js';
|
|
@@ -34,22 +40,22 @@ const GUTTER_DECORATION_WIDTH = 2;
|
|
|
34
40
|
class MinimapOptions {
|
|
35
41
|
constructor(configuration, theme, tokensColorTracker) {
|
|
36
42
|
const options = configuration.options;
|
|
37
|
-
const pixelRatio = options.get(
|
|
38
|
-
const layoutInfo = options.get(
|
|
43
|
+
const pixelRatio = options.get(EditorOption.pixelRatio);
|
|
44
|
+
const layoutInfo = options.get(EditorOption.layoutInfo);
|
|
39
45
|
const minimapLayout = layoutInfo.minimap;
|
|
40
|
-
const fontInfo = options.get(
|
|
41
|
-
const minimapOpts = options.get(
|
|
46
|
+
const fontInfo = options.get(EditorOption.fontInfo);
|
|
47
|
+
const minimapOpts = options.get(EditorOption.minimap);
|
|
42
48
|
this.renderMinimap = minimapLayout.renderMinimap;
|
|
43
49
|
this.size = minimapOpts.size;
|
|
44
50
|
this.minimapHeightIsEditorHeight = minimapLayout.minimapHeightIsEditorHeight;
|
|
45
|
-
this.scrollBeyondLastLine = options.get(
|
|
46
|
-
this.paddingTop = options.get(
|
|
47
|
-
this.paddingBottom = options.get(
|
|
51
|
+
this.scrollBeyondLastLine = options.get(EditorOption.scrollBeyondLastLine);
|
|
52
|
+
this.paddingTop = options.get(EditorOption.padding).top;
|
|
53
|
+
this.paddingBottom = options.get(EditorOption.padding).bottom;
|
|
48
54
|
this.showSlider = minimapOpts.showSlider;
|
|
49
55
|
this.autohide = minimapOpts.autohide;
|
|
50
56
|
this.pixelRatio = pixelRatio;
|
|
51
57
|
this.typicalHalfwidthCharacterWidth = fontInfo.typicalHalfwidthCharacterWidth;
|
|
52
|
-
this.lineHeight = options.get(
|
|
58
|
+
this.lineHeight = options.get(EditorOption.lineHeight);
|
|
53
59
|
this.minimapLeft = minimapLayout.minimapLeft;
|
|
54
60
|
this.minimapWidth = minimapLayout.minimapWidth;
|
|
55
61
|
this.minimapHeight = layoutInfo.height;
|
|
@@ -61,12 +67,13 @@ class MinimapOptions {
|
|
|
61
67
|
this.editorHeight = layoutInfo.height;
|
|
62
68
|
this.fontScale = minimapLayout.minimapScale;
|
|
63
69
|
this.minimapLineHeight = minimapLayout.minimapLineHeight;
|
|
64
|
-
this.minimapCharWidth =
|
|
70
|
+
this.minimapCharWidth = Constants.BASE_CHAR_WIDTH * this.fontScale;
|
|
65
71
|
this.sectionHeaderFontFamily = DEFAULT_FONT_FAMILY;
|
|
66
72
|
this.sectionHeaderFontSize = minimapOpts.sectionHeaderFontSize * pixelRatio;
|
|
67
|
-
this.
|
|
73
|
+
this.sectionHeaderLetterSpacing = minimapOpts.sectionHeaderLetterSpacing;
|
|
74
|
+
this.sectionHeaderFontColor = MinimapOptions._getSectionHeaderColor(theme, tokensColorTracker.getColor(ColorId.DefaultForeground));
|
|
68
75
|
this.charRenderer = createSingleCallFunction(() => MinimapCharRendererFactory.create(this.fontScale, fontInfo.fontFamily));
|
|
69
|
-
this.defaultBackgroundColor = tokensColorTracker.getColor(
|
|
76
|
+
this.defaultBackgroundColor = tokensColorTracker.getColor(ColorId.DefaultBackground);
|
|
70
77
|
this.backgroundColor = MinimapOptions._getMinimapBackground(theme, this.defaultBackgroundColor);
|
|
71
78
|
this.foregroundAlpha = MinimapOptions._getMinimapForegroundOpacity(theme);
|
|
72
79
|
}
|
|
@@ -126,6 +133,7 @@ class MinimapOptions {
|
|
|
126
133
|
&& this.minimapLineHeight === other.minimapLineHeight
|
|
127
134
|
&& this.minimapCharWidth === other.minimapCharWidth
|
|
128
135
|
&& this.sectionHeaderFontSize === other.sectionHeaderFontSize
|
|
136
|
+
&& this.sectionHeaderLetterSpacing === other.sectionHeaderLetterSpacing
|
|
129
137
|
&& this.defaultBackgroundColor && this.defaultBackgroundColor.equals(other.defaultBackgroundColor)
|
|
130
138
|
&& this.backgroundColor && this.backgroundColor.equals(other.backgroundColor)
|
|
131
139
|
&& this.foregroundAlpha === other.foregroundAlpha);
|
|
@@ -382,7 +390,7 @@ class MinimapBuffers {
|
|
|
382
390
|
}
|
|
383
391
|
class MinimapSamplingState {
|
|
384
392
|
static compute(options, viewLineCount, oldSamplingState) {
|
|
385
|
-
if (options.renderMinimap ===
|
|
393
|
+
if (options.renderMinimap === RenderMinimap.None || !options.isSampling) {
|
|
386
394
|
return [null, []];
|
|
387
395
|
}
|
|
388
396
|
const { minimapLineCount } = EditorLayoutInfoComputer.computeContainedMinimapLineCount({
|
|
@@ -850,12 +858,12 @@ class Minimap extends ViewPart {
|
|
|
850
858
|
if (this._samplingState) {
|
|
851
859
|
lineNumber = this._samplingState.minimapLines[lineNumber - 1];
|
|
852
860
|
}
|
|
853
|
-
this._context.viewModel.revealRange('mouse', false, ( new Range(lineNumber, 1, lineNumber, 1)),
|
|
861
|
+
this._context.viewModel.revealRange('mouse', false, ( new Range(lineNumber, 1, lineNumber, 1)), VerticalRevealType.Center, ScrollType.Smooth);
|
|
854
862
|
}
|
|
855
863
|
setScrollTop(scrollTop) {
|
|
856
864
|
this._context.viewModel.viewLayout.setScrollPosition({
|
|
857
865
|
scrollTop: scrollTop
|
|
858
|
-
},
|
|
866
|
+
}, ScrollType.Immediate);
|
|
859
867
|
}
|
|
860
868
|
}
|
|
861
869
|
class InnerMinimap extends Disposable {
|
|
@@ -869,7 +877,7 @@ class InnerMinimap extends Disposable {
|
|
|
869
877
|
this._buffers = null;
|
|
870
878
|
this._selectionColor = this._theme.getColor(minimapSelection);
|
|
871
879
|
this._domNode = createFastDomNode(document.createElement('div'));
|
|
872
|
-
PartFingerprints.write(this._domNode,
|
|
880
|
+
PartFingerprints.write(this._domNode, PartFingerprint.Minimap);
|
|
873
881
|
this._domNode.setClassName(this._getMinimapDomNodeClassName());
|
|
874
882
|
this._domNode.setPosition('absolute');
|
|
875
883
|
this._domNode.setAttribute('role', 'presentation');
|
|
@@ -900,7 +908,7 @@ class InnerMinimap extends Disposable {
|
|
|
900
908
|
this._pointerDownListener = addStandardDisposableListener(this._domNode.domNode, EventType.POINTER_DOWN, (e) => {
|
|
901
909
|
e.preventDefault();
|
|
902
910
|
const renderMinimap = this._model.options.renderMinimap;
|
|
903
|
-
if (renderMinimap ===
|
|
911
|
+
if (renderMinimap === RenderMinimap.None) {
|
|
904
912
|
return;
|
|
905
913
|
}
|
|
906
914
|
if (!this._lastRenderData) {
|
|
@@ -1093,7 +1101,7 @@ class InnerMinimap extends Disposable {
|
|
|
1093
1101
|
}
|
|
1094
1102
|
render(renderingCtx) {
|
|
1095
1103
|
const renderMinimap = this._model.options.renderMinimap;
|
|
1096
|
-
if (renderMinimap ===
|
|
1104
|
+
if (renderMinimap === RenderMinimap.None) {
|
|
1097
1105
|
this._shadow.setClassName('minimap-shadow-hidden');
|
|
1098
1106
|
this._sliderHorizontal.setWidth(0);
|
|
1099
1107
|
this._sliderHorizontal.setHeight(0);
|
|
@@ -1176,7 +1184,7 @@ class InnerMinimap extends Disposable {
|
|
|
1176
1184
|
for (let i = decorations.length - 1; i >= 0; i--) {
|
|
1177
1185
|
const decoration = decorations[i];
|
|
1178
1186
|
const minimapOptions = decoration.options.minimap;
|
|
1179
|
-
if (!minimapOptions || minimapOptions.position !==
|
|
1187
|
+
if (!minimapOptions || minimapOptions.position !== MinimapPosition.Inline) {
|
|
1180
1188
|
continue;
|
|
1181
1189
|
}
|
|
1182
1190
|
const intersection = layout.intersectWithViewport(decoration.range);
|
|
@@ -1236,10 +1244,10 @@ class InnerMinimap extends Disposable {
|
|
|
1236
1244
|
}
|
|
1237
1245
|
for (let line = startLineNumber; line <= endLineNumber; line++) {
|
|
1238
1246
|
switch (minimapOptions.position) {
|
|
1239
|
-
case
|
|
1247
|
+
case MinimapPosition.Inline:
|
|
1240
1248
|
this.renderDecorationOnLine(canvasContext, lineOffsetMap, decoration.range, decorationColor, layout, line, minimapLineHeight, minimapLineHeight, tabSize, characterWidth, canvasInnerWidth);
|
|
1241
1249
|
continue;
|
|
1242
|
-
case
|
|
1250
|
+
case MinimapPosition.Gutter: {
|
|
1243
1251
|
const y = layout.getYForLineNumber(line, minimapLineHeight);
|
|
1244
1252
|
const x = 2;
|
|
1245
1253
|
this.renderDecoration(canvasContext, decorationColor, x, y, GUTTER_DECORATION_WIDTH, minimapLineHeight);
|
|
@@ -1276,7 +1284,7 @@ class InnerMinimap extends Disposable {
|
|
|
1276
1284
|
let prevx = MINIMAP_GUTTER_WIDTH;
|
|
1277
1285
|
for (let i = 1; i < lineData.length + 1; i++) {
|
|
1278
1286
|
const charCode = lineData.charCodeAt(i - 1);
|
|
1279
|
-
const dx = charCode ===
|
|
1287
|
+
const dx = charCode === CharCode.Tab
|
|
1280
1288
|
? tabSize * charWidth
|
|
1281
1289
|
: isFullWidthCharacter(charCode)
|
|
1282
1290
|
? 2 * charWidth
|
|
@@ -1303,6 +1311,7 @@ class InnerMinimap extends Disposable {
|
|
|
1303
1311
|
_renderSectionHeaders(layout) {
|
|
1304
1312
|
const minimapLineHeight = this._model.options.minimapLineHeight;
|
|
1305
1313
|
const sectionHeaderFontSize = this._model.options.sectionHeaderFontSize;
|
|
1314
|
+
const sectionHeaderLetterSpacing = this._model.options.sectionHeaderLetterSpacing;
|
|
1306
1315
|
const backgroundFillHeight = sectionHeaderFontSize * 1.5;
|
|
1307
1316
|
const { canvasInnerWidth } = this._model.options;
|
|
1308
1317
|
const backgroundColor = this._model.options.backgroundColor;
|
|
@@ -1311,7 +1320,8 @@ class InnerMinimap extends Disposable {
|
|
|
1311
1320
|
const foregroundFill = `rgb(${foregroundColor.r} ${foregroundColor.g} ${foregroundColor.b})`;
|
|
1312
1321
|
const separatorStroke = foregroundFill;
|
|
1313
1322
|
const canvasContext = this._decorationsCanvas.domNode.getContext('2d');
|
|
1314
|
-
canvasContext.
|
|
1323
|
+
canvasContext.letterSpacing = sectionHeaderLetterSpacing + 'px';
|
|
1324
|
+
canvasContext.font = '500 ' + sectionHeaderFontSize + 'px ' + this._model.options.sectionHeaderFontFamily;
|
|
1315
1325
|
canvasContext.strokeStyle = separatorStroke;
|
|
1316
1326
|
canvasContext.lineWidth = 0.2;
|
|
1317
1327
|
const decorations = this._model.getSectionHeaderDecorationsInViewport(layout.startLineNumber, layout.endLineNumber);
|
|
@@ -1322,7 +1332,7 @@ class InnerMinimap extends Disposable {
|
|
|
1322
1332
|
const backgroundFillY = y - sectionHeaderFontSize;
|
|
1323
1333
|
const separatorY = backgroundFillY + 2;
|
|
1324
1334
|
const headerText = this._model.getSectionHeaderText(decoration, fitWidth);
|
|
1325
|
-
InnerMinimap._renderSectionLabel(canvasContext, headerText, decoration.options.minimap?.sectionHeaderStyle ===
|
|
1335
|
+
InnerMinimap._renderSectionLabel(canvasContext, headerText, decoration.options.minimap?.sectionHeaderStyle === MinimapSectionHeaderStyle.Underlined, backgroundFill, foregroundFill, canvasInnerWidth, backgroundFillY, backgroundFillHeight, y, separatorY);
|
|
1326
1336
|
}
|
|
1327
1337
|
}
|
|
1328
1338
|
static _fitSectionHeader(target, maxWidth, headerText) {
|
|
@@ -1384,7 +1394,7 @@ class InnerMinimap extends Disposable {
|
|
|
1384
1394
|
const charRenderer = this._model.options.charRenderer();
|
|
1385
1395
|
const fontScale = this._model.options.fontScale;
|
|
1386
1396
|
const minimapCharWidth = this._model.options.minimapCharWidth;
|
|
1387
|
-
const baseCharHeight = (renderMinimap ===
|
|
1397
|
+
const baseCharHeight = (renderMinimap === RenderMinimap.Text ? Constants.BASE_CHAR_HEIGHT : Constants.BASE_CHAR_HEIGHT + 1);
|
|
1388
1398
|
const renderMinimapLineHeight = baseCharHeight * fontScale;
|
|
1389
1399
|
const innerLinePadding = (minimapLineHeight > renderMinimapLineHeight ? Math.floor((minimapLineHeight - renderMinimapLineHeight) / 2) : 0);
|
|
1390
1400
|
const backgroundA = background.a / 255;
|
|
@@ -1498,18 +1508,18 @@ class InnerMinimap extends Disposable {
|
|
|
1498
1508
|
return;
|
|
1499
1509
|
}
|
|
1500
1510
|
const charCode = content.charCodeAt(charIndex);
|
|
1501
|
-
if (charCode ===
|
|
1511
|
+
if (charCode === CharCode.Tab) {
|
|
1502
1512
|
const insertSpacesCount = tabSize - (charIndex + tabsCharDelta) % tabSize;
|
|
1503
1513
|
tabsCharDelta += insertSpacesCount - 1;
|
|
1504
1514
|
dx += insertSpacesCount * charWidth;
|
|
1505
1515
|
}
|
|
1506
|
-
else if (charCode ===
|
|
1516
|
+
else if (charCode === CharCode.Space) {
|
|
1507
1517
|
dx += charWidth;
|
|
1508
1518
|
}
|
|
1509
1519
|
else {
|
|
1510
1520
|
const count = isFullWidthCharacter(charCode) ? 2 : 1;
|
|
1511
1521
|
for (let i = 0; i < count; i++) {
|
|
1512
|
-
if (renderMinimap ===
|
|
1522
|
+
if (renderMinimap === RenderMinimap.Blocks) {
|
|
1513
1523
|
minimapCharRenderer.blockRenderChar(target, dx, dy + innerLinePadding, tokenColor, foregroundAlpha, backgroundColor, backgroundAlpha, force1pxHeight);
|
|
1514
1524
|
}
|
|
1515
1525
|
else {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { getCharIndex } from './minimapCharSheet.js';
|
|
1
|
+
import { Constants, getCharIndex } from './minimapCharSheet.js';
|
|
2
2
|
import { toUint8 } from '../../../../base/common/uint.js';
|
|
3
3
|
class MinimapCharRenderer {
|
|
4
4
|
constructor(charData, scale) {
|
|
@@ -15,8 +15,8 @@ class MinimapCharRenderer {
|
|
|
15
15
|
return result;
|
|
16
16
|
}
|
|
17
17
|
renderChar(target, dx, dy, chCode, color, foregroundAlpha, backgroundColor, backgroundAlpha, fontScale, useLighterFont, force1pxHeight) {
|
|
18
|
-
const charWidth =
|
|
19
|
-
const charHeight =
|
|
18
|
+
const charWidth = Constants.BASE_CHAR_WIDTH * this.scale;
|
|
19
|
+
const charHeight = Constants.BASE_CHAR_HEIGHT * this.scale;
|
|
20
20
|
const renderHeight = (force1pxHeight ? 1 : charHeight);
|
|
21
21
|
if (dx + charWidth > target.width || dy + renderHeight > target.height) {
|
|
22
22
|
console.warn('bad render request outside image data');
|
|
@@ -24,7 +24,7 @@ class MinimapCharRenderer {
|
|
|
24
24
|
}
|
|
25
25
|
const charData = useLighterFont ? this.charDataLight : this.charDataNormal;
|
|
26
26
|
const charIndex = getCharIndex(chCode, fontScale);
|
|
27
|
-
const destWidth = target.width *
|
|
27
|
+
const destWidth = target.width * Constants.RGBA_CHANNELS_CNT;
|
|
28
28
|
const backgroundR = backgroundColor.r;
|
|
29
29
|
const backgroundG = backgroundColor.g;
|
|
30
30
|
const backgroundB = backgroundColor.b;
|
|
@@ -34,7 +34,7 @@ class MinimapCharRenderer {
|
|
|
34
34
|
const destAlpha = Math.max(foregroundAlpha, backgroundAlpha);
|
|
35
35
|
const dest = target.data;
|
|
36
36
|
let sourceOffset = charIndex * charWidth * charHeight;
|
|
37
|
-
let row = dy * destWidth + dx *
|
|
37
|
+
let row = dy * destWidth + dx * Constants.RGBA_CHANNELS_CNT;
|
|
38
38
|
for (let y = 0; y < renderHeight; y++) {
|
|
39
39
|
let column = row;
|
|
40
40
|
for (let x = 0; x < charWidth; x++) {
|
|
@@ -48,14 +48,14 @@ class MinimapCharRenderer {
|
|
|
48
48
|
}
|
|
49
49
|
}
|
|
50
50
|
blockRenderChar(target, dx, dy, color, foregroundAlpha, backgroundColor, backgroundAlpha, force1pxHeight) {
|
|
51
|
-
const charWidth =
|
|
52
|
-
const charHeight =
|
|
51
|
+
const charWidth = Constants.BASE_CHAR_WIDTH * this.scale;
|
|
52
|
+
const charHeight = Constants.BASE_CHAR_HEIGHT * this.scale;
|
|
53
53
|
const renderHeight = (force1pxHeight ? 1 : charHeight);
|
|
54
54
|
if (dx + charWidth > target.width || dy + renderHeight > target.height) {
|
|
55
55
|
console.warn('bad render request outside image data');
|
|
56
56
|
return;
|
|
57
57
|
}
|
|
58
|
-
const destWidth = target.width *
|
|
58
|
+
const destWidth = target.width * Constants.RGBA_CHANNELS_CNT;
|
|
59
59
|
const c = 0.5 * (foregroundAlpha / 255);
|
|
60
60
|
const backgroundR = backgroundColor.r;
|
|
61
61
|
const backgroundG = backgroundColor.g;
|
|
@@ -68,7 +68,7 @@ class MinimapCharRenderer {
|
|
|
68
68
|
const colorB = backgroundB + deltaB * c;
|
|
69
69
|
const destAlpha = Math.max(foregroundAlpha, backgroundAlpha);
|
|
70
70
|
const dest = target.data;
|
|
71
|
-
let row = dy * destWidth + dx *
|
|
71
|
+
let row = dy * destWidth + dx * Constants.RGBA_CHANNELS_CNT;
|
|
72
72
|
for (let y = 0; y < renderHeight; y++) {
|
|
73
73
|
let column = row;
|
|
74
74
|
for (let x = 0; x < charWidth; x++) {
|