monaco-editor-core 0.57.0 → 0.58.0-dev-20261104
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/esm/nls.keys.json +1 -1
- package/esm/nls.messages.cs.js +2 -2
- package/esm/nls.messages.de.js +2 -2
- package/esm/nls.messages.es.js +2 -2
- package/esm/nls.messages.fr.js +2 -2
- package/esm/nls.messages.it.js +2 -2
- package/esm/nls.messages.ja.js +2 -2
- package/esm/nls.messages.js +1 -1
- package/esm/nls.messages.json +1 -1
- package/esm/nls.messages.ko.js +2 -2
- package/esm/nls.messages.pl.js +2 -2
- package/esm/nls.messages.pt-br.js +2 -2
- package/esm/nls.messages.ru.js +2 -2
- package/esm/nls.messages.tr.js +2 -2
- package/esm/nls.messages.zh-cn.js +2 -2
- package/esm/nls.messages.zh-tw.js +2 -2
- package/esm/nls.metadata.json +38 -6
- package/esm/vs/base/browser/browser.js +8 -0
- package/esm/vs/base/browser/browser.js.map +1 -1
- package/esm/vs/base/browser/contextmenu.js +8 -1
- package/esm/vs/base/browser/contextmenu.js.map +1 -1
- package/esm/vs/base/browser/dom.js +34 -5
- package/esm/vs/base/browser/dom.js.map +1 -1
- package/esm/vs/base/browser/dompurify/dompurify.js +2457 -2640
- package/esm/vs/base/browser/markdownRenderer.js +48 -21
- package/esm/vs/base/browser/markdownRenderer.js.map +1 -1
- package/esm/vs/base/browser/pixelRatio.js +3 -2
- package/esm/vs/base/browser/pixelRatio.js.map +1 -1
- package/esm/vs/base/browser/ui/actionbar/actionViewItems.js +5 -2
- package/esm/vs/base/browser/ui/actionbar/actionViewItems.js.map +1 -1
- package/esm/vs/base/browser/ui/actionbar/actionbar.js +7 -2
- package/esm/vs/base/browser/ui/actionbar/actionbar.js.map +1 -1
- package/esm/vs/base/browser/ui/animations/animations.js +68 -40
- package/esm/vs/base/browser/ui/animations/animations.js.map +1 -1
- package/esm/vs/base/browser/ui/button/button.js +7 -0
- package/esm/vs/base/browser/ui/button/button.js.map +1 -1
- package/esm/vs/base/browser/ui/codicons/codicon/codicon.ttf +0 -0
- package/esm/vs/base/browser/ui/contextview/contextview.css +15 -0
- package/esm/vs/base/browser/ui/contextview/contextview.js +266 -40
- package/esm/vs/base/browser/ui/contextview/contextview.js.map +1 -1
- package/esm/vs/base/browser/ui/contextview/windowControlsOverlay.js +72 -0
- package/esm/vs/base/browser/ui/contextview/windowControlsOverlay.js.map +1 -0
- package/esm/vs/base/browser/ui/dialog/dialog.css +5 -0
- package/esm/vs/base/browser/ui/dropdown/dropdown.js +2 -1
- package/esm/vs/base/browser/ui/dropdown/dropdown.js.map +1 -1
- package/esm/vs/base/browser/ui/dropdown/dropdownActionViewItem.js +1 -0
- package/esm/vs/base/browser/ui/dropdown/dropdownActionViewItem.js.map +1 -1
- package/esm/vs/base/browser/ui/hover/hover.js.map +1 -1
- package/esm/vs/base/browser/ui/list/listView.js +87 -15
- package/esm/vs/base/browser/ui/list/listView.js.map +1 -1
- package/esm/vs/base/browser/ui/list/listWidget.js +37 -15
- package/esm/vs/base/browser/ui/list/listWidget.js.map +1 -1
- package/esm/vs/base/browser/ui/menu/menu.js +189 -52
- package/esm/vs/base/browser/ui/menu/menu.js.map +1 -1
- package/esm/vs/base/browser/ui/radio/radio.css +11 -0
- package/esm/vs/base/browser/ui/scrollbar/scrollableElement.js +2 -1
- package/esm/vs/base/browser/ui/scrollbar/scrollableElement.js.map +1 -1
- package/esm/vs/base/browser/ui/selectBox/selectBox.js.map +1 -1
- package/esm/vs/base/browser/ui/selectBox/selectBoxCustom.js +14 -8
- package/esm/vs/base/browser/ui/selectBox/selectBoxCustom.js.map +1 -1
- package/esm/vs/base/browser/ui/splitview/splitview.js +11 -7
- package/esm/vs/base/browser/ui/splitview/splitview.js.map +1 -1
- package/esm/vs/base/browser/ui/toggle/switch.css +16 -7
- package/esm/vs/base/browser/ui/toggle/switch.js +9 -6
- package/esm/vs/base/browser/ui/toggle/switch.js.map +1 -1
- package/esm/vs/base/browser/ui/toolbar/toolbar.css +1 -2
- package/esm/vs/base/browser/ui/toolbar/toolbar.js +85 -38
- package/esm/vs/base/browser/ui/toolbar/toolbar.js.map +1 -1
- package/esm/vs/base/browser/ui/tree/abstractTree.js +48 -9
- package/esm/vs/base/browser/ui/tree/abstractTree.js.map +1 -1
- package/esm/vs/base/browser/ui/tree/asyncDataTree.js +10 -1
- package/esm/vs/base/browser/ui/tree/asyncDataTree.js.map +1 -1
- package/esm/vs/base/browser/ui/tree/objectTree.js +3 -0
- package/esm/vs/base/browser/ui/tree/objectTree.js.map +1 -1
- package/esm/vs/base/browser/ui/tree/tree.js.map +1 -1
- package/esm/vs/base/common/actions.js +8 -2
- package/esm/vs/base/common/actions.js.map +1 -1
- package/esm/vs/base/common/arrays.js +4 -4
- package/esm/vs/base/common/arrays.js.map +1 -1
- package/esm/vs/base/common/async.js +12 -8
- package/esm/vs/base/common/async.js.map +1 -1
- package/esm/vs/base/common/cancellation.js +25 -0
- package/esm/vs/base/common/cancellation.js.map +1 -1
- package/esm/vs/base/common/codicons.js +2 -0
- package/esm/vs/base/common/codicons.js.map +1 -1
- package/esm/vs/base/common/codiconsLibrary.js +2 -0
- package/esm/vs/base/common/codiconsLibrary.js.map +1 -1
- package/esm/vs/base/common/color.js +1 -1
- package/esm/vs/base/common/color.js.map +1 -1
- package/esm/vs/base/common/diff/diff.js +60 -1
- package/esm/vs/base/common/diff/diff.js.map +1 -1
- package/esm/vs/base/common/event.js +1 -1
- package/esm/vs/base/common/event.js.map +1 -1
- package/esm/vs/base/common/glob.js +1 -0
- package/esm/vs/base/common/glob.js.map +1 -1
- package/esm/vs/base/common/htmlContent.js +74 -12
- package/esm/vs/base/common/htmlContent.js.map +1 -1
- package/esm/vs/base/common/json.js +19 -0
- package/esm/vs/base/common/json.js.map +1 -0
- package/esm/vs/base/common/network.js +16 -0
- package/esm/vs/base/common/network.js.map +1 -1
- package/esm/vs/base/common/resources.js +14 -2
- package/esm/vs/base/common/resources.js.map +1 -1
- package/esm/vs/base/common/strings.js +1 -1
- package/esm/vs/base/common/strings.js.map +1 -1
- package/esm/vs/base/common/uri.js +2 -2
- package/esm/vs/base/common/uri.js.map +1 -1
- package/esm/vs/editor/browser/config/editorConfiguration.js +1 -1
- package/esm/vs/editor/browser/config/fontMeasurements.js +19 -6
- package/esm/vs/editor/browser/config/fontMeasurements.js.map +1 -1
- package/esm/vs/editor/browser/controller/dragScrolling.js +3 -3
- package/esm/vs/editor/browser/controller/editContext/clipboardUtils.js +11 -5
- package/esm/vs/editor/browser/controller/editContext/clipboardUtils.js.map +1 -1
- package/esm/vs/editor/browser/controller/editContext/native/nativeEditContext.js +8 -38
- package/esm/vs/editor/browser/controller/editContext/native/nativeEditContext.js.map +1 -1
- package/esm/vs/editor/browser/controller/editContext/native/screenReaderContentRich.js +3 -3
- package/esm/vs/editor/browser/controller/editContext/native/screenReaderSupport.js +6 -6
- package/esm/vs/editor/browser/controller/editContext/textArea/textAreaEditContext.js +12 -10
- package/esm/vs/editor/browser/controller/editContext/textArea/textAreaEditContext.js.map +1 -1
- package/esm/vs/editor/browser/controller/mouseHandler.js +7 -7
- package/esm/vs/editor/browser/controller/mouseTarget.js +3 -3
- package/esm/vs/editor/browser/coreCommands.js +2 -2
- package/esm/vs/editor/browser/editorBrowser.js.map +1 -1
- package/esm/vs/editor/browser/editorMarkdownSanitizer.js +19 -0
- package/esm/vs/editor/browser/editorMarkdownSanitizer.js.map +1 -0
- package/esm/vs/editor/browser/gpu/rectangleRenderer.js +1 -1
- package/esm/vs/editor/browser/gpu/viewGpuContext.js +1 -1
- package/esm/vs/editor/browser/observableCodeEditor.js +1 -1
- package/esm/vs/editor/browser/services/editorWorkerService.js +3 -2
- package/esm/vs/editor/browser/services/editorWorkerService.js.map +1 -1
- package/esm/vs/editor/browser/services/openerService.js +6 -2
- package/esm/vs/editor/browser/services/openerService.js.map +1 -1
- package/esm/vs/editor/browser/view/domLineBreaksComputer.js +34 -11
- package/esm/vs/editor/browser/view/domLineBreaksComputer.js.map +1 -1
- package/esm/vs/editor/browser/view/viewController.js +7 -7
- package/esm/vs/editor/browser/view/viewController.js.map +1 -1
- package/esm/vs/editor/browser/view/viewLayer.js +1 -1
- package/esm/vs/editor/browser/view/viewOverlays.js +4 -4
- package/esm/vs/editor/browser/view.js +5 -5
- package/esm/vs/editor/browser/viewParts/blockDecorations/blockDecorations.js +1 -1
- package/esm/vs/editor/browser/viewParts/contentWidgets/contentWidgets.js +11 -3
- package/esm/vs/editor/browser/viewParts/contentWidgets/contentWidgets.js.map +1 -1
- package/esm/vs/editor/browser/viewParts/currentLineHighlight/currentLineHighlight.js +6 -6
- package/esm/vs/editor/browser/viewParts/editorScrollbar/editorScrollbar.js +12 -12
- package/esm/vs/editor/browser/viewParts/glyphMargin/glyphMargin.js +9 -2
- package/esm/vs/editor/browser/viewParts/glyphMargin/glyphMargin.js.map +1 -1
- package/esm/vs/editor/browser/viewParts/indentGuides/indentGuides.js +2 -2
- package/esm/vs/editor/browser/viewParts/lineNumbers/lineNumbers.js +2 -2
- package/esm/vs/editor/browser/viewParts/linesDecorations/linesDecorations.js +2 -2
- package/esm/vs/editor/browser/viewParts/margin/margin.js +2 -2
- package/esm/vs/editor/browser/viewParts/minimap/minimap.js +6 -6
- package/esm/vs/editor/browser/viewParts/overlayWidgets/overlayWidgets.js +9 -2
- package/esm/vs/editor/browser/viewParts/overlayWidgets/overlayWidgets.js.map +1 -1
- package/esm/vs/editor/browser/viewParts/overviewRuler/decorationsOverviewRuler.js +5 -5
- package/esm/vs/editor/browser/viewParts/overviewRuler/overviewRuler.js +3 -3
- package/esm/vs/editor/browser/viewParts/rulers/rulers.js +2 -2
- package/esm/vs/editor/browser/viewParts/rulersGpu/rulersGpu.js +1 -1
- package/esm/vs/editor/browser/viewParts/scrollDecoration/scrollDecoration.js +3 -3
- package/esm/vs/editor/browser/viewParts/selections/selections.js +2 -2
- package/esm/vs/editor/browser/viewParts/viewCursors/viewCursor.js +2 -2
- package/esm/vs/editor/browser/viewParts/viewCursors/viewCursors.js +6 -6
- package/esm/vs/editor/browser/viewParts/viewLines/viewLineOptions.js +5 -5
- package/esm/vs/editor/browser/viewParts/viewLines/viewLines.js +11 -11
- package/esm/vs/editor/browser/viewParts/viewLinesGpu/viewLinesGpu.js +1 -1
- package/esm/vs/editor/browser/viewParts/viewZones/viewZones.js +2 -2
- package/esm/vs/editor/browser/viewParts/whitespace/whitespace.js +4 -4
- package/esm/vs/editor/browser/viewParts/wordWrapIndicator/wordWrapIndicator.js +2 -2
- package/esm/vs/editor/browser/widget/codeEditor/codeEditorWidget.js +22 -21
- package/esm/vs/editor/browser/widget/codeEditor/codeEditorWidget.js.map +1 -1
- package/esm/vs/editor/browser/widget/diffEditor/commands.js +12 -12
- package/esm/vs/editor/browser/widget/diffEditor/components/accessibleDiffViewer.js +18 -18
- package/esm/vs/editor/browser/widget/diffEditor/components/diffEditorEditors.js +1 -1
- package/esm/vs/editor/browser/widget/diffEditor/components/diffEditorViewZones/diffEditorViewZones.js +3 -3
- package/esm/vs/editor/browser/widget/diffEditor/components/diffEditorViewZones/inlineDiffDeletedCodeMargin.js +10 -10
- package/esm/vs/editor/browser/widget/diffEditor/components/diffEditorViewZones/inlineDiffDeletedCodeMargin.js.map +1 -1
- package/esm/vs/editor/browser/widget/diffEditor/components/diffEditorViewZones/renderLines.js +2 -2
- package/esm/vs/editor/browser/widget/diffEditor/diffEditor.contribution.js +4 -4
- package/esm/vs/editor/browser/widget/diffEditor/diffProviderFactoryService.js +21 -3
- package/esm/vs/editor/browser/widget/diffEditor/diffProviderFactoryService.js.map +1 -1
- package/esm/vs/editor/browser/widget/diffEditor/features/gutterFeature.js +1 -1
- package/esm/vs/editor/browser/widget/diffEditor/features/hideUnchangedRegionsFeature.js +10 -10
- package/esm/vs/editor/browser/widget/diffEditor/features/movedBlocksLinesFeature.js +2 -2
- package/esm/vs/editor/browser/widget/diffEditor/features/overviewRulerFeature.js +1 -1
- package/esm/vs/editor/browser/widget/diffEditor/features/revertButtonsFeature.js +2 -2
- package/esm/vs/editor/browser/widget/diffEditor/registrations.contribution.js +5 -5
- package/esm/vs/editor/browser/widget/multiDiffEditor/colors.js +3 -3
- package/esm/vs/editor/browser/widget/multiDiffEditor/compressedVirtualizedScrollLayout.js +2 -2
- package/esm/vs/editor/browser/widget/multiDiffEditor/compressedVirtualizedScrollLayout.js.map +1 -1
- package/esm/vs/editor/browser/widget/multiDiffEditor/compressedVirtualizedScrollView.js +21 -2
- package/esm/vs/editor/browser/widget/multiDiffEditor/compressedVirtualizedScrollView.js.map +1 -1
- package/esm/vs/editor/browser/widget/multiDiffEditor/diffEditorItemTemplate.js +2 -2
- package/esm/vs/editor/browser/widget/multiDiffEditor/multiDiffEditorWidgetImpl.js +11 -3
- package/esm/vs/editor/browser/widget/multiDiffEditor/multiDiffEditorWidgetImpl.js.map +1 -1
- package/esm/vs/editor/browser/widget/multiDiffEditor/virtualizedItemManager.js +1 -0
- package/esm/vs/editor/browser/widget/multiDiffEditor/virtualizedItemManager.js.map +1 -1
- package/esm/vs/editor/common/commands/columnSelectionPasteCommand.js +64 -0
- package/esm/vs/editor/common/commands/columnSelectionPasteCommand.js.map +1 -0
- package/esm/vs/editor/common/config/editorConfigurationSchema.js +68 -58
- package/esm/vs/editor/common/config/editorConfigurationSchema.js.map +1 -1
- package/esm/vs/editor/common/config/editorOptions.js +560 -500
- package/esm/vs/editor/common/config/editorOptions.js.map +1 -1
- package/esm/vs/editor/common/core/editorColorRegistry.js +71 -71
- package/esm/vs/editor/common/core/edits/textEdit.js +16 -0
- package/esm/vs/editor/common/core/edits/textEdit.js.map +1 -1
- package/esm/vs/editor/common/cursor/cursor.js +20 -10
- package/esm/vs/editor/common/cursor/cursor.js.map +1 -1
- package/esm/vs/editor/common/cursor/cursorTypeEditOperations.js +67 -14
- package/esm/vs/editor/common/cursor/cursorTypeEditOperations.js.map +1 -1
- package/esm/vs/editor/common/cursor/cursorTypeOperations.js +2 -2
- package/esm/vs/editor/common/cursor/cursorTypeOperations.js.map +1 -1
- package/esm/vs/editor/common/cursorCommon.js +22 -21
- package/esm/vs/editor/common/cursorCommon.js.map +1 -1
- package/esm/vs/editor/common/diff/defaultLinesDiffComputer/defaultLinesDiffComputer.js +21 -8
- package/esm/vs/editor/common/diff/defaultLinesDiffComputer/defaultLinesDiffComputer.js.map +1 -1
- package/esm/vs/editor/common/diff/documentDiffProvider.js.map +1 -1
- package/esm/vs/editor/common/diff/externalLinesDiffComputer.js +38 -26
- package/esm/vs/editor/common/diff/externalLinesDiffComputer.js.map +1 -1
- package/esm/vs/editor/common/diff/rangeMapping.js +11 -1
- package/esm/vs/editor/common/diff/rangeMapping.js.map +1 -1
- package/esm/vs/editor/common/diff/verifyLinesDiff.js +28 -0
- package/esm/vs/editor/common/diff/verifyLinesDiff.js.map +1 -0
- package/esm/vs/editor/common/editorContextKeys.js +53 -53
- package/esm/vs/editor/common/languages/languageConfiguration.js +8 -0
- package/esm/vs/editor/common/languages/languageConfiguration.js.map +1 -1
- package/esm/vs/editor/common/languages/modesRegistry.js +1 -1
- package/esm/vs/editor/common/languages.js +56 -56
- package/esm/vs/editor/common/model/editStack.js +1 -1
- package/esm/vs/editor/common/services/editorWebWorker.js +27 -6
- package/esm/vs/editor/common/services/editorWebWorker.js.map +1 -1
- package/esm/vs/editor/common/services/editorWorker.js.map +1 -1
- package/esm/vs/editor/common/services/languageService.js +6 -4
- package/esm/vs/editor/common/services/languageService.js.map +1 -1
- package/esm/vs/editor/common/services/markerDecorationsService.js +21 -2
- package/esm/vs/editor/common/services/markerDecorationsService.js.map +1 -1
- package/esm/vs/editor/common/standalone/standaloneEnums.js +100 -97
- package/esm/vs/editor/common/standalone/standaloneEnums.js.map +1 -1
- package/esm/vs/editor/common/standaloneStrings.js +11 -11
- package/esm/vs/editor/common/textModelEditSource.js +9 -0
- package/esm/vs/editor/common/textModelEditSource.js.map +1 -1
- package/esm/vs/editor/common/viewLayout/viewLayout.js +16 -16
- package/esm/vs/editor/common/viewLayout/viewLineRenderer.js +2 -2
- package/esm/vs/editor/common/viewModel/monospaceLineBreaksComputer.js +1 -1
- package/esm/vs/editor/common/viewModel/viewModelImpl.js +19 -19
- package/esm/vs/editor/common/viewModel/viewModelImpl.js.map +1 -1
- package/esm/vs/editor/contrib/anchorSelect/browser/anchorSelect.js +6 -6
- package/esm/vs/editor/contrib/bracketMatching/browser/bracketMatching.js +9 -9
- package/esm/vs/editor/contrib/caretOperations/browser/caretOperations.js +2 -2
- package/esm/vs/editor/contrib/caretOperations/browser/transpose.js +1 -1
- package/esm/vs/editor/contrib/clipboard/browser/clipboard.js +23 -20
- package/esm/vs/editor/contrib/clipboard/browser/clipboard.js.map +1 -1
- package/esm/vs/editor/contrib/codeAction/browser/codeAction.js +1 -1
- package/esm/vs/editor/contrib/codeAction/browser/codeActionCommands.js +29 -29
- package/esm/vs/editor/contrib/codeAction/browser/codeActionContributions.js +3 -3
- package/esm/vs/editor/contrib/codeAction/browser/codeActionController.js +3 -3
- package/esm/vs/editor/contrib/codeAction/browser/codeActionMenu.js +8 -8
- package/esm/vs/editor/contrib/codeAction/browser/codeActionModel.js +1 -1
- package/esm/vs/editor/contrib/codeAction/browser/lightBulbWidget.js +9 -9
- package/esm/vs/editor/contrib/codelens/browser/codelensController.js +2 -2
- package/esm/vs/editor/contrib/colorPicker/browser/colorDetector.js +25 -10
- package/esm/vs/editor/contrib/colorPicker/browser/colorDetector.js.map +1 -1
- package/esm/vs/editor/contrib/colorPicker/browser/colorPickerParts/colorPickerCloseButton.js +1 -1
- package/esm/vs/editor/contrib/colorPicker/browser/colorPickerParts/colorPickerHeader.js +1 -1
- package/esm/vs/editor/contrib/colorPicker/browser/hoverColorPicker/hoverColorPickerContribution.js +1 -1
- package/esm/vs/editor/contrib/colorPicker/browser/hoverColorPicker/hoverColorPickerParticipant.js +3 -3
- package/esm/vs/editor/contrib/colorPicker/browser/standaloneColorPicker/standaloneColorPickerActions.js +7 -7
- package/esm/vs/editor/contrib/colorPicker/browser/standaloneColorPicker/standaloneColorPickerParticipant.js +1 -1
- package/esm/vs/editor/contrib/comment/browser/comment.js +6 -6
- package/esm/vs/editor/contrib/contextmenu/browser/contextmenu.js +17 -17
- package/esm/vs/editor/contrib/contextmenu/browser/contextmenu.js.map +1 -1
- package/esm/vs/editor/contrib/cursorUndo/browser/cursorUndo.js +2 -2
- package/esm/vs/editor/contrib/dropOrPasteInto/browser/copyPasteContribution.js +4 -4
- package/esm/vs/editor/contrib/dropOrPasteInto/browser/copyPasteController.js +39 -39
- package/esm/vs/editor/contrib/dropOrPasteInto/browser/copyPasteController.js.map +1 -1
- package/esm/vs/editor/contrib/dropOrPasteInto/browser/defaultProviders.js +8 -8
- package/esm/vs/editor/contrib/dropOrPasteInto/browser/dropIntoEditorController.js +3 -3
- package/esm/vs/editor/contrib/dropOrPasteInto/browser/pasteEditSession.js +19 -0
- package/esm/vs/editor/contrib/dropOrPasteInto/browser/pasteEditSession.js.map +1 -0
- package/esm/vs/editor/contrib/dropOrPasteInto/browser/postEditWidget.js +26 -18
- package/esm/vs/editor/contrib/dropOrPasteInto/browser/postEditWidget.js.map +1 -1
- package/esm/vs/editor/contrib/editorState/browser/keybindingCancellation.js +1 -1
- package/esm/vs/editor/contrib/editorState/browser/keybindingCancellation.js.map +1 -1
- package/esm/vs/editor/contrib/find/browser/findController.js +18 -18
- package/esm/vs/editor/contrib/find/browser/findController.js.map +1 -1
- package/esm/vs/editor/contrib/find/browser/findModel.js +6 -6
- package/esm/vs/editor/contrib/find/browser/findWidget.js +40 -40
- package/esm/vs/editor/contrib/find/browser/findWidget.js.map +1 -1
- package/esm/vs/editor/contrib/folding/browser/folding.js +23 -23
- package/esm/vs/editor/contrib/folding/browser/foldingDecorations.js +9 -9
- package/esm/vs/editor/contrib/fontZoom/browser/fontZoom.js +3 -3
- package/esm/vs/editor/contrib/format/browser/formatActions.js +2 -2
- package/esm/vs/editor/contrib/gotoError/browser/gotoError.js +8 -8
- package/esm/vs/editor/contrib/gotoError/browser/gotoErrorWidget.js +14 -14
- package/esm/vs/editor/contrib/gotoSymbol/browser/goToCommands.js +39 -39
- package/esm/vs/editor/contrib/gotoSymbol/browser/link/clickLinkGesture.js +3 -3
- package/esm/vs/editor/contrib/gotoSymbol/browser/link/goToDefinitionAtPosition.js +2 -2
- package/esm/vs/editor/contrib/gotoSymbol/browser/peek/referencesController.js +4 -4
- package/esm/vs/editor/contrib/gotoSymbol/browser/peek/referencesController.js.map +1 -1
- package/esm/vs/editor/contrib/gotoSymbol/browser/peek/referencesTree.js +3 -3
- package/esm/vs/editor/contrib/gotoSymbol/browser/peek/referencesWidget.js +3 -3
- package/esm/vs/editor/contrib/gotoSymbol/browser/referencesModel.js +8 -8
- package/esm/vs/editor/contrib/gotoSymbol/browser/symbolNavigation.js +3 -3
- package/esm/vs/editor/contrib/gpu/browser/gpuActions.js +4 -4
- package/esm/vs/editor/contrib/hover/browser/contentHoverController.js +9 -3
- package/esm/vs/editor/contrib/hover/browser/contentHoverController.js.map +1 -1
- package/esm/vs/editor/contrib/hover/browser/glyphHoverController.js +2 -2
- package/esm/vs/editor/contrib/hover/browser/glyphHoverWidget.js +2 -1
- package/esm/vs/editor/contrib/hover/browser/glyphHoverWidget.js.map +1 -1
- package/esm/vs/editor/contrib/hover/browser/hoverActionIds.js +2 -2
- package/esm/vs/editor/contrib/hover/browser/hoverActions.js +24 -24
- package/esm/vs/editor/contrib/hover/browser/hoverCopyButton.js +2 -2
- package/esm/vs/editor/contrib/hover/browser/markdownHoverParticipant.js +10 -8
- package/esm/vs/editor/contrib/hover/browser/markdownHoverParticipant.js.map +1 -1
- package/esm/vs/editor/contrib/hover/browser/markerHoverParticipant.js +6 -6
- package/esm/vs/editor/contrib/inPlaceReplace/browser/inPlaceReplace.js +2 -2
- package/esm/vs/editor/contrib/indentation/browser/indentation.js +20 -20
- package/esm/vs/editor/contrib/inlayHints/browser/inlayHintsController.js +5 -5
- package/esm/vs/editor/contrib/inlayHints/browser/inlayHintsHover.js +9 -9
- package/esm/vs/editor/contrib/inlayHints/browser/inlayHintsLocations.js +3 -3
- package/esm/vs/editor/contrib/inlayHints/browser/inlayHintsLocations.js.map +1 -1
- package/esm/vs/editor/contrib/inlineCompletions/browser/controller/commands.js +21 -21
- package/esm/vs/editor/contrib/inlineCompletions/browser/controller/inlineCompletionContextKeys.js +13 -13
- package/esm/vs/editor/contrib/inlineCompletions/browser/controller/inlineCompletionsController.js +7 -7
- package/esm/vs/editor/contrib/inlineCompletions/browser/hintsWidget/hoverParticipant.js +2 -2
- package/esm/vs/editor/contrib/inlineCompletions/browser/hintsWidget/inlineCompletionsHintsWidget.js +6 -5
- package/esm/vs/editor/contrib/inlineCompletions/browser/hintsWidget/inlineCompletionsHintsWidget.js.map +1 -1
- package/esm/vs/editor/contrib/inlineCompletions/browser/model/inlineCompletionsModel.js +1 -1
- package/esm/vs/editor/contrib/inlineCompletions/browser/model/renameSymbolProcessor.js +2 -2
- package/esm/vs/editor/contrib/inlineCompletions/browser/view/ghostText/ghostTextView.js +7 -7
- package/esm/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/components/gutterIndicatorMenu.js +6 -6
- package/esm/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/components/gutterIndicatorView.js +1 -1
- package/esm/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/inlineEditsWordReplacementView.js +3 -3
- package/esm/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/theme.js +20 -20
- package/esm/vs/editor/contrib/insertFinalNewLine/browser/insertFinalNewLine.js +1 -1
- package/esm/vs/editor/contrib/lineSelection/browser/lineSelection.js +1 -1
- package/esm/vs/editor/contrib/linesOperations/browser/linesOperations.js +32 -32
- package/esm/vs/editor/contrib/linkedEditing/browser/linkedEditing.js +5 -4
- package/esm/vs/editor/contrib/linkedEditing/browser/linkedEditing.js.map +1 -1
- package/esm/vs/editor/contrib/links/browser/links.js +16 -15
- package/esm/vs/editor/contrib/links/browser/links.js.map +1 -1
- package/esm/vs/editor/contrib/longLinesHelper/browser/longLinesHelper.js +1 -1
- package/esm/vs/editor/contrib/message/browser/messageController.js +16 -12
- package/esm/vs/editor/contrib/message/browser/messageController.js.map +1 -1
- package/esm/vs/editor/contrib/middleScroll/browser/middleScrollController.js +1 -1
- package/esm/vs/editor/contrib/multicursor/browser/multicursor.js +91 -55
- package/esm/vs/editor/contrib/multicursor/browser/multicursor.js.map +1 -1
- package/esm/vs/editor/contrib/parameterHints/browser/parameterHints.js +1 -1
- package/esm/vs/editor/contrib/parameterHints/browser/parameterHintsModel.js +3 -3
- package/esm/vs/editor/contrib/parameterHints/browser/parameterHintsModel.js.map +1 -1
- package/esm/vs/editor/contrib/parameterHints/browser/parameterHintsWidget.js +6 -4
- package/esm/vs/editor/contrib/parameterHints/browser/parameterHintsWidget.js.map +1 -1
- package/esm/vs/editor/contrib/peekView/browser/peekView.js +18 -18
- package/esm/vs/editor/contrib/placeholderText/browser/placeholderText.contribution.js +1 -1
- package/esm/vs/editor/contrib/placeholderText/browser/placeholderTextContribution.js +1 -1
- package/esm/vs/editor/contrib/quickAccess/browser/editorNavigationQuickAccess.js +1 -1
- package/esm/vs/editor/contrib/quickAccess/browser/gotoLineQuickAccess.js +12 -12
- package/esm/vs/editor/contrib/quickAccess/browser/gotoSymbolQuickAccess.js +32 -32
- package/esm/vs/editor/contrib/readOnlyMessage/browser/contribution.js +3 -3
- package/esm/vs/editor/contrib/rename/browser/rename.js +11 -11
- package/esm/vs/editor/contrib/rename/browser/renameWidget.js +7 -7
- package/esm/vs/editor/contrib/sectionHeaders/browser/sectionHeaders.js +6 -6
- package/esm/vs/editor/contrib/semanticTokens/browser/documentSemanticTokens.js +23 -13
- package/esm/vs/editor/contrib/semanticTokens/browser/documentSemanticTokens.js.map +1 -1
- package/esm/vs/editor/contrib/smartSelect/browser/smartSelect.js +5 -5
- package/esm/vs/editor/contrib/snippet/browser/snippetController2.js +5 -5
- package/esm/vs/editor/contrib/snippet/browser/snippetSession.js +2 -2
- package/esm/vs/editor/contrib/snippet/browser/snippetVariables.js +4 -4
- package/esm/vs/editor/contrib/stickyScroll/browser/stickyScrollActions.js +11 -11
- package/esm/vs/editor/contrib/stickyScroll/browser/stickyScrollController.js +10 -8
- package/esm/vs/editor/contrib/stickyScroll/browser/stickyScrollController.js.map +1 -1
- package/esm/vs/editor/contrib/stickyScroll/browser/stickyScrollModelProvider.js +1 -1
- package/esm/vs/editor/contrib/stickyScroll/browser/stickyScrollProvider.js +2 -2
- package/esm/vs/editor/contrib/stickyScroll/browser/stickyScrollWidget.js +6 -6
- package/esm/vs/editor/contrib/suggest/browser/suggest.js +9 -9
- package/esm/vs/editor/contrib/suggest/browser/suggestController.js +15 -15
- package/esm/vs/editor/contrib/suggest/browser/suggestInlineCompletions.js +2 -2
- package/esm/vs/editor/contrib/suggest/browser/suggestModel.js +11 -11
- package/esm/vs/editor/contrib/suggest/browser/suggestWidget.js +27 -27
- package/esm/vs/editor/contrib/suggest/browser/suggestWidgetDetails.js +8 -6
- package/esm/vs/editor/contrib/suggest/browser/suggestWidgetDetails.js.map +1 -1
- package/esm/vs/editor/contrib/suggest/browser/suggestWidgetRenderer.js +5 -5
- package/esm/vs/editor/contrib/suggest/browser/wordContextKey.js +3 -3
- package/esm/vs/editor/contrib/suggest/browser/wordDistance.js +1 -1
- package/esm/vs/editor/contrib/symbolIcons/browser/symbolIcons.js +33 -33
- package/esm/vs/editor/contrib/toggleTabFocusMode/browser/toggleTabFocusMode.js +4 -4
- package/esm/vs/editor/contrib/tokenization/browser/tokenization.js +1 -1
- package/esm/vs/editor/contrib/unicodeHighlighter/browser/bannerController.js +1 -1
- package/esm/vs/editor/contrib/unicodeHighlighter/browser/unicodeHighlighter.js +27 -27
- package/esm/vs/editor/contrib/unusualLineTerminators/browser/unusualLineTerminators.js +9 -9
- package/esm/vs/editor/contrib/wordHighlighter/browser/highlightDecorations.js +9 -9
- package/esm/vs/editor/contrib/wordHighlighter/browser/textualHighlightProvider.js +1 -1
- package/esm/vs/editor/contrib/wordHighlighter/browser/textualHighlightProvider.js.map +1 -1
- package/esm/vs/editor/contrib/wordHighlighter/browser/wordHighlighter.js +50 -14
- package/esm/vs/editor/contrib/wordHighlighter/browser/wordHighlighter.js.map +1 -1
- package/esm/vs/editor/contrib/wordOperations/browser/wordOperations.js +6 -6
- package/esm/vs/editor/editor.api.d.ts +133 -98
- package/esm/vs/editor/standalone/browser/iPadShowKeyboard/iPadShowKeyboard.js +1 -1
- package/esm/vs/editor/standalone/browser/quickInput/standaloneQuickInputService.js +5 -3
- package/esm/vs/editor/standalone/browser/quickInput/standaloneQuickInputService.js.map +1 -1
- package/esm/vs/editor/standalone/browser/standaloneCodeEditor.js +15 -1
- package/esm/vs/editor/standalone/browser/standaloneCodeEditor.js.map +1 -1
- package/esm/vs/nls.js.map +1 -1
- package/esm/vs/platform/accessibilitySignal/browser/accessibilitySignalService.js +72 -66
- package/esm/vs/platform/accessibilitySignal/browser/accessibilitySignalService.js.map +1 -1
- package/esm/vs/platform/action/common/actionCommonCategories.js +6 -6
- package/esm/vs/platform/actionWidget/browser/actionList.js +434 -136
- package/esm/vs/platform/actionWidget/browser/actionList.js.map +1 -1
- package/esm/vs/platform/actionWidget/browser/actionWidget.css +74 -4
- package/esm/vs/platform/actionWidget/browser/actionWidget.js +24 -26
- package/esm/vs/platform/actionWidget/browser/actionWidget.js.map +1 -1
- package/esm/vs/platform/actionWidget/browser/actionWidgetMotion.js +16 -0
- package/esm/vs/platform/actionWidget/browser/actionWidgetMotion.js.map +1 -0
- package/esm/vs/platform/actions/browser/menuEntryActionViewItem.js +15 -17
- package/esm/vs/platform/actions/browser/menuEntryActionViewItem.js.map +1 -1
- package/esm/vs/platform/actions/browser/toolbar.js +25 -12
- package/esm/vs/platform/actions/browser/toolbar.js.map +1 -1
- package/esm/vs/platform/actions/common/actions.js +4 -2
- package/esm/vs/platform/actions/common/actions.js.map +1 -1
- package/esm/vs/platform/actions/common/menuService.js +15 -8
- package/esm/vs/platform/actions/common/menuService.js.map +1 -1
- package/esm/vs/platform/configuration/common/configuration.js +3 -1
- package/esm/vs/platform/configuration/common/configuration.js.map +1 -1
- package/esm/vs/platform/configuration/common/configurationModels.js +16 -11
- package/esm/vs/platform/configuration/common/configurationModels.js.map +1 -1
- package/esm/vs/platform/configuration/common/configurationRegistry.js +29 -27
- package/esm/vs/platform/configuration/common/configurationRegistry.js.map +1 -1
- package/esm/vs/platform/configuration/common/configurations.js +13 -1
- package/esm/vs/platform/configuration/common/configurations.js.map +1 -1
- package/esm/vs/platform/contextkey/browser/contextKeyService.js +2 -2
- package/esm/vs/platform/contextkey/browser/contextKeyService.js.map +1 -1
- package/esm/vs/platform/contextkey/common/contextkey.js +28 -14
- package/esm/vs/platform/contextkey/common/contextkey.js.map +1 -1
- package/esm/vs/platform/contextkey/common/contextkeys.js +10 -10
- package/esm/vs/platform/contextkey/common/scanner.js +5 -5
- package/esm/vs/platform/contextview/browser/contextMenuHandler.js +17 -4
- package/esm/vs/platform/contextview/browser/contextMenuHandler.js.map +1 -1
- package/esm/vs/platform/contextview/browser/contextMenuService.js +1 -1
- package/esm/vs/platform/contextview/browser/contextMenuService.js.map +1 -1
- package/esm/vs/platform/contextview/browser/contextView.js.map +1 -1
- package/esm/vs/platform/contextview/browser/contextViewService.js +7 -2
- package/esm/vs/platform/contextview/browser/contextViewService.js.map +1 -1
- package/esm/vs/platform/editor/common/editor.js +17 -0
- package/esm/vs/platform/editor/common/editor.js.map +1 -1
- package/esm/vs/platform/history/browser/contextScopedHistoryWidget.js +1 -1
- package/esm/vs/platform/hover/browser/hoverService.js +6 -3
- package/esm/vs/platform/hover/browser/hoverService.js.map +1 -1
- package/esm/vs/platform/hover/browser/hoverWidget.js +38 -6
- package/esm/vs/platform/hover/browser/hoverWidget.js.map +1 -1
- package/esm/vs/platform/hover/browser/updatableHoverWidget.js +32 -5
- package/esm/vs/platform/hover/browser/updatableHoverWidget.js.map +1 -1
- package/esm/vs/platform/instantiation/common/instantiationService.js +1 -1
- package/esm/vs/platform/instantiation/common/instantiationService.js.map +1 -1
- package/esm/vs/platform/keybinding/common/abstractKeybindingService.js +5 -5
- package/esm/vs/platform/keybinding/common/keybindingResolver.js +1 -1
- package/esm/vs/platform/keybinding/common/keybindingResolver.js.map +1 -1
- package/esm/vs/platform/list/browser/listService.js +27 -27
- package/esm/vs/platform/markers/common/markerService.js +11 -8
- package/esm/vs/platform/markers/common/markerService.js.map +1 -1
- package/esm/vs/platform/markers/common/markers.js +6 -6
- package/esm/vs/platform/markers/common/markers.js.map +1 -1
- package/esm/vs/platform/notification/common/notification.js.map +1 -1
- package/esm/vs/platform/notification/common/notificationMessage.js +37 -0
- package/esm/vs/platform/notification/common/notificationMessage.js.map +1 -0
- package/esm/vs/platform/opener/common/opener.js.map +1 -1
- package/esm/vs/platform/progress/common/progress.js.map +1 -1
- package/esm/vs/platform/quickinput/browser/commandsQuickAccess.js +8 -8
- package/esm/vs/platform/quickinput/browser/helpQuickAccess.js +1 -1
- package/esm/vs/platform/quickinput/browser/media/quickInput.css +33 -2
- package/esm/vs/platform/quickinput/browser/quickAccess.js +7 -4
- package/esm/vs/platform/quickinput/browser/quickAccess.js.map +1 -1
- package/esm/vs/platform/quickinput/browser/quickInput.js +10 -10
- package/esm/vs/platform/quickinput/browser/quickInputActions.js +5 -5
- package/esm/vs/platform/quickinput/browser/quickInputController.js +65 -15
- package/esm/vs/platform/quickinput/browser/quickInputController.js.map +1 -1
- package/esm/vs/platform/quickinput/browser/quickInputList.js +96 -90
- package/esm/vs/platform/quickinput/browser/quickInputList.js.map +1 -1
- package/esm/vs/platform/quickinput/browser/quickInputService.js +5 -7
- package/esm/vs/platform/quickinput/browser/quickInputService.js.map +1 -1
- package/esm/vs/platform/quickinput/browser/quickInputUtils.js +1 -1
- package/esm/vs/platform/quickinput/browser/tree/quickInputTreeAccessibilityProvider.js +1 -1
- package/esm/vs/platform/quickinput/browser/tree/quickTree.js +1 -1
- package/esm/vs/platform/quickinput/common/quickAccess.js.map +1 -1
- package/esm/vs/platform/quickinput/common/quickInput.js.map +1 -1
- package/esm/vs/platform/storage/common/storage.js.map +1 -1
- package/esm/vs/platform/theme/common/colorRegistry.js +1 -0
- package/esm/vs/platform/theme/common/colorRegistry.js.map +1 -1
- package/esm/vs/platform/theme/common/colorUtils.js +11 -3
- package/esm/vs/platform/theme/common/colorUtils.js.map +1 -1
- package/esm/vs/platform/theme/common/colors/baseColors.js +19 -19
- package/esm/vs/platform/theme/common/colors/chartsColors.js +8 -9
- package/esm/vs/platform/theme/common/colors/chartsColors.js.map +1 -1
- package/esm/vs/platform/theme/common/colors/confettiColors.js +14 -0
- package/esm/vs/platform/theme/common/colors/confettiColors.js.map +1 -0
- package/esm/vs/platform/theme/common/colors/editorColors.js +95 -95
- package/esm/vs/platform/theme/common/colors/inputColors.js +48 -48
- package/esm/vs/platform/theme/common/colors/inputColors.js.map +1 -1
- package/esm/vs/platform/theme/common/colors/listColors.js +36 -36
- package/esm/vs/platform/theme/common/colors/menuColors.js +7 -7
- package/esm/vs/platform/theme/common/colors/minimapColors.js +13 -13
- package/esm/vs/platform/theme/common/colors/minimapColors.js.map +1 -1
- package/esm/vs/platform/theme/common/colors/miscColors.js +16 -16
- package/esm/vs/platform/theme/common/colors/quickpickColors.js +10 -10
- package/esm/vs/platform/theme/common/colors/searchColors.js +3 -3
- package/esm/vs/platform/theme/common/iconRegistry.js +6 -6
- package/esm/vs/platform/undoRedo/common/undoRedoService.js +20 -20
- package/esm/vs/platform/workspace/common/workspace.js +1 -1
- package/monaco.d.ts +133 -98
- package/package.json +3 -3
- package/version.txt +1 -1
|
@@ -34,7 +34,7 @@ import { Iterable } from '../../../../base/common/iterator.js';
|
|
|
34
34
|
import { IsWebContext } from '../../../../platform/contextkey/common/contextkeys.js';
|
|
35
35
|
MenuRegistry.appendMenuItem(MenuId.EditorContext, {
|
|
36
36
|
submenu: MenuId.EditorContextPeek,
|
|
37
|
-
title: nls.localize(
|
|
37
|
+
title: nls.localize(1103, "Peek"),
|
|
38
38
|
group: 'navigation',
|
|
39
39
|
order: 100
|
|
40
40
|
});
|
|
@@ -203,12 +203,12 @@ export class SymbolNavigationAction extends EditorAction2 {
|
|
|
203
203
|
//#region --- DEFINITION
|
|
204
204
|
export class DefinitionAction extends SymbolNavigationAction {
|
|
205
205
|
async _getLocationModel(languageFeaturesService, model, position, token) {
|
|
206
|
-
return new ReferencesModel(await getDefinitionsAtPosition(languageFeaturesService.definitionProvider, model, position, false, token), nls.localize(
|
|
206
|
+
return new ReferencesModel(await getDefinitionsAtPosition(languageFeaturesService.definitionProvider, model, position, false, token), nls.localize(1104, 'Definitions'));
|
|
207
207
|
}
|
|
208
208
|
_getNoResultFoundMessage(info) {
|
|
209
209
|
return info && info.word
|
|
210
|
-
? nls.localize(
|
|
211
|
-
: nls.localize(
|
|
210
|
+
? nls.localize(1105, "No definition found for '{0}'", info.word)
|
|
211
|
+
: nls.localize(1106, "No definition found");
|
|
212
212
|
}
|
|
213
213
|
_getAlternativeCommand(editor) {
|
|
214
214
|
return editor.getOption(67 /* EditorOption.gotoLocation */).alternativeDefinitionCommand;
|
|
@@ -227,8 +227,8 @@ registerAction2(class GoToDefinitionAction extends DefinitionAction {
|
|
|
227
227
|
}, {
|
|
228
228
|
id: GoToDefinitionAction.id,
|
|
229
229
|
title: {
|
|
230
|
-
...nls.localize2(
|
|
231
|
-
mnemonicTitle: nls.localize(
|
|
230
|
+
...nls.localize2(1130, "Go to Definition"),
|
|
231
|
+
mnemonicTitle: nls.localize(1107, "Go to &&Definition"),
|
|
232
232
|
},
|
|
233
233
|
precondition: EditorContextKeys.hasDefinitionProvider,
|
|
234
234
|
keybinding: [{
|
|
@@ -263,7 +263,7 @@ registerAction2(class OpenDefinitionToSideAction extends DefinitionAction {
|
|
|
263
263
|
muteMessage: false
|
|
264
264
|
}, {
|
|
265
265
|
id: OpenDefinitionToSideAction.id,
|
|
266
|
-
title: nls.localize2(
|
|
266
|
+
title: nls.localize2(1131, "Open Definition to the Side"),
|
|
267
267
|
precondition: ContextKeyExpr.and(EditorContextKeys.hasDefinitionProvider, EditorContextKeys.isInEmbeddedEditor.toNegated()),
|
|
268
268
|
keybinding: [{
|
|
269
269
|
when: EditorContextKeys.editorTextFocus,
|
|
@@ -287,7 +287,7 @@ registerAction2(class PeekDefinitionAction extends DefinitionAction {
|
|
|
287
287
|
muteMessage: false
|
|
288
288
|
}, {
|
|
289
289
|
id: PeekDefinitionAction.id,
|
|
290
|
-
title: nls.localize2(
|
|
290
|
+
title: nls.localize2(1132, "Peek Definition"),
|
|
291
291
|
precondition: ContextKeyExpr.and(EditorContextKeys.hasDefinitionProvider, PeekContext.notInPeekEditor, EditorContextKeys.isInEmbeddedEditor.toNegated()),
|
|
292
292
|
keybinding: {
|
|
293
293
|
when: EditorContextKeys.editorTextFocus,
|
|
@@ -308,12 +308,12 @@ registerAction2(class PeekDefinitionAction extends DefinitionAction {
|
|
|
308
308
|
//#region --- DECLARATION
|
|
309
309
|
class DeclarationAction extends SymbolNavigationAction {
|
|
310
310
|
async _getLocationModel(languageFeaturesService, model, position, token) {
|
|
311
|
-
return new ReferencesModel(await getDeclarationsAtPosition(languageFeaturesService.declarationProvider, model, position, false, token), nls.localize(
|
|
311
|
+
return new ReferencesModel(await getDeclarationsAtPosition(languageFeaturesService.declarationProvider, model, position, false, token), nls.localize(1108, 'Declarations'));
|
|
312
312
|
}
|
|
313
313
|
_getNoResultFoundMessage(info) {
|
|
314
314
|
return info && info.word
|
|
315
|
-
? nls.localize(
|
|
316
|
-
: nls.localize(
|
|
315
|
+
? nls.localize(1109, "No declaration found for '{0}'", info.word)
|
|
316
|
+
: nls.localize(1110, "No declaration found");
|
|
317
317
|
}
|
|
318
318
|
_getAlternativeCommand(editor) {
|
|
319
319
|
return editor.getOption(67 /* EditorOption.gotoLocation */).alternativeDeclarationCommand;
|
|
@@ -332,8 +332,8 @@ registerAction2(class GoToDeclarationAction extends DeclarationAction {
|
|
|
332
332
|
}, {
|
|
333
333
|
id: GoToDeclarationAction.id,
|
|
334
334
|
title: {
|
|
335
|
-
...nls.localize2(
|
|
336
|
-
mnemonicTitle: nls.localize(
|
|
335
|
+
...nls.localize2(1133, "Go to Declaration"),
|
|
336
|
+
mnemonicTitle: nls.localize(1111, "Go to &&Declaration"),
|
|
337
337
|
},
|
|
338
338
|
precondition: ContextKeyExpr.and(EditorContextKeys.hasDeclarationProvider, EditorContextKeys.isInEmbeddedEditor.toNegated()),
|
|
339
339
|
menu: [{
|
|
@@ -350,8 +350,8 @@ registerAction2(class GoToDeclarationAction extends DeclarationAction {
|
|
|
350
350
|
}
|
|
351
351
|
_getNoResultFoundMessage(info) {
|
|
352
352
|
return info && info.word
|
|
353
|
-
? nls.localize(
|
|
354
|
-
: nls.localize(
|
|
353
|
+
? nls.localize(1112, "No declaration found for '{0}'", info.word)
|
|
354
|
+
: nls.localize(1113, "No declaration found");
|
|
355
355
|
}
|
|
356
356
|
});
|
|
357
357
|
registerAction2(class PeekDeclarationAction extends DeclarationAction {
|
|
@@ -362,7 +362,7 @@ registerAction2(class PeekDeclarationAction extends DeclarationAction {
|
|
|
362
362
|
muteMessage: false
|
|
363
363
|
}, {
|
|
364
364
|
id: 'editor.action.peekDeclaration',
|
|
365
|
-
title: nls.localize2(
|
|
365
|
+
title: nls.localize2(1134, "Peek Declaration"),
|
|
366
366
|
precondition: ContextKeyExpr.and(EditorContextKeys.hasDeclarationProvider, PeekContext.notInPeekEditor, EditorContextKeys.isInEmbeddedEditor.toNegated()),
|
|
367
367
|
menu: {
|
|
368
368
|
id: MenuId.EditorContextPeek,
|
|
@@ -376,12 +376,12 @@ registerAction2(class PeekDeclarationAction extends DeclarationAction {
|
|
|
376
376
|
//#region --- TYPE DEFINITION
|
|
377
377
|
class TypeDefinitionAction extends SymbolNavigationAction {
|
|
378
378
|
async _getLocationModel(languageFeaturesService, model, position, token) {
|
|
379
|
-
return new ReferencesModel(await getTypeDefinitionsAtPosition(languageFeaturesService.typeDefinitionProvider, model, position, false, token), nls.localize(
|
|
379
|
+
return new ReferencesModel(await getTypeDefinitionsAtPosition(languageFeaturesService.typeDefinitionProvider, model, position, false, token), nls.localize(1114, 'Type Definitions'));
|
|
380
380
|
}
|
|
381
381
|
_getNoResultFoundMessage(info) {
|
|
382
382
|
return info && info.word
|
|
383
|
-
? nls.localize(
|
|
384
|
-
: nls.localize(
|
|
383
|
+
? nls.localize(1115, "No type definition found for '{0}'", info.word)
|
|
384
|
+
: nls.localize(1116, "No type definition found");
|
|
385
385
|
}
|
|
386
386
|
_getAlternativeCommand(editor) {
|
|
387
387
|
return editor.getOption(67 /* EditorOption.gotoLocation */).alternativeTypeDefinitionCommand;
|
|
@@ -400,8 +400,8 @@ registerAction2(class GoToTypeDefinitionAction extends TypeDefinitionAction {
|
|
|
400
400
|
}, {
|
|
401
401
|
id: GoToTypeDefinitionAction.ID,
|
|
402
402
|
title: {
|
|
403
|
-
...nls.localize2(
|
|
404
|
-
mnemonicTitle: nls.localize(
|
|
403
|
+
...nls.localize2(1135, "Go to Type Definition"),
|
|
404
|
+
mnemonicTitle: nls.localize(1117, "Go to &&Type Definition"),
|
|
405
405
|
},
|
|
406
406
|
precondition: EditorContextKeys.hasTypeDefinitionProvider,
|
|
407
407
|
keybinding: {
|
|
@@ -431,7 +431,7 @@ registerAction2(class PeekTypeDefinitionAction extends TypeDefinitionAction {
|
|
|
431
431
|
muteMessage: false
|
|
432
432
|
}, {
|
|
433
433
|
id: PeekTypeDefinitionAction.ID,
|
|
434
|
-
title: nls.localize2(
|
|
434
|
+
title: nls.localize2(1136, "Peek Type Definition"),
|
|
435
435
|
precondition: ContextKeyExpr.and(EditorContextKeys.hasTypeDefinitionProvider, PeekContext.notInPeekEditor, EditorContextKeys.isInEmbeddedEditor.toNegated()),
|
|
436
436
|
menu: {
|
|
437
437
|
id: MenuId.EditorContextPeek,
|
|
@@ -445,12 +445,12 @@ registerAction2(class PeekTypeDefinitionAction extends TypeDefinitionAction {
|
|
|
445
445
|
//#region --- IMPLEMENTATION
|
|
446
446
|
class ImplementationAction extends SymbolNavigationAction {
|
|
447
447
|
async _getLocationModel(languageFeaturesService, model, position, token) {
|
|
448
|
-
return new ReferencesModel(await getImplementationsAtPosition(languageFeaturesService.implementationProvider, model, position, false, token), nls.localize(
|
|
448
|
+
return new ReferencesModel(await getImplementationsAtPosition(languageFeaturesService.implementationProvider, model, position, false, token), nls.localize(1118, 'Implementations'));
|
|
449
449
|
}
|
|
450
450
|
_getNoResultFoundMessage(info) {
|
|
451
451
|
return info && info.word
|
|
452
|
-
? nls.localize(
|
|
453
|
-
: nls.localize(
|
|
452
|
+
? nls.localize(1119, "No implementation found for '{0}'", info.word)
|
|
453
|
+
: nls.localize(1120, "No implementation found");
|
|
454
454
|
}
|
|
455
455
|
_getAlternativeCommand(editor) {
|
|
456
456
|
return editor.getOption(67 /* EditorOption.gotoLocation */).alternativeImplementationCommand;
|
|
@@ -469,8 +469,8 @@ registerAction2(class GoToImplementationAction extends ImplementationAction {
|
|
|
469
469
|
}, {
|
|
470
470
|
id: GoToImplementationAction.ID,
|
|
471
471
|
title: {
|
|
472
|
-
...nls.localize2(
|
|
473
|
-
mnemonicTitle: nls.localize(
|
|
472
|
+
...nls.localize2(1137, "Go to Implementations"),
|
|
473
|
+
mnemonicTitle: nls.localize(1121, "Go to &&Implementations"),
|
|
474
474
|
},
|
|
475
475
|
precondition: EditorContextKeys.hasImplementationProvider,
|
|
476
476
|
keybinding: {
|
|
@@ -500,7 +500,7 @@ registerAction2(class PeekImplementationAction extends ImplementationAction {
|
|
|
500
500
|
muteMessage: false
|
|
501
501
|
}, {
|
|
502
502
|
id: PeekImplementationAction.ID,
|
|
503
|
-
title: nls.localize2(
|
|
503
|
+
title: nls.localize2(1138, "Peek Implementations"),
|
|
504
504
|
precondition: ContextKeyExpr.and(EditorContextKeys.hasImplementationProvider, PeekContext.notInPeekEditor, EditorContextKeys.isInEmbeddedEditor.toNegated()),
|
|
505
505
|
keybinding: {
|
|
506
506
|
when: EditorContextKeys.editorTextFocus,
|
|
@@ -520,8 +520,8 @@ registerAction2(class PeekImplementationAction extends ImplementationAction {
|
|
|
520
520
|
class ReferencesAction extends SymbolNavigationAction {
|
|
521
521
|
_getNoResultFoundMessage(info) {
|
|
522
522
|
return info
|
|
523
|
-
? nls.localize(
|
|
524
|
-
: nls.localize(
|
|
523
|
+
? nls.localize(1122, "No references found for '{0}'", info.word)
|
|
524
|
+
: nls.localize(1123, "No references found");
|
|
525
525
|
}
|
|
526
526
|
_getAlternativeCommand(editor) {
|
|
527
527
|
return editor.getOption(67 /* EditorOption.gotoLocation */).alternativeReferenceCommand;
|
|
@@ -539,8 +539,8 @@ registerAction2(class GoToReferencesAction extends ReferencesAction {
|
|
|
539
539
|
}, {
|
|
540
540
|
id: 'editor.action.goToReferences',
|
|
541
541
|
title: {
|
|
542
|
-
...nls.localize2(
|
|
543
|
-
mnemonicTitle: nls.localize(
|
|
542
|
+
...nls.localize2(1139, "Go to References"),
|
|
543
|
+
mnemonicTitle: nls.localize(1124, "Go to &&References"),
|
|
544
544
|
},
|
|
545
545
|
precondition: ContextKeyExpr.and(EditorContextKeys.hasReferenceProvider, PeekContext.notInPeekEditor, EditorContextKeys.isInEmbeddedEditor.toNegated()),
|
|
546
546
|
keybinding: {
|
|
@@ -561,7 +561,7 @@ registerAction2(class GoToReferencesAction extends ReferencesAction {
|
|
|
561
561
|
});
|
|
562
562
|
}
|
|
563
563
|
async _getLocationModel(languageFeaturesService, model, position, token) {
|
|
564
|
-
return new ReferencesModel(await getReferencesAtPosition(languageFeaturesService.referenceProvider, model, position, true, false, token), nls.localize(
|
|
564
|
+
return new ReferencesModel(await getReferencesAtPosition(languageFeaturesService.referenceProvider, model, position, true, false, token), nls.localize(1125, 'References'));
|
|
565
565
|
}
|
|
566
566
|
});
|
|
567
567
|
registerAction2(class PeekReferencesAction extends ReferencesAction {
|
|
@@ -572,7 +572,7 @@ registerAction2(class PeekReferencesAction extends ReferencesAction {
|
|
|
572
572
|
muteMessage: false
|
|
573
573
|
}, {
|
|
574
574
|
id: 'editor.action.referenceSearch.trigger',
|
|
575
|
-
title: nls.localize2(
|
|
575
|
+
title: nls.localize2(1140, "Peek References"),
|
|
576
576
|
precondition: ContextKeyExpr.and(EditorContextKeys.hasReferenceProvider, PeekContext.notInPeekEditor, EditorContextKeys.isInEmbeddedEditor.toNegated()),
|
|
577
577
|
menu: {
|
|
578
578
|
id: MenuId.EditorContextPeek,
|
|
@@ -582,7 +582,7 @@ registerAction2(class PeekReferencesAction extends ReferencesAction {
|
|
|
582
582
|
});
|
|
583
583
|
}
|
|
584
584
|
async _getLocationModel(languageFeaturesService, model, position, token) {
|
|
585
|
-
return new ReferencesModel(await getReferencesAtPosition(languageFeaturesService.referenceProvider, model, position, false, false, token), nls.localize(
|
|
585
|
+
return new ReferencesModel(await getReferencesAtPosition(languageFeaturesService.referenceProvider, model, position, false, false, token), nls.localize(1126, 'References'));
|
|
586
586
|
}
|
|
587
587
|
});
|
|
588
588
|
//#endregion
|
|
@@ -591,17 +591,17 @@ class GenericGoToLocationAction extends SymbolNavigationAction {
|
|
|
591
591
|
constructor(config, _references, _gotoMultipleBehaviour) {
|
|
592
592
|
super(config, {
|
|
593
593
|
id: 'editor.action.goToLocation',
|
|
594
|
-
title: nls.localize2(
|
|
594
|
+
title: nls.localize2(1141, "Go to Any Symbol"),
|
|
595
595
|
precondition: ContextKeyExpr.and(PeekContext.notInPeekEditor, EditorContextKeys.isInEmbeddedEditor.toNegated()),
|
|
596
596
|
});
|
|
597
597
|
this._references = _references;
|
|
598
598
|
this._gotoMultipleBehaviour = _gotoMultipleBehaviour;
|
|
599
599
|
}
|
|
600
600
|
async _getLocationModel(languageFeaturesService, _model, _position, _token) {
|
|
601
|
-
return new ReferencesModel(this._references, nls.localize(
|
|
601
|
+
return new ReferencesModel(this._references, nls.localize(1127, 'Locations'));
|
|
602
602
|
}
|
|
603
603
|
_getNoResultFoundMessage(info) {
|
|
604
|
-
return info && nls.localize(
|
|
604
|
+
return info && nls.localize(1128, "No results for '{0}'", info.word) || '';
|
|
605
605
|
}
|
|
606
606
|
_getGoToPreference(editor) {
|
|
607
607
|
return this._gotoMultipleBehaviour ?? editor.getOption(67 /* EditorOption.gotoLocation */).multipleReferences;
|
|
@@ -680,7 +680,7 @@ CommandsRegistry.registerCommand({
|
|
|
680
680
|
if (!controller) {
|
|
681
681
|
return undefined;
|
|
682
682
|
}
|
|
683
|
-
const references = createCancelablePromise(token => getReferencesAtPosition(languageFeaturesService.referenceProvider, control.getModel(), corePosition.Position.lift(position), false, false, token).then(references => new ReferencesModel(references, nls.localize(
|
|
683
|
+
const references = createCancelablePromise(token => getReferencesAtPosition(languageFeaturesService.referenceProvider, control.getModel(), corePosition.Position.lift(position), false, false, token).then(references => new ReferencesModel(references, nls.localize(1129, 'References'))));
|
|
684
684
|
const range = new Range(position.lineNumber, position.column, position.lineNumber, position.column);
|
|
685
685
|
return Promise.resolve(controller.toggleWidget(range, references, false));
|
|
686
686
|
});
|
|
@@ -78,13 +78,13 @@ export class ClickLinkGesture extends Disposable {
|
|
|
78
78
|
this.onCancel = this._onCancel.event;
|
|
79
79
|
this._editor = editor;
|
|
80
80
|
this._extractLineNumberFromMouseEvent = opts?.extractLineNumberFromMouseEvent ?? ((e) => e.target.position ? e.target.position.lineNumber : 0);
|
|
81
|
-
this._opts = createOptions(this._editor.getOption(
|
|
81
|
+
this._opts = createOptions(this._editor.getOption(87 /* EditorOption.multiCursorModifier */), this._editor.getOption(88 /* EditorOption.mouseMiddleClickAction */));
|
|
82
82
|
this._lastMouseMoveEvent = null;
|
|
83
83
|
this._hasTriggerKeyOnMouseDown = false;
|
|
84
84
|
this._lineNumberOnMouseDown = 0;
|
|
85
85
|
this._register(this._editor.onDidChangeConfiguration((e) => {
|
|
86
|
-
if (e.hasChanged(
|
|
87
|
-
const newOpts = createOptions(this._editor.getOption(
|
|
86
|
+
if (e.hasChanged(87 /* EditorOption.multiCursorModifier */) || e.hasChanged(88 /* EditorOption.mouseMiddleClickAction */)) {
|
|
87
|
+
const newOpts = createOptions(this._editor.getOption(87 /* EditorOption.multiCursorModifier */), this._editor.getOption(88 /* EditorOption.mouseMiddleClickAction */));
|
|
88
88
|
if (this._opts.equals(newOpts)) {
|
|
89
89
|
return;
|
|
90
90
|
}
|
|
@@ -150,7 +150,7 @@ let GotoDefinitionAtPositionEditorContribution = class GotoDefinitionAtPositionE
|
|
|
150
150
|
combinedRange = Range.plusRange(combinedRange, originSelectionRange);
|
|
151
151
|
}
|
|
152
152
|
}
|
|
153
|
-
this.addDecoration(combinedRange, new MarkdownString().appendText(nls.localize(
|
|
153
|
+
this.addDecoration(combinedRange, new MarkdownString().appendText(nls.localize(1142, "Click to show {0} definitions.", results.length)));
|
|
154
154
|
}
|
|
155
155
|
else {
|
|
156
156
|
// Single result
|
|
@@ -242,7 +242,7 @@ let GotoDefinitionAtPositionEditorContribution = class GotoDefinitionAtPositionE
|
|
|
242
242
|
async gotoDefinition(position, openToSide) {
|
|
243
243
|
this.editor.setPosition(position);
|
|
244
244
|
return this.editor.invokeWithinContext((accessor) => {
|
|
245
|
-
const canPeek = !openToSide && this.editor.getOption(
|
|
245
|
+
const canPeek = !openToSide && this.editor.getOption(103 /* EditorOption.definitionLinkOpensInPeek */) && !this.isInPeekEditor(accessor);
|
|
246
246
|
const action = new DefinitionAction({ openToSide, openInPeek: canPeek, muteMessage: true }, { title: { value: '', original: '' }, id: '', precondition: undefined });
|
|
247
247
|
return action.run(accessor);
|
|
248
248
|
});
|
|
@@ -34,7 +34,7 @@ import { OneReference } from '../referencesModel.js';
|
|
|
34
34
|
import { LayoutData, ReferenceWidget } from './referencesWidget.js';
|
|
35
35
|
import { EditorContextKeys } from '../../../../common/editorContextKeys.js';
|
|
36
36
|
import { InputFocusedContext } from '../../../../../platform/contextkey/common/contextkeys.js';
|
|
37
|
-
export const ctxReferenceSearchVisible = new RawContextKey('referenceSearchVisible', false, nls.localize(
|
|
37
|
+
export const ctxReferenceSearchVisible = new RawContextKey('referenceSearchVisible', false, nls.localize(1143, "Whether reference peek is visible, like 'Peek References' or 'Peek Definition'"));
|
|
38
38
|
let ReferencesController = class ReferencesController {
|
|
39
39
|
static { ReferencesController_1 = this; }
|
|
40
40
|
static { this.ID = 'editor.contrib.referencesController'; }
|
|
@@ -84,7 +84,7 @@ let ReferencesController = class ReferencesController {
|
|
|
84
84
|
const storageKey = 'peekViewLayout';
|
|
85
85
|
const data = LayoutData.fromJSON(this._storageService.get(storageKey, 0 /* StorageScope.PROFILE */, '{}'));
|
|
86
86
|
this._widget = this._instantiationService.createInstance(ReferenceWidget, this._editor, this._defaultTreeKeyboardSupport, data);
|
|
87
|
-
this._widget.setTitle(nls.localize(
|
|
87
|
+
this._widget.setTitle(nls.localize(1144, "Loading..."));
|
|
88
88
|
this._widget.show(range);
|
|
89
89
|
this._disposables.add(this._widget.onDidClose(() => {
|
|
90
90
|
modelPromise.cancel();
|
|
@@ -140,7 +140,7 @@ let ReferencesController = class ReferencesController {
|
|
|
140
140
|
if (this._widget && this._model && this._editor.hasModel()) { // might have been closed
|
|
141
141
|
// set title
|
|
142
142
|
if (!this._model.isEmpty) {
|
|
143
|
-
this._widget.setMetaTitle(nls.localize(
|
|
143
|
+
this._widget.setMetaTitle(nls.localize(1145, "{0} ({1})", this._model.title, this._model.references.length));
|
|
144
144
|
}
|
|
145
145
|
else {
|
|
146
146
|
this._widget.setMetaTitle('');
|
|
@@ -151,7 +151,7 @@ let ReferencesController = class ReferencesController {
|
|
|
151
151
|
const selection = this._model.nearestReference(uri, pos);
|
|
152
152
|
if (selection) {
|
|
153
153
|
return this._widget.setSelection(selection).then(() => {
|
|
154
|
-
if (this._widget && this._editor.getOption(
|
|
154
|
+
if (this._widget && this._editor.getOption(101 /* EditorOption.peekWidgetDefaultFocus */) === 'editor') {
|
|
155
155
|
this._widget.focusOnPreviewEditor();
|
|
156
156
|
}
|
|
157
157
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["vs/editor/contrib/gotoSymbol/browser/peek/referencesController.ts"],"names":[],"mappings":"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","file":"referencesController.js","sourceRoot":"file:///mnt/vss/_work/1/s/dependencies/vscode/out-editor-src","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\nimport { CancelablePromise, createCancelablePromise } from '../../../../../base/common/async.js';\nimport { onUnexpectedError } from '../../../../../base/common/errors.js';\nimport { KeyChord, KeyCode, KeyMod } from '../../../../../base/common/keyCodes.js';\nimport { DisposableStore } from '../../../../../base/common/lifecycle.js';\nimport { ICodeEditor } from '../../../../browser/editorBrowser.js';\nimport { ICodeEditorService } from '../../../../browser/services/codeEditorService.js';\nimport { EditorOption } from '../../../../common/config/editorOptions.js';\nimport { Position } from '../../../../common/core/position.js';\nimport { Range } from '../../../../common/core/range.js';\nimport { IEditorContribution } from '../../../../common/editorCommon.js';\nimport { Location } from '../../../../common/languages.js';\nimport { PeekContext } from '../../../peekView/browser/peekView.js';\nimport { getOuterEditor } from '../../../../browser/widget/codeEditor/embeddedCodeEditorWidget.js';\nimport * as nls from '../../../../../nls.js';\nimport { CommandsRegistry } from '../../../../../platform/commands/common/commands.js';\nimport { IConfigurationService } from '../../../../../platform/configuration/common/configuration.js';\nimport { ContextKeyExpr, IContextKey, IContextKeyService, RawContextKey } from '../../../../../platform/contextkey/common/contextkey.js';\nimport { TextEditorSelectionSource } from '../../../../../platform/editor/common/editor.js';\nimport { IInstantiationService, ServicesAccessor } from '../../../../../platform/instantiation/common/instantiation.js';\nimport { KeybindingsRegistry, KeybindingWeight } from '../../../../../platform/keybinding/common/keybindingsRegistry.js';\nimport { IListService, WorkbenchListFocusContextKey, WorkbenchTreeElementCanCollapse, WorkbenchTreeElementCanExpand } from '../../../../../platform/list/browser/listService.js';\nimport { INotificationService } from '../../../../../platform/notification/common/notification.js';\nimport { IStorageService, StorageScope, StorageTarget } from '../../../../../platform/storage/common/storage.js';\nimport { OneReference, ReferencesModel } from '../referencesModel.js';\nimport { LayoutData, ReferenceWidget } from './referencesWidget.js';\nimport { EditorContextKeys } from '../../../../common/editorContextKeys.js';\nimport { InputFocusedContext } from '../../../../../platform/contextkey/common/contextkeys.js';\n\nexport const ctxReferenceSearchVisible = new RawContextKey<boolean>('referenceSearchVisible', false, nls.localize('referenceSearchVisible', \"Whether reference peek is visible, like 'Peek References' or 'Peek Definition'\"));\n\nexport abstract class ReferencesController implements IEditorContribution {\n\n\tstatic readonly ID = 'editor.contrib.referencesController';\n\n\tprivate readonly _disposables = new DisposableStore();\n\n\tprivate _widget?: ReferenceWidget;\n\tprivate _model?: ReferencesModel;\n\tprivate _peekMode?: boolean;\n\tprivate _requestIdPool = 0;\n\tprivate _ignoreModelChangeEvent = false;\n\n\tprivate readonly _referenceSearchVisible: IContextKey<boolean>;\n\n\tstatic get(editor: ICodeEditor): ReferencesController | null {\n\t\treturn editor.getContribution<ReferencesController>(ReferencesController.ID);\n\t}\n\n\tconstructor(\n\t\tprivate readonly _defaultTreeKeyboardSupport: boolean,\n\t\tprivate readonly _editor: ICodeEditor,\n\t\t@IContextKeyService contextKeyService: IContextKeyService,\n\t\t@ICodeEditorService private readonly _editorService: ICodeEditorService,\n\t\t@INotificationService private readonly _notificationService: INotificationService,\n\t\t@IInstantiationService private readonly _instantiationService: IInstantiationService,\n\t\t@IStorageService private readonly _storageService: IStorageService,\n\t\t@IConfigurationService private readonly _configurationService: IConfigurationService,\n\t) {\n\n\t\tthis._referenceSearchVisible = ctxReferenceSearchVisible.bindTo(contextKeyService);\n\t}\n\n\tdispose(): void {\n\t\tthis._referenceSearchVisible.reset();\n\t\tthis._disposables.dispose();\n\t\tthis._widget?.dispose();\n\t\tthis._model?.dispose();\n\t\tthis._widget = undefined;\n\t\tthis._model = undefined;\n\t}\n\n\ttoggleWidget(range: Range, modelPromise: CancelablePromise<ReferencesModel>, peekMode: boolean): void {\n\n\t\t// close current widget and return early is position didn't change\n\t\tlet widgetPosition: Position | undefined;\n\t\tif (this._widget) {\n\t\t\twidgetPosition = this._widget.position;\n\t\t}\n\t\tthis.closeWidget();\n\t\tif (!!widgetPosition && range.containsPosition(widgetPosition)) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._peekMode = peekMode;\n\t\tthis._referenceSearchVisible.set(true);\n\n\t\t// close the widget on model/mode changes\n\t\tthis._disposables.add(this._editor.onDidChangeModelLanguage(() => { this.closeWidget(); }));\n\t\tthis._disposables.add(this._editor.onDidChangeModel(() => {\n\t\t\tif (!this._ignoreModelChangeEvent) {\n\t\t\t\tthis.closeWidget();\n\t\t\t}\n\t\t}));\n\t\tconst storageKey = 'peekViewLayout';\n\t\tconst data = LayoutData.fromJSON(this._storageService.get(storageKey, StorageScope.PROFILE, '{}'));\n\t\tthis._widget = this._instantiationService.createInstance(ReferenceWidget, this._editor, this._defaultTreeKeyboardSupport, data);\n\t\tthis._widget.setTitle(nls.localize('labelLoading', \"Loading...\"));\n\t\tthis._widget.show(range);\n\n\t\tthis._disposables.add(this._widget.onDidClose(() => {\n\t\t\tmodelPromise.cancel();\n\t\t\tif (this._widget) {\n\t\t\t\tthis._storageService.store(storageKey, JSON.stringify(this._widget.layoutData), StorageScope.PROFILE, StorageTarget.MACHINE);\n\t\t\t\tif (!this._widget.isClosing) {\n\t\t\t\t\t// to prevent calling this too many times, check whether it was already closing.\n\t\t\t\t\tthis.closeWidget();\n\t\t\t\t}\n\t\t\t\tthis._widget = undefined;\n\t\t\t} else {\n\t\t\t\tthis.closeWidget();\n\t\t\t}\n\t\t}));\n\n\t\tthis._disposables.add(this._widget.onDidSelectReference(event => {\n\t\t\tconst { element, kind } = event;\n\t\t\tif (!element) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tswitch (kind) {\n\t\t\t\tcase 'open':\n\t\t\t\t\tif (event.source !== 'editor' || !this._configurationService.getValue('editor.stablePeek')) {\n\t\t\t\t\t\t// when stable peek is configured we don't close\n\t\t\t\t\t\t// the peek window on selecting the editor\n\t\t\t\t\t\tthis.openReference(element, false, false);\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'side':\n\t\t\t\t\tthis.openReference(element, true, false);\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'goto':\n\t\t\t\t\tif (peekMode) {\n\t\t\t\t\t\tthis._gotoReference(element, true);\n\t\t\t\t\t} else {\n\t\t\t\t\t\tthis.openReference(element, false, true);\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t}));\n\n\t\tconst requestId = ++this._requestIdPool;\n\n\t\tmodelPromise.then(model => {\n\n\t\t\t// still current request? widget still open?\n\t\t\tif (requestId !== this._requestIdPool || !this._widget) {\n\t\t\t\tmodel.dispose();\n\t\t\t\treturn undefined;\n\t\t\t}\n\n\t\t\tthis._model?.dispose();\n\t\t\tthis._model = model;\n\n\t\t\t// show widget\n\t\t\treturn this._widget.setModel(this._model).then(() => {\n\t\t\t\tif (this._widget && this._model && this._editor.hasModel()) { // might have been closed\n\n\t\t\t\t\t// set title\n\t\t\t\t\tif (!this._model.isEmpty) {\n\t\t\t\t\t\tthis._widget.setMetaTitle(nls.localize('metaTitle.N', \"{0} ({1})\", this._model.title, this._model.references.length));\n\t\t\t\t\t} else {\n\t\t\t\t\t\tthis._widget.setMetaTitle('');\n\t\t\t\t\t}\n\n\t\t\t\t\t// set 'best' selection\n\t\t\t\t\tconst uri = this._editor.getModel().uri;\n\t\t\t\t\tconst pos = new Position(range.startLineNumber, range.startColumn);\n\t\t\t\t\tconst selection = this._model.nearestReference(uri, pos);\n\t\t\t\t\tif (selection) {\n\t\t\t\t\t\treturn this._widget.setSelection(selection).then(() => {\n\t\t\t\t\t\t\tif (this._widget && this._editor.getOption(EditorOption.peekWidgetDefaultFocus) === 'editor') {\n\t\t\t\t\t\t\t\tthis._widget.focusOnPreviewEditor();\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\treturn undefined;\n\t\t\t});\n\n\t\t}, error => {\n\t\t\tthis._notificationService.error(error);\n\t\t});\n\t}\n\n\tchangeFocusBetweenPreviewAndReferences() {\n\t\tif (!this._widget) {\n\t\t\t// can be called while still resolving...\n\t\t\treturn;\n\t\t}\n\t\tif (this._widget.isPreviewEditorFocused()) {\n\t\t\tthis._widget.focusOnReferenceTree();\n\t\t} else {\n\t\t\tthis._widget.focusOnPreviewEditor();\n\t\t}\n\t}\n\n\tasync goToNextOrPreviousReference(fwd: boolean) {\n\t\tif (!this._editor.hasModel() || !this._model || !this._widget) {\n\t\t\t// can be called while still resolving...\n\t\t\treturn;\n\t\t}\n\t\tconst currentPosition = this._widget.position;\n\t\tif (!currentPosition) {\n\t\t\treturn;\n\t\t}\n\t\tconst source = this._model.nearestReference(this._editor.getModel().uri, currentPosition);\n\t\tif (!source) {\n\t\t\treturn;\n\t\t}\n\t\tconst target = this._model.nextOrPreviousReference(source, fwd);\n\t\tconst editorFocus = this._editor.hasTextFocus();\n\t\tconst previewEditorFocus = this._widget.isPreviewEditorFocused();\n\t\tawait this._widget.setSelection(target);\n\t\tawait this._gotoReference(target, false);\n\t\tif (editorFocus) {\n\t\t\tthis._editor.focus();\n\t\t} else if (this._widget && previewEditorFocus) {\n\t\t\tthis._widget.focusOnPreviewEditor();\n\t\t}\n\t}\n\n\tasync revealReference(reference: OneReference): Promise<void> {\n\t\tif (!this._editor.hasModel() || !this._model || !this._widget) {\n\t\t\t// can be called while still resolving...\n\t\t\treturn;\n\t\t}\n\n\t\tawait this._widget.revealReference(reference);\n\t}\n\n\tcloseWidget(focusEditor = true): void {\n\t\tthis._widget?.dispose();\n\t\tthis._model?.dispose();\n\t\tthis._referenceSearchVisible.reset();\n\t\tthis._disposables.clear();\n\t\tthis._widget = undefined;\n\t\tthis._model = undefined;\n\t\tif (focusEditor) {\n\t\t\tthis._editor.focus();\n\t\t}\n\t\tthis._requestIdPool += 1; // Cancel pending requests\n\t}\n\n\tprivate _gotoReference(ref: Location, pinned: boolean): Promise<unknown> {\n\t\tthis._widget?.hide();\n\n\t\tthis._ignoreModelChangeEvent = true;\n\t\tconst range = Range.lift(ref.range).collapseToStart();\n\n\t\treturn this._editorService.openCodeEditor({\n\t\t\tresource: ref.uri,\n\t\t\toptions: { selection: range, selectionSource: TextEditorSelectionSource.JUMP, pinned }\n\t\t}, this._editor).then(openedEditor => {\n\t\t\tthis._ignoreModelChangeEvent = false;\n\n\t\t\tif (!openedEditor || !this._widget) {\n\t\t\t\t// something went wrong...\n\t\t\t\tthis.closeWidget();\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif (this._editor === openedEditor) {\n\t\t\t\t//\n\t\t\t\tthis._widget.show(range);\n\t\t\t\tthis._widget.focusOnReferenceTree();\n\n\t\t\t} else {\n\t\t\t\t// we opened a different editor instance which means a different controller instance.\n\t\t\t\t// therefore we stop with this controller and continue with the other\n\t\t\t\tconst other = ReferencesController.get(openedEditor);\n\t\t\t\tconst model = this._model!.clone();\n\n\t\t\t\tthis.closeWidget();\n\t\t\t\topenedEditor.focus();\n\n\t\t\t\tother?.toggleWidget(\n\t\t\t\t\trange,\n\t\t\t\t\tcreateCancelablePromise(_ => Promise.resolve(model)),\n\t\t\t\t\tthis._peekMode ?? false\n\t\t\t\t);\n\t\t\t}\n\n\t\t}, (err) => {\n\t\t\tthis._ignoreModelChangeEvent = false;\n\t\t\tonUnexpectedError(err);\n\t\t});\n\t}\n\n\topenReference(ref: Location, sideBySide: boolean, pinned: boolean): void {\n\t\t// clear stage\n\t\tif (!sideBySide) {\n\t\t\tthis.closeWidget();\n\t\t}\n\n\t\tconst { uri, range } = ref;\n\t\tthis._editorService.openCodeEditor({\n\t\t\tresource: uri,\n\t\t\toptions: { selection: range, selectionSource: TextEditorSelectionSource.JUMP, pinned }\n\t\t}, this._editor, sideBySide);\n\t}\n}\n\nfunction withController(accessor: ServicesAccessor, fn: (controller: ReferencesController) => void): void {\n\tconst outerEditor = getOuterEditor(accessor);\n\tif (!outerEditor) {\n\t\treturn;\n\t}\n\tconst controller = ReferencesController.get(outerEditor);\n\tif (controller) {\n\t\tfn(controller);\n\t}\n}\n\nKeybindingsRegistry.registerCommandAndKeybindingRule({\n\tid: 'togglePeekWidgetFocus',\n\tweight: KeybindingWeight.EditorContrib,\n\tprimary: KeyChord(KeyMod.CtrlCmd | KeyCode.KeyK, KeyCode.F2),\n\twhen: ContextKeyExpr.or(ctxReferenceSearchVisible, PeekContext.inPeekEditor),\n\thandler(accessor) {\n\t\twithController(accessor, controller => {\n\t\t\tcontroller.changeFocusBetweenPreviewAndReferences();\n\t\t});\n\t}\n});\n\nKeybindingsRegistry.registerCommandAndKeybindingRule({\n\tid: 'goToNextReference',\n\tweight: KeybindingWeight.EditorContrib - 10,\n\tprimary: KeyCode.F4,\n\tsecondary: [KeyCode.F12],\n\twhen: ContextKeyExpr.or(ctxReferenceSearchVisible, PeekContext.inPeekEditor),\n\thandler(accessor) {\n\t\twithController(accessor, controller => {\n\t\t\tcontroller.goToNextOrPreviousReference(true);\n\t\t});\n\t}\n});\n\nKeybindingsRegistry.registerCommandAndKeybindingRule({\n\tid: 'goToPreviousReference',\n\tweight: KeybindingWeight.EditorContrib - 10,\n\tprimary: KeyMod.Shift | KeyCode.F4,\n\tsecondary: [KeyMod.Shift | KeyCode.F12],\n\twhen: ContextKeyExpr.or(ctxReferenceSearchVisible, PeekContext.inPeekEditor),\n\thandler(accessor) {\n\t\twithController(accessor, controller => {\n\t\t\tcontroller.goToNextOrPreviousReference(false);\n\t\t});\n\t}\n});\n\n// commands that aren't needed anymore because there is now ContextKeyExpr.OR\nCommandsRegistry.registerCommandAlias('goToNextReferenceFromEmbeddedEditor', 'goToNextReference');\nCommandsRegistry.registerCommandAlias('goToPreviousReferenceFromEmbeddedEditor', 'goToPreviousReference');\n\n// close\nCommandsRegistry.registerCommandAlias('closeReferenceSearchEditor', 'closeReferenceSearch');\nCommandsRegistry.registerCommand(\n\t'closeReferenceSearch',\n\taccessor => withController(accessor, controller => controller.closeWidget())\n);\nKeybindingsRegistry.registerKeybindingRule({\n\tid: 'closeReferenceSearch',\n\tweight: KeybindingWeight.EditorContrib - 101,\n\tprimary: KeyCode.Escape,\n\tsecondary: [KeyMod.Shift | KeyCode.Escape],\n\twhen: ContextKeyExpr.and(PeekContext.inPeekEditor, ContextKeyExpr.not('config.editor.stablePeek'))\n});\nKeybindingsRegistry.registerKeybindingRule({\n\tid: 'closeReferenceSearch',\n\tweight: KeybindingWeight.WorkbenchContrib + 50,\n\tprimary: KeyCode.Escape,\n\tsecondary: [KeyMod.Shift | KeyCode.Escape],\n\twhen: ContextKeyExpr.and(\n\t\tctxReferenceSearchVisible,\n\t\tContextKeyExpr.not('config.editor.stablePeek'),\n\t\tContextKeyExpr.or(\n\t\t\tEditorContextKeys.editorTextFocus,\n\t\t\tInputFocusedContext.negate()\n\t\t)\n\t)\n});\n\n\nKeybindingsRegistry.registerCommandAndKeybindingRule({\n\tid: 'revealReference',\n\tweight: KeybindingWeight.WorkbenchContrib,\n\tprimary: KeyCode.Enter,\n\tmac: {\n\t\tprimary: KeyCode.Enter,\n\t\tsecondary: [KeyMod.CtrlCmd | KeyCode.DownArrow]\n\t},\n\twhen: ContextKeyExpr.and(ctxReferenceSearchVisible, WorkbenchListFocusContextKey, WorkbenchTreeElementCanCollapse.negate(), WorkbenchTreeElementCanExpand.negate()),\n\thandler(accessor: ServicesAccessor) {\n\t\tconst listService = accessor.get(IListService);\n\t\tconst focus = <unknown[]>listService.lastFocusedList?.getFocus();\n\t\tif (Array.isArray(focus) && focus[0] instanceof OneReference) {\n\t\t\twithController(accessor, controller => controller.revealReference(focus[0] as OneReference));\n\t\t}\n\t}\n});\n\nKeybindingsRegistry.registerCommandAndKeybindingRule({\n\tid: 'openReferenceToSide',\n\tweight: KeybindingWeight.EditorContrib,\n\tprimary: KeyMod.CtrlCmd | KeyCode.Enter,\n\tmac: {\n\t\tprimary: KeyMod.WinCtrl | KeyCode.Enter\n\t},\n\twhen: ContextKeyExpr.and(ctxReferenceSearchVisible, WorkbenchListFocusContextKey, WorkbenchTreeElementCanCollapse.negate(), WorkbenchTreeElementCanExpand.negate()),\n\thandler(accessor: ServicesAccessor) {\n\t\tconst listService = accessor.get(IListService);\n\t\tconst focus = <unknown[]>listService.lastFocusedList?.getFocus();\n\t\tif (Array.isArray(focus) && focus[0] instanceof OneReference) {\n\t\t\twithController(accessor, controller => controller.openReference(focus[0] as OneReference, true, true));\n\t\t}\n\t}\n});\n\nCommandsRegistry.registerCommand('openReference', (accessor) => {\n\tconst listService = accessor.get(IListService);\n\tconst focus = <unknown[]>listService.lastFocusedList?.getFocus();\n\tif (Array.isArray(focus) && focus[0] instanceof OneReference) {\n\t\twithController(accessor, controller => controller.openReference(focus[0] as OneReference, false, true));\n\t}\n});\n"]}
|
|
1
|
+
{"version":3,"sources":["vs/editor/contrib/gotoSymbol/browser/peek/referencesController.ts"],"names":[],"mappings":"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","file":"referencesController.js","sourceRoot":"file:///mnt/vss/_work/1/s/dependencies/vscode/out-editor-src","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\n\nimport { CancelablePromise, createCancelablePromise } from '../../../../../base/common/async.js';\nimport { onUnexpectedError } from '../../../../../base/common/errors.js';\nimport { KeyChord, KeyCode, KeyMod } from '../../../../../base/common/keyCodes.js';\nimport { DisposableStore } from '../../../../../base/common/lifecycle.js';\nimport { ICodeEditor } from '../../../../browser/editorBrowser.js';\nimport { ICodeEditorService } from '../../../../browser/services/codeEditorService.js';\nimport { EditorOption } from '../../../../common/config/editorOptions.js';\nimport { Position } from '../../../../common/core/position.js';\nimport { Range } from '../../../../common/core/range.js';\nimport { IEditorContribution } from '../../../../common/editorCommon.js';\nimport { Location } from '../../../../common/languages.js';\nimport { PeekContext } from '../../../peekView/browser/peekView.js';\nimport { getOuterEditor } from '../../../../browser/widget/codeEditor/embeddedCodeEditorWidget.js';\nimport * as nls from '../../../../../nls.js';\nimport { CommandsRegistry } from '../../../../../platform/commands/common/commands.js';\nimport { IConfigurationService } from '../../../../../platform/configuration/common/configuration.js';\nimport { ContextKeyExpr, IContextKey, IContextKeyService, RawContextKey } from '../../../../../platform/contextkey/common/contextkey.js';\nimport { TextEditorSelectionSource } from '../../../../../platform/editor/common/editor.js';\nimport { IInstantiationService, ServicesAccessor } from '../../../../../platform/instantiation/common/instantiation.js';\nimport { KeybindingsRegistry, KeybindingWeight } from '../../../../../platform/keybinding/common/keybindingsRegistry.js';\nimport { IListService, WorkbenchListFocusContextKey, WorkbenchTreeElementCanCollapse, WorkbenchTreeElementCanExpand } from '../../../../../platform/list/browser/listService.js';\nimport { INotificationService } from '../../../../../platform/notification/common/notification.js';\nimport { IStorageService, StorageScope, StorageTarget } from '../../../../../platform/storage/common/storage.js';\nimport { OneReference, ReferencesModel } from '../referencesModel.js';\nimport { LayoutData, ReferenceWidget } from './referencesWidget.js';\nimport { EditorContextKeys } from '../../../../common/editorContextKeys.js';\nimport { InputFocusedContext } from '../../../../../platform/contextkey/common/contextkeys.js';\n\nexport const ctxReferenceSearchVisible = new RawContextKey<boolean>('referenceSearchVisible', false, nls.localize('referenceSearchVisible', \"Whether reference peek is visible, like 'Peek References' or 'Peek Definition'\"));\n\nexport abstract class ReferencesController implements IEditorContribution {\n\n\tstatic readonly ID = 'editor.contrib.referencesController';\n\n\tprivate readonly _disposables = new DisposableStore();\n\n\tprivate _widget?: ReferenceWidget;\n\tprivate _model?: ReferencesModel;\n\tprivate _peekMode?: boolean;\n\tprivate _requestIdPool = 0;\n\tprivate _ignoreModelChangeEvent = false;\n\n\tprivate readonly _referenceSearchVisible: IContextKey<boolean>;\n\n\tstatic get(editor: ICodeEditor): ReferencesController | null {\n\t\treturn editor.getContribution<ReferencesController>(ReferencesController.ID);\n\t}\n\n\tconstructor(\n\t\tprivate readonly _defaultTreeKeyboardSupport: boolean,\n\t\tprivate readonly _editor: ICodeEditor,\n\t\t@IContextKeyService contextKeyService: IContextKeyService,\n\t\t@ICodeEditorService private readonly _editorService: ICodeEditorService,\n\t\t@INotificationService private readonly _notificationService: INotificationService,\n\t\t@IInstantiationService private readonly _instantiationService: IInstantiationService,\n\t\t@IStorageService private readonly _storageService: IStorageService,\n\t\t@IConfigurationService private readonly _configurationService: IConfigurationService,\n\t) {\n\n\t\tthis._referenceSearchVisible = ctxReferenceSearchVisible.bindTo(contextKeyService);\n\t}\n\n\tdispose(): void {\n\t\tthis._referenceSearchVisible.reset();\n\t\tthis._disposables.dispose();\n\t\tthis._widget?.dispose();\n\t\tthis._model?.dispose();\n\t\tthis._widget = undefined;\n\t\tthis._model = undefined;\n\t}\n\n\ttoggleWidget(range: Range, modelPromise: CancelablePromise<ReferencesModel>, peekMode: boolean): void {\n\n\t\t// close current widget and return early is position didn't change\n\t\tlet widgetPosition: Position | undefined;\n\t\tif (this._widget) {\n\t\t\twidgetPosition = this._widget.position;\n\t\t}\n\t\tthis.closeWidget();\n\t\tif (!!widgetPosition && range.containsPosition(widgetPosition)) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._peekMode = peekMode;\n\t\tthis._referenceSearchVisible.set(true);\n\n\t\t// close the widget on model/mode changes\n\t\tthis._disposables.add(this._editor.onDidChangeModelLanguage(() => { this.closeWidget(); }));\n\t\tthis._disposables.add(this._editor.onDidChangeModel(() => {\n\t\t\tif (!this._ignoreModelChangeEvent) {\n\t\t\t\tthis.closeWidget();\n\t\t\t}\n\t\t}));\n\t\tconst storageKey = 'peekViewLayout';\n\t\tconst data = LayoutData.fromJSON(this._storageService.get(storageKey, StorageScope.PROFILE, '{}'));\n\t\tthis._widget = this._instantiationService.createInstance(ReferenceWidget, this._editor, this._defaultTreeKeyboardSupport, data);\n\t\tthis._widget.setTitle(nls.localize('labelLoading', \"Loading...\"));\n\t\tthis._widget.show(range);\n\n\t\tthis._disposables.add(this._widget.onDidClose(() => {\n\t\t\tmodelPromise.cancel();\n\t\t\tif (this._widget) {\n\t\t\t\tthis._storageService.store(storageKey, JSON.stringify(this._widget.layoutData), StorageScope.PROFILE, StorageTarget.MACHINE);\n\t\t\t\tif (!this._widget.isClosing) {\n\t\t\t\t\t// to prevent calling this too many times, check whether it was already closing.\n\t\t\t\t\tthis.closeWidget();\n\t\t\t\t}\n\t\t\t\tthis._widget = undefined;\n\t\t\t} else {\n\t\t\t\tthis.closeWidget();\n\t\t\t}\n\t\t}));\n\n\t\tthis._disposables.add(this._widget.onDidSelectReference(event => {\n\t\t\tconst { element, kind } = event;\n\t\t\tif (!element) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tswitch (kind) {\n\t\t\t\tcase 'open':\n\t\t\t\t\tif (event.source !== 'editor' || !this._configurationService.getValue('editor.stablePeek')) {\n\t\t\t\t\t\t// when stable peek is configured we don't close\n\t\t\t\t\t\t// the peek window on selecting the editor\n\t\t\t\t\t\tthis.openReference(element, false, false);\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'side':\n\t\t\t\t\tthis.openReference(element, true, false);\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'goto':\n\t\t\t\t\tif (peekMode) {\n\t\t\t\t\t\tthis._gotoReference(element, true);\n\t\t\t\t\t} else {\n\t\t\t\t\t\tthis.openReference(element, false, true);\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t}));\n\n\t\tconst requestId = ++this._requestIdPool;\n\n\t\tmodelPromise.then(model => {\n\n\t\t\t// still current request? widget still open?\n\t\t\tif (requestId !== this._requestIdPool || !this._widget) {\n\t\t\t\tmodel.dispose();\n\t\t\t\treturn undefined;\n\t\t\t}\n\n\t\t\tthis._model?.dispose();\n\t\t\tthis._model = model;\n\n\t\t\t// show widget\n\t\t\treturn this._widget.setModel(this._model).then(() => {\n\t\t\t\tif (this._widget && this._model && this._editor.hasModel()) { // might have been closed\n\n\t\t\t\t\t// set title\n\t\t\t\t\tif (!this._model.isEmpty) {\n\t\t\t\t\t\tthis._widget.setMetaTitle(nls.localize('metaTitle.N', \"{0} ({1})\", this._model.title, this._model.references.length));\n\t\t\t\t\t} else {\n\t\t\t\t\t\tthis._widget.setMetaTitle('');\n\t\t\t\t\t}\n\n\t\t\t\t\t// set 'best' selection\n\t\t\t\t\tconst uri = this._editor.getModel().uri;\n\t\t\t\t\tconst pos = new Position(range.startLineNumber, range.startColumn);\n\t\t\t\t\tconst selection = this._model.nearestReference(uri, pos);\n\t\t\t\t\tif (selection) {\n\t\t\t\t\t\treturn this._widget.setSelection(selection).then(() => {\n\t\t\t\t\t\t\tif (this._widget && this._editor.getOption(EditorOption.peekWidgetDefaultFocus) === 'editor') {\n\t\t\t\t\t\t\t\tthis._widget.focusOnPreviewEditor();\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\treturn undefined;\n\t\t\t});\n\n\t\t}, error => {\n\t\t\tthis._notificationService.error(error);\n\t\t});\n\t}\n\n\tchangeFocusBetweenPreviewAndReferences() {\n\t\tif (!this._widget) {\n\t\t\t// can be called while still resolving...\n\t\t\treturn;\n\t\t}\n\t\tif (this._widget.isPreviewEditorFocused()) {\n\t\t\tthis._widget.focusOnReferenceTree();\n\t\t} else {\n\t\t\tthis._widget.focusOnPreviewEditor();\n\t\t}\n\t}\n\n\tasync goToNextOrPreviousReference(fwd: boolean) {\n\t\tif (!this._editor.hasModel() || !this._model || !this._widget) {\n\t\t\t// can be called while still resolving...\n\t\t\treturn;\n\t\t}\n\t\tconst currentPosition = this._widget.position;\n\t\tif (!currentPosition) {\n\t\t\treturn;\n\t\t}\n\t\tconst source = this._model.nearestReference(this._editor.getModel().uri, currentPosition);\n\t\tif (!source) {\n\t\t\treturn;\n\t\t}\n\t\tconst target = this._model.nextOrPreviousReference(source, fwd);\n\t\tconst editorFocus = this._editor.hasTextFocus();\n\t\tconst previewEditorFocus = this._widget.isPreviewEditorFocused();\n\t\tawait this._widget.setSelection(target);\n\t\tawait this._gotoReference(target, false);\n\t\tif (editorFocus) {\n\t\t\tthis._editor.focus();\n\t\t} else if (this._widget && previewEditorFocus) {\n\t\t\tthis._widget.focusOnPreviewEditor();\n\t\t}\n\t}\n\n\tasync revealReference(reference: OneReference): Promise<void> {\n\t\tif (!this._editor.hasModel() || !this._model || !this._widget) {\n\t\t\t// can be called while still resolving...\n\t\t\treturn;\n\t\t}\n\n\t\tawait this._widget.revealReference(reference);\n\t}\n\n\tcloseWidget(focusEditor = true): void {\n\t\tthis._widget?.dispose();\n\t\tthis._model?.dispose();\n\t\tthis._referenceSearchVisible.reset();\n\t\tthis._disposables.clear();\n\t\tthis._widget = undefined;\n\t\tthis._model = undefined;\n\t\tif (focusEditor) {\n\t\t\tthis._editor.focus();\n\t\t}\n\t\tthis._requestIdPool += 1; // Cancel pending requests\n\t}\n\n\tprivate _gotoReference(ref: Location, pinned: boolean): Promise<unknown> {\n\t\tthis._widget?.hide();\n\n\t\tthis._ignoreModelChangeEvent = true;\n\t\tconst range = Range.lift(ref.range).collapseToStart();\n\n\t\treturn this._editorService.openCodeEditor({\n\t\t\tresource: ref.uri,\n\t\t\toptions: { selection: range, selectionSource: TextEditorSelectionSource.JUMP, pinned }\n\t\t}, this._editor).then(openedEditor => {\n\t\t\tthis._ignoreModelChangeEvent = false;\n\n\t\t\tif (!openedEditor || !this._widget) {\n\t\t\t\t// something went wrong...\n\t\t\t\tthis.closeWidget();\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif (this._editor === openedEditor) {\n\t\t\t\t//\n\t\t\t\tthis._widget.show(range);\n\t\t\t\tthis._widget.focusOnReferenceTree();\n\n\t\t\t} else {\n\t\t\t\t// we opened a different editor instance which means a different controller instance.\n\t\t\t\t// therefore we stop with this controller and continue with the other\n\t\t\t\tconst other = ReferencesController.get(openedEditor);\n\t\t\t\tconst model = this._model!.clone();\n\n\t\t\t\tthis.closeWidget();\n\t\t\t\topenedEditor.focus();\n\n\t\t\t\tother?.toggleWidget(\n\t\t\t\t\trange,\n\t\t\t\t\tcreateCancelablePromise(_ => Promise.resolve(model)),\n\t\t\t\t\tthis._peekMode ?? false\n\t\t\t\t);\n\t\t\t}\n\n\t\t}, (err) => {\n\t\t\tthis._ignoreModelChangeEvent = false;\n\t\t\tonUnexpectedError(err);\n\t\t});\n\t}\n\n\topenReference(ref: Location, sideBySide: boolean, pinned: boolean): void {\n\t\t// clear stage\n\t\tif (!sideBySide) {\n\t\t\tthis.closeWidget();\n\t\t}\n\n\t\tconst { uri, range } = ref;\n\t\tthis._editorService.openCodeEditor({\n\t\t\tresource: uri,\n\t\t\toptions: { selection: range, selectionSource: TextEditorSelectionSource.JUMP, pinned }\n\t\t}, this._editor, sideBySide);\n\t}\n}\n\nfunction withController(accessor: ServicesAccessor, fn: (controller: ReferencesController) => void): void {\n\tconst outerEditor = getOuterEditor(accessor);\n\tif (!outerEditor) {\n\t\treturn;\n\t}\n\tconst controller = ReferencesController.get(outerEditor);\n\tif (controller) {\n\t\tfn(controller);\n\t}\n}\n\nKeybindingsRegistry.registerCommandAndKeybindingRule({\n\tid: 'togglePeekWidgetFocus',\n\tweight: KeybindingWeight.EditorContrib,\n\tprimary: KeyChord(KeyMod.CtrlCmd | KeyCode.KeyK, KeyCode.F2),\n\twhen: ContextKeyExpr.or(ctxReferenceSearchVisible, PeekContext.inPeekEditor),\n\thandler(accessor) {\n\t\twithController(accessor, controller => {\n\t\t\tcontroller.changeFocusBetweenPreviewAndReferences();\n\t\t});\n\t}\n});\n\nKeybindingsRegistry.registerCommandAndKeybindingRule({\n\tid: 'goToNextReference',\n\tweight: KeybindingWeight.EditorContrib - 10,\n\tprimary: KeyCode.F4,\n\tsecondary: [KeyCode.F12],\n\twhen: ContextKeyExpr.or(ctxReferenceSearchVisible, PeekContext.inPeekEditor),\n\thandler(accessor) {\n\t\twithController(accessor, controller => {\n\t\t\tcontroller.goToNextOrPreviousReference(true);\n\t\t});\n\t}\n});\n\nKeybindingsRegistry.registerCommandAndKeybindingRule({\n\tid: 'goToPreviousReference',\n\tweight: KeybindingWeight.EditorContrib - 10,\n\tprimary: KeyMod.Shift | KeyCode.F4,\n\tsecondary: [KeyMod.Shift | KeyCode.F12],\n\twhen: ContextKeyExpr.or(ctxReferenceSearchVisible, PeekContext.inPeekEditor),\n\thandler(accessor) {\n\t\twithController(accessor, controller => {\n\t\t\tcontroller.goToNextOrPreviousReference(false);\n\t\t});\n\t}\n});\n\n// commands that aren't needed anymore because there is now ContextKeyExpr.OR\nCommandsRegistry.registerCommandAlias('goToNextReferenceFromEmbeddedEditor', 'goToNextReference');\nCommandsRegistry.registerCommandAlias('goToPreviousReferenceFromEmbeddedEditor', 'goToPreviousReference');\n\n// close\nCommandsRegistry.registerCommandAlias('closeReferenceSearchEditor', 'closeReferenceSearch');\nCommandsRegistry.registerCommand(\n\t'closeReferenceSearch',\n\taccessor => withController(accessor, controller => controller.closeWidget())\n);\nKeybindingsRegistry.registerKeybindingRule({\n\tid: 'closeReferenceSearch',\n\tweight: KeybindingWeight.EditorContrib - 101,\n\tprimary: KeyCode.Escape,\n\tsecondary: [KeyMod.Shift | KeyCode.Escape],\n\twhen: ContextKeyExpr.and(PeekContext.inPeekEditor, ContextKeyExpr.not('config.editor.stablePeek'))\n});\nKeybindingsRegistry.registerKeybindingRule({\n\tid: 'closeReferenceSearch',\n\tweight: KeybindingWeight.WorkbenchContrib + 50,\n\tprimary: KeyCode.Escape,\n\tsecondary: [KeyMod.Shift | KeyCode.Escape],\n\twhen: ContextKeyExpr.and(\n\t\tctxReferenceSearchVisible,\n\t\tContextKeyExpr.not('config.editor.stablePeek'),\n\t\tContextKeyExpr.or(\n\t\t\tEditorContextKeys.editorTextFocus,\n\t\t\tInputFocusedContext.negate()\n\t\t)\n\t)\n});\n\n\nKeybindingsRegistry.registerCommandAndKeybindingRule({\n\tid: 'revealReference',\n\tweight: KeybindingWeight.WorkbenchContrib,\n\tprimary: KeyCode.Enter,\n\tmac: {\n\t\tprimary: KeyCode.Enter,\n\t\tsecondary: [KeyMod.CtrlCmd | KeyCode.DownArrow]\n\t},\n\twhen: ContextKeyExpr.and(ctxReferenceSearchVisible, WorkbenchListFocusContextKey, WorkbenchTreeElementCanCollapse.negate(), WorkbenchTreeElementCanExpand.negate()),\n\thandler(accessor: ServicesAccessor) {\n\t\tconst listService = accessor.get(IListService);\n\t\tconst focus = <unknown[]>listService.lastFocusedList?.getFocus();\n\t\tif (Array.isArray(focus) && focus[0] instanceof OneReference) {\n\t\t\twithController(accessor, controller => controller.revealReference(focus[0] as OneReference));\n\t\t}\n\t}\n});\n\nKeybindingsRegistry.registerCommandAndKeybindingRule({\n\tid: 'openReferenceToSide',\n\tweight: KeybindingWeight.EditorContrib,\n\tprimary: KeyMod.CtrlCmd | KeyCode.Enter,\n\tmac: {\n\t\tprimary: KeyMod.WinCtrl | KeyCode.Enter\n\t},\n\twhen: ContextKeyExpr.and(ctxReferenceSearchVisible, WorkbenchListFocusContextKey, WorkbenchTreeElementCanCollapse.negate(), WorkbenchTreeElementCanExpand.negate()),\n\thandler(accessor: ServicesAccessor) {\n\t\tconst listService = accessor.get(IListService);\n\t\tconst focus = <unknown[]>listService.lastFocusedList?.getFocus();\n\t\tif (Array.isArray(focus) && focus[0] instanceof OneReference) {\n\t\t\twithController(accessor, controller => controller.openReference(focus[0] as OneReference, true, true));\n\t\t}\n\t}\n});\n\nCommandsRegistry.registerCommand('openReference', (accessor) => {\n\tconst listService = accessor.get(IListService);\n\tconst focus = <unknown[]>listService.lastFocusedList?.getFocus();\n\tif (Array.isArray(focus) && focus[0] instanceof OneReference) {\n\t\twithController(accessor, controller => controller.openReference(focus[0] as OneReference, false, true));\n\t}\n});\n"]}
|
|
@@ -115,10 +115,10 @@ let FileReferencesTemplate = class FileReferencesTemplate extends Disposable {
|
|
|
115
115
|
const len = element.children.length;
|
|
116
116
|
this.badge.setCount(len);
|
|
117
117
|
if (len > 1) {
|
|
118
|
-
this.badge.setTitleFormat(localize(
|
|
118
|
+
this.badge.setTitleFormat(localize(1146, "{0} references", len));
|
|
119
119
|
}
|
|
120
120
|
else {
|
|
121
|
-
this.badge.setTitleFormat(localize(
|
|
121
|
+
this.badge.setTitleFormat(localize(1147, "{0} reference", len));
|
|
122
122
|
}
|
|
123
123
|
}
|
|
124
124
|
};
|
|
@@ -192,7 +192,7 @@ export class OneReferenceRenderer {
|
|
|
192
192
|
//#endregion
|
|
193
193
|
export class AccessibilityProvider {
|
|
194
194
|
getWidgetAriaLabel() {
|
|
195
|
-
return localize(
|
|
195
|
+
return localize(1148, "References");
|
|
196
196
|
}
|
|
197
197
|
getAriaLabel(element) {
|
|
198
198
|
return element.ariaMessage;
|
|
@@ -301,7 +301,7 @@ let ReferenceWidget = class ReferenceWidget extends peekView.PeekViewWidget {
|
|
|
301
301
|
};
|
|
302
302
|
this._preview = this._instantiationService.createInstance(EmbeddedCodeEditorWidget, this._previewContainer, options, {}, this.editor);
|
|
303
303
|
dom.hide(this._previewContainer);
|
|
304
|
-
this._previewNotAvailableMessage = this._instantiationService.createInstance(TextModel, nls.localize(
|
|
304
|
+
this._previewNotAvailableMessage = this._instantiationService.createInstance(TextModel, nls.localize(1149, "no preview available"), PLAINTEXT_LANGUAGE_ID, TextModel.DEFAULT_CREATION_OPTIONS, null);
|
|
305
305
|
// tree
|
|
306
306
|
this._treeContainer = dom.append(containerElement, dom.$('div.ref-tree.inline'));
|
|
307
307
|
const treeOptions = {
|
|
@@ -415,7 +415,7 @@ let ReferenceWidget = class ReferenceWidget extends peekView.PeekViewWidget {
|
|
|
415
415
|
}
|
|
416
416
|
if (this._model.isEmpty) {
|
|
417
417
|
this.setTitle('');
|
|
418
|
-
this._messageContainer.innerText = nls.localize(
|
|
418
|
+
this._messageContainer.innerText = nls.localize(1150, "No results");
|
|
419
419
|
dom.show(this._messageContainer);
|
|
420
420
|
return Promise.resolve(undefined);
|
|
421
421
|
}
|
|
@@ -476,7 +476,7 @@ let ReferenceWidget = class ReferenceWidget extends peekView.PeekViewWidget {
|
|
|
476
476
|
this.setTitle(basenameOrAuthority(reference.uri), this._uriLabel.getUriLabel(dirname(reference.uri)));
|
|
477
477
|
}
|
|
478
478
|
else {
|
|
479
|
-
this.setTitle(nls.localize(
|
|
479
|
+
this.setTitle(nls.localize(1151, "References"));
|
|
480
480
|
}
|
|
481
481
|
const promise = this._textModelResolverService.createModelReference(reference.uri);
|
|
482
482
|
if (this._tree.getInput() === reference.parent) {
|
|
@@ -32,10 +32,10 @@ export class OneReference {
|
|
|
32
32
|
get ariaMessage() {
|
|
33
33
|
const preview = this.parent.getPreview(this)?.preview(this.range);
|
|
34
34
|
if (!preview) {
|
|
35
|
-
return localize(
|
|
35
|
+
return localize(1152, "in {0} on line {1} at column {2}", basename(this.uri), this.range.startLineNumber, this.range.startColumn);
|
|
36
36
|
}
|
|
37
37
|
else {
|
|
38
|
-
return localize(
|
|
38
|
+
return localize(1153, "{0} in {1} on line {2} at column {3}", preview.value, basename(this.uri), this.range.startLineNumber, this.range.startColumn);
|
|
39
39
|
}
|
|
40
40
|
}
|
|
41
41
|
}
|
|
@@ -81,10 +81,10 @@ export class FileReferences {
|
|
|
81
81
|
get ariaMessage() {
|
|
82
82
|
const len = this.children.length;
|
|
83
83
|
if (len === 1) {
|
|
84
|
-
return localize(
|
|
84
|
+
return localize(1154, "1 symbol in {0}, full path {1}", basename(this.uri), this.uri.fsPath);
|
|
85
85
|
}
|
|
86
86
|
else {
|
|
87
|
-
return localize(
|
|
87
|
+
return localize(1155, "{0} symbols in {1}, full path {2}", len, basename(this.uri), this.uri.fsPath);
|
|
88
88
|
}
|
|
89
89
|
}
|
|
90
90
|
async resolve(textModelResolverService) {
|
|
@@ -148,16 +148,16 @@ export class ReferencesModel {
|
|
|
148
148
|
}
|
|
149
149
|
get ariaMessage() {
|
|
150
150
|
if (this.isEmpty) {
|
|
151
|
-
return localize(
|
|
151
|
+
return localize(1156, "No results found");
|
|
152
152
|
}
|
|
153
153
|
else if (this.references.length === 1) {
|
|
154
|
-
return localize(
|
|
154
|
+
return localize(1157, "Found 1 symbol in {0}", this.references[0].uri.fsPath);
|
|
155
155
|
}
|
|
156
156
|
else if (this.groups.length === 1) {
|
|
157
|
-
return localize(
|
|
157
|
+
return localize(1158, "Found {0} symbols in {1}", this.references.length, this.groups[0].uri.fsPath);
|
|
158
158
|
}
|
|
159
159
|
else {
|
|
160
|
-
return localize(
|
|
160
|
+
return localize(1159, "Found {0} symbols in {1} files", this.references.length, this.groups.length);
|
|
161
161
|
}
|
|
162
162
|
}
|
|
163
163
|
nextOrPreviousReference(reference, next) {
|
|
@@ -24,7 +24,7 @@ import { createDecorator } from '../../../../platform/instantiation/common/insta
|
|
|
24
24
|
import { IKeybindingService } from '../../../../platform/keybinding/common/keybinding.js';
|
|
25
25
|
import { KeybindingsRegistry } from '../../../../platform/keybinding/common/keybindingsRegistry.js';
|
|
26
26
|
import { INotificationService } from '../../../../platform/notification/common/notification.js';
|
|
27
|
-
export const ctxHasSymbols = new RawContextKey('hasSymbols', false, localize(
|
|
27
|
+
export const ctxHasSymbols = new RawContextKey('hasSymbols', false, localize(1160, "Whether there are symbol locations that can be navigated via keyboard-only."));
|
|
28
28
|
export const ISymbolNavigationService = createDecorator('ISymbolNavigationService');
|
|
29
29
|
let SymbolNavigationService = class SymbolNavigationService {
|
|
30
30
|
constructor(contextKeyService, _editorService, _notificationService, _keybindingService) {
|
|
@@ -110,8 +110,8 @@ let SymbolNavigationService = class SymbolNavigationService {
|
|
|
110
110
|
this._currentMessage?.close();
|
|
111
111
|
const kb = this._keybindingService.lookupKeybinding('editor.gotoNextSymbolFromResult');
|
|
112
112
|
const message = kb
|
|
113
|
-
? localize(
|
|
114
|
-
: localize(
|
|
113
|
+
? localize(1161, "Symbol {0} of {1}, {2} for next", this._currentIdx + 1, this._currentModel.references.length, kb.getLabel())
|
|
114
|
+
: localize(1162, "Symbol {0} of {1}", this._currentIdx + 1, this._currentModel.references.length);
|
|
115
115
|
this._currentMessage = this._notificationService.status(message);
|
|
116
116
|
}
|
|
117
117
|
};
|
|
@@ -21,7 +21,7 @@ class DebugEditorGpuRendererAction extends EditorAction {
|
|
|
21
21
|
constructor() {
|
|
22
22
|
super({
|
|
23
23
|
id: 'editor.action.debugEditorGpuRenderer',
|
|
24
|
-
label: localize2(
|
|
24
|
+
label: localize2(1166, "Developer: Debug Editor GPU Renderer"),
|
|
25
25
|
// TODO: Why doesn't `ContextKeyExpr.equals('config:editor.experimentalGpuAcceleration', 'on')` work?
|
|
26
26
|
precondition: ContextKeyExpr.true(),
|
|
27
27
|
});
|
|
@@ -31,15 +31,15 @@ class DebugEditorGpuRendererAction extends EditorAction {
|
|
|
31
31
|
const quickInputService = accessor.get(IQuickInputService);
|
|
32
32
|
const choice = await quickInputService.pick([
|
|
33
33
|
{
|
|
34
|
-
label: localize(
|
|
34
|
+
label: localize(1163, "Log Texture Atlas Stats"),
|
|
35
35
|
id: 'logTextureAtlasStats',
|
|
36
36
|
},
|
|
37
37
|
{
|
|
38
|
-
label: localize(
|
|
38
|
+
label: localize(1164, "Save Texture Atlas"),
|
|
39
39
|
id: 'saveTextureAtlas',
|
|
40
40
|
},
|
|
41
41
|
{
|
|
42
|
-
label: localize(
|
|
42
|
+
label: localize(1165, "Draw Glyph"),
|
|
43
43
|
id: 'drawGlyph',
|
|
44
44
|
},
|
|
45
45
|
], { canPickMany: false });
|