@codingame/monaco-vscode-api 1.79.0-next.0 → 1.79.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +7 -5
- package/dist/activity.d.ts +8 -108
- package/dist/api.js +3 -3
- package/dist/colorRegistry.d.ts +2 -2
- package/dist/contextkey.d.ts +2 -2
- package/dist/default-extension.js +23 -0
- package/dist/editor.d.ts +4 -320
- package/dist/editorBrowser.d.ts +327 -10
- package/dist/event.d.ts +1 -1
- package/dist/{extension-tools-d0cfdea1.js → extension-tools-0c4c1ad7.js} +345 -210
- package/dist/extensions.d.ts +3 -4
- package/dist/extensions.d2.ts +1 -1
- package/dist/extensions.js +4 -37
- package/dist/extensionsRegistry.d.ts +1 -1
- package/dist/files.d.ts +2 -2
- package/dist/keybinding.d.ts +1 -1
- package/dist/languageFeatures.d.ts +6 -7
- package/dist/log.d.ts +1 -1
- package/dist/monaco-treemending.js +15 -1
- package/dist/monaco.d.ts +31 -32
- package/dist/monaco.js +62 -6
- package/dist/node_modules/rollup-plugin-styles/dist/runtime/inject-css.js +2 -0
- package/dist/override/vs/workbench/contrib/notebook/common/notebookEditorInput.js +4 -0
- package/dist/rollup-extension-directory-plugin.js +1 -2
- package/dist/rollup-vsix-plugin.js +1 -2
- package/dist/service-override/configuration.d.ts +2 -2
- package/dist/service-override/editor.d.ts +13 -0
- package/dist/service-override/{modelEditor.js → editor.js} +6 -62
- package/dist/service-override/files.d.ts +5 -5
- package/dist/service-override/files.js +14 -2
- package/dist/service-override/keybindings.js +3 -79
- package/dist/service-override/layout.js +6 -2
- package/dist/service-override/model.d.ts +7 -0
- package/dist/service-override/model.js +10 -0
- package/dist/service-override/quickaccess.d.ts +7 -0
- package/dist/service-override/quickaccess.js +80 -0
- package/dist/service-override/snippets.js +5 -1
- package/dist/service-override/textmate.js +7 -2
- package/dist/service-override/theme.d.ts +1 -1
- package/dist/service-override/tools/editor.js +73 -0
- package/dist/service-override/views.d.ts +63 -201
- package/dist/service-override/views.js +102 -8
- package/dist/services.d.ts +116 -19
- package/dist/vscode/vs/base/browser/ui/centered/centeredViewLayout.js +178 -0
- package/dist/vscode/vs/base/browser/ui/grid/grid.js +452 -0
- package/dist/vscode/vs/base/browser/ui/grid/gridview.css.js +4 -0
- package/dist/vscode/vs/base/browser/ui/grid/gridview.js +999 -0
- package/dist/vscode/vs/base/browser/ui/iconLabel/simpleIconLabel.js +14 -0
- package/dist/vscode/vs/base/browser/ui/menu/menubar.css.js +4 -0
- package/dist/vscode/vs/base/browser/ui/menu/menubar.js +1 -1
- package/dist/vscode/vs/base/browser/ui/splitview/paneview.css.js +4 -0
- package/dist/vscode/vs/base/browser/ui/splitview/paneview.js +1 -1
- package/dist/vscode/vs/platform/extensionManagement/common/extensionManagement.js +2 -1
- package/dist/vscode/vs/platform/extensionManagement/common/extensionStorage.js +1 -1
- package/dist/vscode/vs/platform/product/common/product.js +48 -0
- package/dist/vscode/vs/platform/quickinput/browser/quickPickPin.js +94 -0
- package/dist/vscode/vs/platform/terminal/common/terminal.js +3 -0
- package/dist/vscode/vs/platform/update/common/update.js +11 -1
- package/dist/vscode/vs/workbench/api/browser/mainThreadDocumentsAndEditors.js +1 -1
- package/dist/vscode/vs/workbench/api/browser/mainThreadStatusBar.js +68 -0
- package/dist/vscode/vs/workbench/api/common/extHostStatusBar.js +234 -0
- package/dist/vscode/vs/workbench/api/common/extHostTypes.js +6 -1
- package/dist/vscode/vs/workbench/browser/actions/layoutActions.js +20 -17
- package/dist/vscode/vs/workbench/browser/actions/quickAccessActions.js +204 -0
- package/dist/vscode/vs/workbench/browser/dnd.js +27 -2
- package/dist/vscode/vs/workbench/browser/editor.js +94 -0
- package/dist/vscode/vs/workbench/browser/labels.js +23 -2
- package/dist/vscode/vs/workbench/browser/media/part.css.js +4 -0
- package/dist/vscode/vs/workbench/browser/part.js +1 -1
- package/dist/vscode/vs/workbench/browser/parts/activitybar/activitybarActions.js +1 -1
- package/dist/vscode/vs/workbench/browser/parts/activitybar/activitybarPart.js +3 -3
- package/dist/vscode/vs/workbench/browser/parts/activitybar/media/activityaction.css.js +4 -0
- package/dist/vscode/vs/workbench/browser/parts/activitybar/media/activitybarpart.css.js +4 -0
- package/dist/vscode/vs/workbench/browser/parts/auxiliarybar/auxiliaryBarActions.js +14 -26
- package/dist/vscode/vs/workbench/browser/parts/compositePart.js +1 -1
- package/dist/vscode/vs/workbench/browser/parts/editor/binaryDiffEditor.js +43 -0
- package/dist/vscode/vs/workbench/browser/parts/editor/binaryEditor.js +55 -0
- package/dist/vscode/vs/workbench/browser/parts/editor/breadcrumbs.js +330 -0
- package/dist/vscode/vs/workbench/browser/parts/editor/breadcrumbsControl.js +690 -0
- package/dist/vscode/vs/workbench/browser/parts/editor/breadcrumbsModel.js +142 -0
- package/dist/vscode/vs/workbench/browser/parts/editor/breadcrumbsPicker.js +414 -0
- package/dist/vscode/vs/workbench/browser/parts/editor/editor.contribution.js +800 -6
- package/dist/vscode/vs/workbench/browser/parts/editor/editor.js +56 -1
- package/dist/vscode/vs/workbench/browser/parts/editor/editorActions.js +1484 -107
- package/dist/vscode/vs/workbench/browser/parts/editor/editorCommands.js +1121 -4
- package/dist/vscode/vs/workbench/browser/parts/editor/editorDropTarget.js +499 -0
- package/dist/vscode/vs/workbench/browser/parts/editor/editorGroupView.js +1219 -0
- package/dist/vscode/vs/workbench/browser/parts/editor/editorGroupWatermark.js +137 -0
- package/dist/vscode/vs/workbench/browser/parts/editor/editorPane.js +242 -0
- package/dist/vscode/vs/workbench/browser/parts/editor/editorPanes.js +297 -0
- package/dist/vscode/vs/workbench/browser/parts/editor/editorPart.js +841 -0
- package/dist/vscode/vs/workbench/browser/parts/editor/editorPlaceholder.js +235 -0
- package/dist/vscode/vs/workbench/browser/parts/editor/editorQuickAccess.js +1 -1
- package/dist/vscode/vs/workbench/browser/parts/editor/editorStatus.js +1152 -0
- package/dist/vscode/vs/workbench/browser/parts/editor/editorWithViewState.js +139 -0
- package/dist/vscode/vs/workbench/browser/parts/editor/editorsObserver.js +339 -0
- package/dist/vscode/vs/workbench/browser/parts/editor/media/breadcrumbscontrol.css.js +4 -0
- package/dist/vscode/vs/workbench/browser/parts/editor/media/editordroptarget.css.js +4 -0
- package/dist/vscode/vs/workbench/browser/parts/editor/media/editorgroupview.css.js +4 -0
- package/dist/vscode/vs/workbench/browser/parts/editor/media/editorplaceholder.css.js +4 -0
- package/dist/vscode/vs/workbench/browser/parts/editor/media/editorquickaccess.css.js +4 -0
- package/dist/vscode/vs/workbench/browser/parts/editor/media/editorstatus.css.js +4 -0
- package/dist/vscode/vs/workbench/browser/parts/editor/media/notabstitlecontrol.css.js +4 -0
- package/dist/vscode/vs/workbench/browser/parts/editor/media/sidebysideeditor.css.js +4 -0
- package/dist/vscode/vs/workbench/browser/parts/editor/media/tabstitlecontrol.css.js +4 -0
- package/dist/vscode/vs/workbench/browser/parts/editor/media/titlecontrol.css.js +4 -0
- package/dist/vscode/vs/workbench/browser/parts/editor/noTabsTitleControl.js +243 -0
- package/dist/vscode/vs/workbench/browser/parts/editor/sideBySideEditor.js +387 -0
- package/dist/vscode/vs/workbench/browser/parts/editor/tabFocus.js +77 -0
- package/dist/vscode/vs/workbench/browser/parts/editor/tabsTitleControl.js +1504 -0
- package/dist/vscode/vs/workbench/browser/parts/editor/textCodeEditor.js +79 -0
- package/dist/vscode/vs/workbench/browser/parts/editor/textDiffEditor.js +304 -0
- package/dist/vscode/vs/workbench/browser/parts/editor/textEditor.js +220 -0
- package/dist/vscode/vs/workbench/browser/parts/editor/textResourceEditor.js +149 -0
- package/dist/vscode/vs/workbench/browser/parts/editor/titleControl.js +284 -0
- package/dist/vscode/vs/workbench/browser/parts/media/compositepart.css.js +4 -0
- package/dist/vscode/vs/workbench/browser/parts/notifications/media/notificationsActions.css.js +4 -0
- package/dist/vscode/vs/workbench/browser/parts/notifications/media/notificationsCenter.css.js +4 -0
- package/dist/vscode/vs/workbench/browser/parts/notifications/media/notificationsList.css.js +4 -0
- package/dist/vscode/vs/workbench/browser/parts/notifications/media/notificationsToasts.css.js +4 -0
- package/dist/vscode/vs/workbench/browser/parts/notifications/notificationsActions.js +8 -8
- package/dist/vscode/vs/workbench/browser/parts/notifications/notificationsCenter.js +2 -2
- package/dist/vscode/vs/workbench/browser/parts/notifications/notificationsList.js +1 -1
- package/dist/vscode/vs/workbench/browser/parts/notifications/notificationsToasts.js +1 -1
- package/dist/vscode/vs/workbench/browser/parts/panel/media/basepanelpart.css.js +4 -0
- package/dist/vscode/vs/workbench/browser/parts/panel/media/panelpart.css.js +4 -0
- package/dist/vscode/vs/workbench/browser/parts/panel/panelActions.js +19 -5
- package/dist/vscode/vs/workbench/browser/parts/panel/panelPart.js +2 -2
- package/dist/vscode/vs/workbench/browser/parts/sidebar/media/sidebarpart.css.js +4 -0
- package/dist/vscode/vs/workbench/browser/parts/sidebar/sidebarPart.js +1 -1
- package/dist/vscode/vs/workbench/browser/parts/statusbar/media/statusbarpart.css.js +4 -0
- package/dist/vscode/vs/workbench/browser/parts/statusbar/statusbarActions.js +109 -0
- package/dist/vscode/vs/workbench/browser/parts/statusbar/statusbarItem.js +224 -0
- package/dist/vscode/vs/workbench/browser/parts/statusbar/statusbarModel.js +251 -0
- package/dist/vscode/vs/workbench/browser/parts/statusbar/statusbarPart.js +439 -0
- package/dist/vscode/vs/workbench/browser/parts/titlebar/media/menubarControl.css.js +4 -0
- package/dist/vscode/vs/workbench/browser/parts/titlebar/menubarControl.js +76 -3
- package/dist/vscode/vs/workbench/browser/parts/views/media/paneviewlet.css.js +4 -0
- package/dist/vscode/vs/workbench/browser/parts/views/media/views.css.js +4 -0
- package/dist/vscode/vs/workbench/browser/parts/views/treeView.js +1 -1
- package/dist/vscode/vs/workbench/browser/parts/views/viewPane.js +5 -5
- package/dist/vscode/vs/workbench/browser/parts/views/viewPaneContainer.js +1 -1
- package/dist/vscode/vs/workbench/browser/parts/views/viewsService.js +4 -4
- package/dist/vscode/vs/workbench/browser/quickaccess.js +6 -2
- package/dist/vscode/vs/workbench/browser/workbench.contribution.js +1108 -0
- package/dist/vscode/vs/workbench/common/contextkeys.js +34 -1
- package/dist/vscode/vs/workbench/common/editor/editorGroupModel.js +674 -0
- package/dist/vscode/vs/workbench/common/editor.js +57 -1
- package/dist/vscode/vs/workbench/common/theme.js +35 -35
- package/dist/vscode/vs/workbench/common/views.js +1 -1
- package/dist/vscode/vs/workbench/contrib/callHierarchy/browser/callHierarchy.contribution.js +4 -4
- package/dist/vscode/vs/workbench/contrib/callHierarchy/browser/callHierarchyPeek.js +1 -1
- package/dist/vscode/vs/workbench/contrib/callHierarchy/browser/media/callHierarchy.css.js +4 -0
- package/dist/vscode/vs/workbench/contrib/codeEditor/browser/quickaccess/gotoLineQuickAccess.js +77 -0
- package/dist/vscode/vs/workbench/contrib/codeEditor/browser/quickaccess/gotoSymbolQuickAccess.js +217 -0
- package/dist/vscode/vs/workbench/contrib/codeEditor/browser/workbenchReferenceSearch.js +24 -0
- package/dist/vscode/vs/workbench/contrib/debug/browser/breakpointWidget.js +1 -1
- package/dist/vscode/vs/workbench/contrib/debug/browser/callStackEditorContribution.js +1 -1
- package/dist/vscode/vs/workbench/contrib/debug/browser/debug.contribution.js +30 -4
- package/dist/vscode/vs/workbench/contrib/debug/browser/debugCommands.js +13 -1
- package/dist/vscode/vs/workbench/contrib/debug/browser/debugIcons.js +77 -127
- package/dist/vscode/vs/workbench/contrib/debug/browser/debugToolBar.js +1 -1
- package/dist/vscode/vs/workbench/contrib/debug/browser/debugViewlet.js +1 -1
- package/dist/vscode/vs/workbench/contrib/debug/browser/disassemblyView.js +620 -0
- package/dist/vscode/vs/workbench/contrib/debug/browser/exceptionWidget.js +1 -1
- package/dist/vscode/vs/workbench/contrib/debug/browser/media/breakpointWidget.css.js +4 -0
- package/dist/vscode/vs/workbench/contrib/debug/browser/media/callStackEditorContribution.css.js +4 -0
- package/dist/vscode/vs/workbench/contrib/debug/browser/media/debug.contribution.css.js +4 -0
- package/dist/vscode/vs/workbench/contrib/debug/browser/media/debugHover.css.js +4 -0
- package/dist/vscode/vs/workbench/contrib/debug/browser/media/debugToolBar.css.js +4 -0
- package/dist/vscode/vs/workbench/contrib/debug/browser/media/debugViewlet.css.js +4 -0
- package/dist/vscode/vs/workbench/contrib/debug/browser/media/exceptionWidget.css.js +4 -0
- package/dist/vscode/vs/workbench/contrib/debug/browser/media/repl.css.js +4 -0
- package/dist/vscode/vs/workbench/contrib/debug/browser/repl.js +1 -1
- package/dist/vscode/vs/workbench/contrib/debug/common/debug.js +2 -1
- package/dist/vscode/vs/workbench/contrib/files/browser/editors/binaryFileEditor.js +71 -0
- package/dist/vscode/vs/workbench/contrib/files/browser/editors/textFileEditor.js +225 -0
- package/dist/vscode/vs/workbench/contrib/files/browser/explorerViewlet.js +5 -4
- package/dist/vscode/vs/workbench/contrib/files/browser/fileActions.contribution.js +270 -4
- package/dist/vscode/vs/workbench/contrib/files/browser/fileActions.js +4 -1
- package/dist/vscode/vs/workbench/contrib/files/browser/fileCommands.js +24 -6
- package/dist/vscode/vs/workbench/contrib/files/browser/fileConstants.js +8 -1
- package/dist/vscode/vs/workbench/contrib/files/browser/files.contribution.js +10 -0
- package/dist/vscode/vs/workbench/contrib/files/browser/media/explorerviewlet.css.js +4 -0
- package/dist/vscode/vs/workbench/contrib/files/browser/views/media/openeditors.css.js +4 -0
- package/dist/vscode/vs/workbench/contrib/files/browser/views/openEditorsView.js +608 -0
- package/dist/vscode/vs/workbench/contrib/files/common/files.js +2 -1
- package/dist/vscode/vs/workbench/contrib/interactiveSession/browser/interactiveSessionInputPart.js +1 -1
- package/dist/vscode/vs/workbench/contrib/interactiveSession/browser/interactiveSessionWidget.js +1 -1
- package/dist/vscode/vs/workbench/contrib/interactiveSession/browser/media/interactiveSession.css.js +4 -0
- package/dist/vscode/vs/workbench/contrib/interactiveSession/common/interactiveSessionContextKeys.js +9 -1
- package/dist/vscode/vs/workbench/contrib/interactiveSession/common/interactiveSessionModel.js +305 -0
- package/dist/vscode/vs/workbench/contrib/interactiveSession/common/interactiveSessionService.js +6 -1
- package/dist/vscode/vs/workbench/contrib/interactiveSession/common/interactiveSessionServiceImpl.js +379 -0
- package/dist/vscode/vs/workbench/contrib/notebook/browser/notebookBrowser.js +2 -2
- package/dist/vscode/vs/workbench/contrib/quickaccess/browser/commandsQuickAccess.js +33 -1
- package/dist/vscode/vs/workbench/contrib/quickaccess/browser/quickAccess.contribution.js +130 -0
- package/dist/vscode/vs/workbench/contrib/quickaccess/browser/viewQuickAccess.js +225 -0
- package/dist/vscode/vs/workbench/contrib/remote/browser/media/tunnelView.css.js +4 -0
- package/dist/vscode/vs/workbench/contrib/remote/browser/remoteIcons.js +21 -17
- package/dist/vscode/vs/workbench/contrib/remote/browser/tunnelView.js +1 -1
- package/dist/vscode/vs/workbench/contrib/search/browser/anythingQuickAccess.js +757 -0
- package/dist/vscode/vs/workbench/contrib/search/browser/media/anythingQuickAccess.css.js +4 -0
- package/dist/vscode/vs/workbench/contrib/search/browser/search.contribution.js +428 -0
- package/dist/vscode/vs/workbench/contrib/search/browser/symbolsQuickAccess.js +219 -0
- package/dist/vscode/vs/workbench/contrib/search/common/cacheState.js +85 -0
- package/dist/vscode/vs/workbench/contrib/search/common/constants.js +2 -0
- package/dist/vscode/vs/workbench/contrib/search/common/search.js +119 -1
- package/dist/vscode/vs/workbench/contrib/tasks/browser/taskQuickPick.js +385 -0
- package/dist/vscode/vs/workbench/contrib/tasks/browser/tasksQuickAccess.js +108 -0
- package/dist/vscode/vs/workbench/contrib/tasks/common/tasks.js +351 -0
- package/dist/vscode/vs/workbench/contrib/terminal/browser/terminal.js +4 -0
- package/dist/vscode/vs/workbench/contrib/terminal/browser/terminalIcon.js +44 -0
- package/dist/vscode/vs/workbench/contrib/terminal/common/terminalColorRegistry.js +147 -1
- package/dist/vscode/vs/workbench/contrib/typeHierarchy/browser/media/typeHierarchy.css.js +4 -0
- package/dist/vscode/vs/workbench/contrib/typeHierarchy/browser/typeHierarchyPeek.js +1 -1
- package/dist/vscode/vs/workbench/services/editor/browser/editorDropService.js +3 -0
- package/dist/vscode/vs/workbench/services/editor/browser/editorResolverService.js +619 -0
- package/dist/vscode/vs/workbench/services/editor/browser/editorService.js +720 -0
- package/dist/vscode/vs/workbench/services/editor/common/editorGroupFinder.js +116 -0
- package/dist/vscode/vs/workbench/services/editor/common/editorGroupsService.js +6 -1
- package/dist/vscode/vs/workbench/services/editor/common/editorResolverService.js +34 -1
- package/dist/vscode/vs/workbench/services/history/browser/historyService.js +1451 -0
- package/dist/vscode/vs/workbench/services/hover/browser/hoverService.js +1 -1
- package/dist/vscode/vs/workbench/services/hover/browser/media/hover.css.js +4 -0
- package/dist/vscode/vs/workbench/services/languageDetection/common/languageDetectionWorkerService.js +2 -1
- package/dist/vscode/vs/workbench/services/outline/browser/outline.js +3 -0
- package/dist/vscode/vs/workbench/services/progress/browser/progressIndicator.js +72 -1
- package/dist/vscode/vs/workbench/services/quickinput/browser/quickInputService.js +67 -0
- package/dist/vscode/vs/workbench/services/search/common/search.js +2 -112
- package/dist/vscode/vs/workbench/services/semanticSimilarity/common/semanticSimilarityService.js +54 -1
- package/dist/vscode/vs/workbench/services/statusbar/browser/statusbar.js +15 -0
- package/dist/vscode/vs/workbench/services/textMate/browser/worker/textMate.worker.js +90 -0
- package/dist/vscode/vs/workbench/services/textMate/browser/worker/textMateWorkerModel.js +133 -0
- package/dist/vscode/vs/workbench/services/untitled/common/untitledTextEditorService.js +110 -3
- package/dist/vscode/vs/workbench/services/userDataProfile/common/userDataProfile.js +1 -1
- package/dist/vscode-services/extHost.js +12 -5
- package/dist/vscode-services/missing-services.js +117 -3
- package/dist/vscode-services/window.js +21 -2
- package/dist/vscode-services/workspace.js +2 -1
- package/dist/workbenchThemeService.d.ts +1 -1
- package/dist/workers/textMate.worker.d.ts +2 -0
- package/dist/workers/textMate.worker.js +3 -0
- package/dist/workspace.d.ts +1 -1
- package/monaco-editor-treemending.patch +784 -784
- package/package.json +42 -22
- package/dist/assets/activityaction.css +0 -224
- package/dist/assets/activitybarpart.css +0 -65
- package/dist/assets/basepanelpart.css +0 -221
- package/dist/assets/breakpointWidget.css +0 -31
- package/dist/assets/callHierarchy.css +0 -62
- package/dist/assets/callStackEditorContribution.css +0 -12
- package/dist/assets/compositepart.css +0 -17
- package/dist/assets/debug.contribution.css +0 -138
- package/dist/assets/debugHover.css +0 -80
- package/dist/assets/debugToolBar.css +0 -49
- package/dist/assets/debugViewlet.css +0 -337
- package/dist/assets/editorquickaccess.css +0 -8
- package/dist/assets/exceptionWidget.css +0 -52
- package/dist/assets/explorerviewlet.css +0 -129
- package/dist/assets/hover.css +0 -127
- package/dist/assets/interactiveSession.css +0 -340
- package/dist/assets/menubar.css +0 -111
- package/dist/assets/menubarControl.css +0 -61
- package/dist/assets/notificationsActions.css +0 -14
- package/dist/assets/notificationsCenter.css +0 -69
- package/dist/assets/notificationsList.css +0 -152
- package/dist/assets/notificationsToasts.css +0 -63
- package/dist/assets/panelpart.css +0 -75
- package/dist/assets/paneview.css +0 -148
- package/dist/assets/paneviewlet.css +0 -79
- package/dist/assets/part.css +0 -109
- package/dist/assets/repl.css +0 -145
- package/dist/assets/sidebarpart.css +0 -61
- package/dist/assets/tunnelView.css +0 -107
- package/dist/assets/typeHierarchy.css +0 -62
- package/dist/assets/views.css +0 -297
- package/dist/override/vs/workbench/browser/parts/editor/textEditor.js +0 -2
- package/dist/override/vs/workbench/contrib/files/browser/views/openEditorsView.js +0 -2
- package/dist/service-override/modelEditor.d.ts +0 -14
- package/dist/vscode/vs/workbench/contrib/notebook/common/notebookEditorInput.js +0 -249
- package/dist/vscode/vs/workbench/contrib/notebook/common/notebookService.js +0 -10
- package/dist/vscode/vs/workbench/services/search/common/searchHelpers.js +0 -72
- package/dist/vscode/vs/workbench/services/search/common/searchService.js +0 -355
|
@@ -2,12 +2,14 @@ import { __decorate, __param } from '../../../../../../node_modules/tslib/tslib.
|
|
|
2
2
|
import { localize } from 'monaco-editor/esm/vs/nls.js';
|
|
3
3
|
import { Action } from 'monaco-editor/esm/vs/base/common/actions.js';
|
|
4
4
|
import { firstOrDefault } from 'monaco-editor/esm/vs/base/common/arrays.js';
|
|
5
|
+
import { EditorResourceAccessor, DEFAULT_EDITOR_ASSOCIATION } from '../../../common/editor.js';
|
|
5
6
|
import { SideBySideEditorInput } from '../../../common/editor/sideBySideEditorInput.js';
|
|
7
|
+
import { IWorkbenchLayoutService } from '../../../services/layout/browser/layoutService.js';
|
|
6
8
|
import { IHistoryService } from '../../../services/history/common/history.js';
|
|
7
9
|
import { IKeybindingService } from 'monaco-editor/esm/vs/platform/keybinding/common/keybinding.js';
|
|
8
10
|
import { ICommandService } from 'monaco-editor/esm/vs/platform/commands/common/commands.js';
|
|
9
|
-
import { SPLIT_EDITOR_UP, SPLIT_EDITOR_DOWN, CLOSE_EDITOR_COMMAND_ID, UNPIN_EDITOR_COMMAND_ID, COPY_ACTIVE_EDITOR_COMMAND_ID, LAYOUT_EDITOR_GROUPS_COMMAND_ID, splitEditor } from './editorCommands.js';
|
|
10
|
-
import {
|
|
11
|
+
import { SPLIT_EDITOR_LEFT, SPLIT_EDITOR_RIGHT, SPLIT_EDITOR_UP, SPLIT_EDITOR_DOWN, CLOSE_EDITOR_COMMAND_ID, UNPIN_EDITOR_COMMAND_ID, MOVE_ACTIVE_EDITOR_COMMAND_ID, COPY_ACTIVE_EDITOR_COMMAND_ID, LAYOUT_EDITOR_GROUPS_COMMAND_ID, splitEditor } from './editorCommands.js';
|
|
12
|
+
import { preferredSideBySideGroupDirection, IEditorGroupsService } from '../../../services/editor/common/editorGroupsService.js';
|
|
11
13
|
import { IEditorService } from '../../../services/editor/common/editorService.js';
|
|
12
14
|
import { IConfigurationService } from 'monaco-editor/esm/vs/platform/configuration/common/configuration.js';
|
|
13
15
|
import { IWorkspacesService } from '../../../../platform/workspaces/common/workspaces.js';
|
|
@@ -17,11 +19,14 @@ import { ActiveGroupEditorsByMostRecentlyUsedQuickAccess, AllEditorsByAppearance
|
|
|
17
19
|
import { Codicon } from 'monaco-editor/esm/vs/base/common/codicons.js';
|
|
18
20
|
import { ThemeIcon } from 'monaco-editor/esm/vs/base/common/themables.js';
|
|
19
21
|
import { IFilesConfigurationService } from '../../../services/filesConfiguration/common/filesConfigurationService.js';
|
|
22
|
+
import { IEditorResolverService } from '../../../services/editor/common/editorResolverService.js';
|
|
20
23
|
import { isNative, isWindows, isLinux } from 'monaco-editor/esm/vs/base/common/platform.js';
|
|
21
24
|
import { Action2, MenuId } from 'monaco-editor/esm/vs/platform/actions/common/actions.js';
|
|
22
25
|
import { ContextKeyExpr } from 'monaco-editor/esm/vs/platform/contextkey/common/contextkey.js';
|
|
23
26
|
import { KeyChord } from 'monaco-editor/esm/vs/base/common/keyCodes.js';
|
|
27
|
+
import { ILogService } from 'monaco-editor/esm/vs/platform/log/common/log.js';
|
|
24
28
|
import { Categories } from 'monaco-editor/esm/vs/platform/action/common/actionCommonCategories.js';
|
|
29
|
+
import { ActiveEditorGroupEmptyContext, ActiveEditorAvailableEditorIdsContext } from '../../../common/contextkeys.js';
|
|
25
30
|
class ExecuteCommandAction extends Action2 {
|
|
26
31
|
constructor(desc, commandId, commandArgs) {
|
|
27
32
|
super(desc);
|
|
@@ -58,6 +63,52 @@ class SplitEditorAction extends AbstractSplitEditorAction {
|
|
|
58
63
|
}
|
|
59
64
|
}
|
|
60
65
|
SplitEditorAction.ID = 'workbench.action.splitEditor';
|
|
66
|
+
class SplitEditorOrthogonalAction extends AbstractSplitEditorAction {
|
|
67
|
+
constructor() {
|
|
68
|
+
super({
|
|
69
|
+
id: 'workbench.action.splitEditorOrthogonal',
|
|
70
|
+
title: { value: ( localize('splitEditorOrthogonal', "Split Editor Orthogonal")), original: 'Split Editor Orthogonal' },
|
|
71
|
+
f1: true,
|
|
72
|
+
keybinding: {
|
|
73
|
+
weight: 200 ,
|
|
74
|
+
primary: KeyChord(2048 | 41 , 2048 | 93 )
|
|
75
|
+
},
|
|
76
|
+
category: Categories.View
|
|
77
|
+
});
|
|
78
|
+
}
|
|
79
|
+
getDirection(configurationService) {
|
|
80
|
+
const direction = preferredSideBySideGroupDirection(configurationService);
|
|
81
|
+
return direction === 3 ? 1 : 3 ;
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
class SplitEditorLeftAction extends ExecuteCommandAction {
|
|
85
|
+
constructor() {
|
|
86
|
+
super({
|
|
87
|
+
id: SPLIT_EDITOR_LEFT,
|
|
88
|
+
title: { value: ( localize('splitEditorGroupLeft', "Split Editor Left")), original: 'Split Editor Left' },
|
|
89
|
+
f1: true,
|
|
90
|
+
keybinding: {
|
|
91
|
+
weight: 200 ,
|
|
92
|
+
primary: KeyChord(2048 | 41 , 2048 | 93 )
|
|
93
|
+
},
|
|
94
|
+
category: Categories.View
|
|
95
|
+
}, SPLIT_EDITOR_LEFT);
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
class SplitEditorRightAction extends ExecuteCommandAction {
|
|
99
|
+
constructor() {
|
|
100
|
+
super({
|
|
101
|
+
id: SPLIT_EDITOR_RIGHT,
|
|
102
|
+
title: { value: ( localize('splitEditorGroupRight', "Split Editor Right")), original: 'Split Editor Right' },
|
|
103
|
+
f1: true,
|
|
104
|
+
keybinding: {
|
|
105
|
+
weight: 200 ,
|
|
106
|
+
primary: KeyChord(2048 | 41 , 2048 | 93 )
|
|
107
|
+
},
|
|
108
|
+
category: Categories.View
|
|
109
|
+
}, SPLIT_EDITOR_RIGHT);
|
|
110
|
+
}
|
|
111
|
+
}
|
|
61
112
|
class SplitEditorUpAction extends ExecuteCommandAction {
|
|
62
113
|
constructor() {
|
|
63
114
|
super({
|
|
@@ -88,6 +139,190 @@ class SplitEditorDownAction extends ExecuteCommandAction {
|
|
|
88
139
|
}
|
|
89
140
|
}
|
|
90
141
|
SplitEditorDownAction.LABEL = ( localize('splitEditorGroupDown', "Split Editor Down"));
|
|
142
|
+
class JoinTwoGroupsAction extends Action2 {
|
|
143
|
+
constructor() {
|
|
144
|
+
super({
|
|
145
|
+
id: 'workbench.action.joinTwoGroups',
|
|
146
|
+
title: { value: ( localize('joinTwoGroups', "Join Editor Group with Next Group")), original: 'Join Editor Group with Next Group' },
|
|
147
|
+
f1: true,
|
|
148
|
+
category: Categories.View
|
|
149
|
+
});
|
|
150
|
+
}
|
|
151
|
+
async run(accessor, context) {
|
|
152
|
+
const editorGroupService = accessor.get(IEditorGroupsService);
|
|
153
|
+
let sourceGroup;
|
|
154
|
+
if (context && typeof context.groupId === 'number') {
|
|
155
|
+
sourceGroup = editorGroupService.getGroup(context.groupId);
|
|
156
|
+
}
|
|
157
|
+
else {
|
|
158
|
+
sourceGroup = editorGroupService.activeGroup;
|
|
159
|
+
}
|
|
160
|
+
if (sourceGroup) {
|
|
161
|
+
const targetGroupDirections = [3 , 1 , 2 , 0 ];
|
|
162
|
+
for (const targetGroupDirection of targetGroupDirections) {
|
|
163
|
+
const targetGroup = editorGroupService.findGroup({ direction: targetGroupDirection }, sourceGroup);
|
|
164
|
+
if (targetGroup && sourceGroup !== targetGroup) {
|
|
165
|
+
editorGroupService.mergeGroup(sourceGroup, targetGroup);
|
|
166
|
+
break;
|
|
167
|
+
}
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
}
|
|
172
|
+
class JoinAllGroupsAction extends Action2 {
|
|
173
|
+
constructor() {
|
|
174
|
+
super({
|
|
175
|
+
id: 'workbench.action.joinAllGroups',
|
|
176
|
+
title: { value: ( localize('joinAllGroups', "Join All Editor Groups")), original: 'Join All Editor Groups' },
|
|
177
|
+
f1: true,
|
|
178
|
+
category: Categories.View
|
|
179
|
+
});
|
|
180
|
+
}
|
|
181
|
+
async run(accessor) {
|
|
182
|
+
const editorGroupService = accessor.get(IEditorGroupsService);
|
|
183
|
+
editorGroupService.mergeAllGroups();
|
|
184
|
+
}
|
|
185
|
+
}
|
|
186
|
+
class NavigateBetweenGroupsAction extends Action2 {
|
|
187
|
+
constructor() {
|
|
188
|
+
super({
|
|
189
|
+
id: 'workbench.action.navigateEditorGroups',
|
|
190
|
+
title: { value: ( localize('navigateEditorGroups', "Navigate Between Editor Groups")), original: 'Navigate Between Editor Groups' },
|
|
191
|
+
f1: true,
|
|
192
|
+
category: Categories.View
|
|
193
|
+
});
|
|
194
|
+
}
|
|
195
|
+
async run(accessor) {
|
|
196
|
+
const editorGroupService = accessor.get(IEditorGroupsService);
|
|
197
|
+
const nextGroup = editorGroupService.findGroup({ location: 2 }, editorGroupService.activeGroup, true);
|
|
198
|
+
nextGroup?.focus();
|
|
199
|
+
}
|
|
200
|
+
}
|
|
201
|
+
class FocusActiveGroupAction extends Action2 {
|
|
202
|
+
constructor() {
|
|
203
|
+
super({
|
|
204
|
+
id: 'workbench.action.focusActiveEditorGroup',
|
|
205
|
+
title: { value: ( localize('focusActiveEditorGroup', "Focus Active Editor Group")), original: 'Focus Active Editor Group' },
|
|
206
|
+
f1: true,
|
|
207
|
+
category: Categories.View
|
|
208
|
+
});
|
|
209
|
+
}
|
|
210
|
+
async run(accessor) {
|
|
211
|
+
const editorGroupService = accessor.get(IEditorGroupsService);
|
|
212
|
+
editorGroupService.activeGroup.focus();
|
|
213
|
+
}
|
|
214
|
+
}
|
|
215
|
+
class AbstractFocusGroupAction extends Action2 {
|
|
216
|
+
constructor(desc, scope) {
|
|
217
|
+
super(desc);
|
|
218
|
+
this.scope = scope;
|
|
219
|
+
}
|
|
220
|
+
async run(accessor) {
|
|
221
|
+
const editorGroupService = accessor.get(IEditorGroupsService);
|
|
222
|
+
const group = editorGroupService.findGroup(this.scope, editorGroupService.activeGroup, true);
|
|
223
|
+
group?.focus();
|
|
224
|
+
}
|
|
225
|
+
}
|
|
226
|
+
class FocusFirstGroupAction extends AbstractFocusGroupAction {
|
|
227
|
+
constructor() {
|
|
228
|
+
super({
|
|
229
|
+
id: 'workbench.action.focusFirstEditorGroup',
|
|
230
|
+
title: { value: ( localize('focusFirstEditorGroup', "Focus First Editor Group")), original: 'Focus First Editor Group' },
|
|
231
|
+
f1: true,
|
|
232
|
+
keybinding: {
|
|
233
|
+
weight: 200 ,
|
|
234
|
+
primary: 2048 | 22
|
|
235
|
+
},
|
|
236
|
+
category: Categories.View
|
|
237
|
+
}, { location: 0 });
|
|
238
|
+
}
|
|
239
|
+
}
|
|
240
|
+
class FocusLastGroupAction extends AbstractFocusGroupAction {
|
|
241
|
+
constructor() {
|
|
242
|
+
super({
|
|
243
|
+
id: 'workbench.action.focusLastEditorGroup',
|
|
244
|
+
title: { value: ( localize('focusLastEditorGroup', "Focus Last Editor Group")), original: 'Focus Last Editor Group' },
|
|
245
|
+
f1: true,
|
|
246
|
+
category: Categories.View
|
|
247
|
+
}, { location: 1 });
|
|
248
|
+
}
|
|
249
|
+
}
|
|
250
|
+
class FocusNextGroup extends AbstractFocusGroupAction {
|
|
251
|
+
constructor() {
|
|
252
|
+
super({
|
|
253
|
+
id: 'workbench.action.focusNextGroup',
|
|
254
|
+
title: { value: ( localize('focusNextGroup', "Focus Next Editor Group")), original: 'Focus Next Editor Group' },
|
|
255
|
+
f1: true,
|
|
256
|
+
category: Categories.View
|
|
257
|
+
}, { location: 2 });
|
|
258
|
+
}
|
|
259
|
+
}
|
|
260
|
+
class FocusPreviousGroup extends AbstractFocusGroupAction {
|
|
261
|
+
constructor() {
|
|
262
|
+
super({
|
|
263
|
+
id: 'workbench.action.focusPreviousGroup',
|
|
264
|
+
title: { value: ( localize('focusPreviousGroup', "Focus Previous Editor Group")), original: 'Focus Previous Editor Group' },
|
|
265
|
+
f1: true,
|
|
266
|
+
category: Categories.View
|
|
267
|
+
}, { location: 3 });
|
|
268
|
+
}
|
|
269
|
+
}
|
|
270
|
+
class FocusLeftGroup extends AbstractFocusGroupAction {
|
|
271
|
+
constructor() {
|
|
272
|
+
super({
|
|
273
|
+
id: 'workbench.action.focusLeftGroup',
|
|
274
|
+
title: { value: ( localize('focusLeftGroup', "Focus Left Editor Group")), original: 'Focus Left Editor Group' },
|
|
275
|
+
f1: true,
|
|
276
|
+
keybinding: {
|
|
277
|
+
weight: 200 ,
|
|
278
|
+
primary: KeyChord(2048 | 41 , 2048 | 15 )
|
|
279
|
+
},
|
|
280
|
+
category: Categories.View
|
|
281
|
+
}, { direction: 2 });
|
|
282
|
+
}
|
|
283
|
+
}
|
|
284
|
+
class FocusRightGroup extends AbstractFocusGroupAction {
|
|
285
|
+
constructor() {
|
|
286
|
+
super({
|
|
287
|
+
id: 'workbench.action.focusRightGroup',
|
|
288
|
+
title: { value: ( localize('focusRightGroup', "Focus Right Editor Group")), original: 'Focus Right Editor Group' },
|
|
289
|
+
f1: true,
|
|
290
|
+
keybinding: {
|
|
291
|
+
weight: 200 ,
|
|
292
|
+
primary: KeyChord(2048 | 41 , 2048 | 17 )
|
|
293
|
+
},
|
|
294
|
+
category: Categories.View
|
|
295
|
+
}, { direction: 3 });
|
|
296
|
+
}
|
|
297
|
+
}
|
|
298
|
+
class FocusAboveGroup extends AbstractFocusGroupAction {
|
|
299
|
+
constructor() {
|
|
300
|
+
super({
|
|
301
|
+
id: 'workbench.action.focusAboveGroup',
|
|
302
|
+
title: { value: ( localize('focusAboveGroup', "Focus Editor Group Above")), original: 'Focus Editor Group Above' },
|
|
303
|
+
f1: true,
|
|
304
|
+
keybinding: {
|
|
305
|
+
weight: 200 ,
|
|
306
|
+
primary: KeyChord(2048 | 41 , 2048 | 16 )
|
|
307
|
+
},
|
|
308
|
+
category: Categories.View
|
|
309
|
+
}, { direction: 0 });
|
|
310
|
+
}
|
|
311
|
+
}
|
|
312
|
+
class FocusBelowGroup extends AbstractFocusGroupAction {
|
|
313
|
+
constructor() {
|
|
314
|
+
super({
|
|
315
|
+
id: 'workbench.action.focusBelowGroup',
|
|
316
|
+
title: { value: ( localize('focusBelowGroup', "Focus Editor Group Below")), original: 'Focus Editor Group Below' },
|
|
317
|
+
f1: true,
|
|
318
|
+
keybinding: {
|
|
319
|
+
weight: 200 ,
|
|
320
|
+
primary: KeyChord(2048 | 41 , 2048 | 18 )
|
|
321
|
+
},
|
|
322
|
+
category: Categories.View
|
|
323
|
+
}, { direction: 1 });
|
|
324
|
+
}
|
|
325
|
+
}
|
|
91
326
|
let CloseEditorAction = class CloseEditorAction extends Action {
|
|
92
327
|
constructor(id, label, commandService) {
|
|
93
328
|
super(id, label, ThemeIcon.asClassName(Codicon.close));
|
|
@@ -151,6 +386,56 @@ CloseOneEditorAction.LABEL = ( localize('closeOneEditor', "Close"));
|
|
|
151
386
|
CloseOneEditorAction = ( __decorate([
|
|
152
387
|
( __param(2, IEditorGroupsService))
|
|
153
388
|
], CloseOneEditorAction));
|
|
389
|
+
class RevertAndCloseEditorAction extends Action2 {
|
|
390
|
+
constructor() {
|
|
391
|
+
super({
|
|
392
|
+
id: 'workbench.action.revertAndCloseActiveEditor',
|
|
393
|
+
title: { value: ( localize('revertAndCloseActiveEditor', "Revert and Close Editor")), original: 'Revert and Close Editor' },
|
|
394
|
+
f1: true,
|
|
395
|
+
category: Categories.View
|
|
396
|
+
});
|
|
397
|
+
}
|
|
398
|
+
async run(accessor) {
|
|
399
|
+
const editorService = accessor.get(IEditorService);
|
|
400
|
+
const logService = accessor.get(ILogService);
|
|
401
|
+
const activeEditorPane = editorService.activeEditorPane;
|
|
402
|
+
if (activeEditorPane) {
|
|
403
|
+
const editor = activeEditorPane.input;
|
|
404
|
+
const group = activeEditorPane.group;
|
|
405
|
+
try {
|
|
406
|
+
await editorService.revert({ editor, groupId: group.id });
|
|
407
|
+
}
|
|
408
|
+
catch (error) {
|
|
409
|
+
logService.error(error);
|
|
410
|
+
await editorService.revert({ editor, groupId: group.id }, { soft: true });
|
|
411
|
+
}
|
|
412
|
+
await group.closeEditor(editor);
|
|
413
|
+
}
|
|
414
|
+
}
|
|
415
|
+
}
|
|
416
|
+
class CloseLeftEditorsInGroupAction extends Action2 {
|
|
417
|
+
constructor() {
|
|
418
|
+
super({
|
|
419
|
+
id: 'workbench.action.closeEditorsToTheLeft',
|
|
420
|
+
title: { value: ( localize('closeEditorsToTheLeft', "Close Editors to the Left in Group")), original: 'Close Editors to the Left in Group' },
|
|
421
|
+
f1: true,
|
|
422
|
+
category: Categories.View
|
|
423
|
+
});
|
|
424
|
+
}
|
|
425
|
+
async run(accessor, context) {
|
|
426
|
+
const editorGroupService = accessor.get(IEditorGroupsService);
|
|
427
|
+
const { group, editor } = this.getTarget(editorGroupService, context);
|
|
428
|
+
if (group && editor) {
|
|
429
|
+
await group.closeEditors({ direction: 0 , except: editor, excludeSticky: true });
|
|
430
|
+
}
|
|
431
|
+
}
|
|
432
|
+
getTarget(editorGroupService, context) {
|
|
433
|
+
if (context) {
|
|
434
|
+
return { editor: context.editor, group: editorGroupService.getGroup(context.groupId) };
|
|
435
|
+
}
|
|
436
|
+
return { group: editorGroupService.activeGroup, editor: editorGroupService.activeGroup.activeEditor };
|
|
437
|
+
}
|
|
438
|
+
}
|
|
154
439
|
class AbstractCloseAllAction extends Action2 {
|
|
155
440
|
groupsToClose(editorGroupService) {
|
|
156
441
|
const groupsToClose = [];
|
|
@@ -284,97 +569,937 @@ class CloseAllEditorsAction extends AbstractCloseAllAction {
|
|
|
284
569
|
}
|
|
285
570
|
CloseAllEditorsAction.ID = 'workbench.action.closeAllEditors';
|
|
286
571
|
CloseAllEditorsAction.LABEL = { value: ( localize('closeAllEditors', "Close All Editors")), original: 'Close All Editors' };
|
|
287
|
-
class
|
|
572
|
+
class CloseAllEditorGroupsAction extends AbstractCloseAllAction {
|
|
288
573
|
constructor() {
|
|
289
574
|
super({
|
|
290
|
-
id:
|
|
291
|
-
title: { value: ( localize('
|
|
575
|
+
id: 'workbench.action.closeAllGroups',
|
|
576
|
+
title: { value: ( localize('closeAllGroups', "Close All Editor Groups")), original: 'Close All Editor Groups' },
|
|
292
577
|
f1: true,
|
|
293
|
-
icon: Codicon.arrowRight,
|
|
294
|
-
precondition: ( ContextKeyExpr.has('canNavigateForward')),
|
|
295
578
|
keybinding: {
|
|
296
579
|
weight: 200 ,
|
|
297
|
-
|
|
298
|
-
mac: { primary: 256 | 1024 | 88 },
|
|
299
|
-
linux: { primary: 2048 | 1024 | 88 }
|
|
580
|
+
primary: KeyChord(2048 | 41 , 2048 | 1024 | 53 )
|
|
300
581
|
},
|
|
301
|
-
|
|
302
|
-
{ id: MenuId.MenubarGoMenu, group: '1_history_nav', order: 2 },
|
|
303
|
-
{ id: MenuId.CommandCenter, order: 2 }
|
|
304
|
-
]
|
|
582
|
+
category: Categories.View
|
|
305
583
|
});
|
|
306
584
|
}
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
585
|
+
get excludeSticky() {
|
|
586
|
+
return false;
|
|
587
|
+
}
|
|
588
|
+
async doCloseAll(editorGroupService) {
|
|
589
|
+
await super.doCloseAll(editorGroupService);
|
|
590
|
+
for (const groupToClose of this.groupsToClose(editorGroupService)) {
|
|
591
|
+
editorGroupService.removeGroup(groupToClose);
|
|
592
|
+
}
|
|
310
593
|
}
|
|
311
594
|
}
|
|
312
|
-
|
|
313
|
-
NavigateForwardAction.LABEL = ( localize('navigateForward', "Go Forward"));
|
|
314
|
-
class NavigateBackwardsAction extends Action2 {
|
|
595
|
+
class CloseEditorsInOtherGroupsAction extends Action2 {
|
|
315
596
|
constructor() {
|
|
316
597
|
super({
|
|
317
|
-
id:
|
|
318
|
-
title: { value: ( localize('
|
|
598
|
+
id: 'workbench.action.closeEditorsInOtherGroups',
|
|
599
|
+
title: { value: ( localize('closeEditorsInOtherGroups', "Close Editors in Other Groups")), original: 'Close Editors in Other Groups' },
|
|
319
600
|
f1: true,
|
|
320
|
-
|
|
321
|
-
icon: Codicon.arrowLeft,
|
|
322
|
-
keybinding: {
|
|
323
|
-
weight: 200 ,
|
|
324
|
-
win: { primary: 512 | 15 },
|
|
325
|
-
mac: { primary: 256 | 88 },
|
|
326
|
-
linux: { primary: 2048 | 512 | 88 }
|
|
327
|
-
},
|
|
328
|
-
menu: [
|
|
329
|
-
{ id: MenuId.MenubarGoMenu, group: '1_history_nav', order: 1 },
|
|
330
|
-
{ id: MenuId.CommandCenter, order: 1 }
|
|
331
|
-
]
|
|
601
|
+
category: Categories.View
|
|
332
602
|
});
|
|
333
603
|
}
|
|
334
|
-
async run(accessor) {
|
|
335
|
-
const
|
|
336
|
-
|
|
604
|
+
async run(accessor, context) {
|
|
605
|
+
const editorGroupService = accessor.get(IEditorGroupsService);
|
|
606
|
+
const groupToSkip = context ? editorGroupService.getGroup(context.groupId) : editorGroupService.activeGroup;
|
|
607
|
+
await Promise.all(( editorGroupService.getGroups(1 ).map(async (group) => {
|
|
608
|
+
if (groupToSkip && group.id === groupToSkip.id) {
|
|
609
|
+
return;
|
|
610
|
+
}
|
|
611
|
+
return group.closeAllEditors({ excludeSticky: true });
|
|
612
|
+
})));
|
|
337
613
|
}
|
|
338
614
|
}
|
|
339
|
-
|
|
340
|
-
NavigateBackwardsAction.LABEL = ( localize('navigateBack', "Go Back"));
|
|
341
|
-
class ReopenClosedEditorAction extends Action2 {
|
|
615
|
+
class CloseEditorInAllGroupsAction extends Action2 {
|
|
342
616
|
constructor() {
|
|
343
617
|
super({
|
|
344
|
-
id:
|
|
345
|
-
title: { value: ( localize('
|
|
618
|
+
id: 'workbench.action.closeEditorInAllGroups',
|
|
619
|
+
title: { value: ( localize('closeEditorInAllGroups', "Close Editor in All Groups")), original: 'Close Editor in All Groups' },
|
|
346
620
|
f1: true,
|
|
347
|
-
keybinding: {
|
|
348
|
-
weight: 200 ,
|
|
349
|
-
primary: 2048 | 1024 | 50
|
|
350
|
-
},
|
|
351
621
|
category: Categories.View
|
|
352
622
|
});
|
|
353
623
|
}
|
|
354
624
|
async run(accessor) {
|
|
355
|
-
const
|
|
356
|
-
|
|
625
|
+
const editorService = accessor.get(IEditorService);
|
|
626
|
+
const editorGroupService = accessor.get(IEditorGroupsService);
|
|
627
|
+
const activeEditor = editorService.activeEditor;
|
|
628
|
+
if (activeEditor) {
|
|
629
|
+
await Promise.all(( editorGroupService.getGroups(1 ).map(group => group.closeEditor(activeEditor))));
|
|
630
|
+
}
|
|
357
631
|
}
|
|
358
632
|
}
|
|
359
|
-
|
|
360
|
-
|
|
633
|
+
class AbstractMoveCopyGroupAction extends Action2 {
|
|
634
|
+
constructor(desc, direction, isMove) {
|
|
635
|
+
super(desc);
|
|
636
|
+
this.direction = direction;
|
|
637
|
+
this.isMove = isMove;
|
|
638
|
+
}
|
|
639
|
+
async run(accessor, context) {
|
|
640
|
+
const editorGroupService = accessor.get(IEditorGroupsService);
|
|
641
|
+
let sourceGroup;
|
|
642
|
+
if (context && typeof context.groupId === 'number') {
|
|
643
|
+
sourceGroup = editorGroupService.getGroup(context.groupId);
|
|
644
|
+
}
|
|
645
|
+
else {
|
|
646
|
+
sourceGroup = editorGroupService.activeGroup;
|
|
647
|
+
}
|
|
648
|
+
if (sourceGroup) {
|
|
649
|
+
let resultGroup = undefined;
|
|
650
|
+
if (this.isMove) {
|
|
651
|
+
const targetGroup = this.findTargetGroup(editorGroupService, sourceGroup);
|
|
652
|
+
if (targetGroup) {
|
|
653
|
+
resultGroup = editorGroupService.moveGroup(sourceGroup, targetGroup, this.direction);
|
|
654
|
+
}
|
|
655
|
+
}
|
|
656
|
+
else {
|
|
657
|
+
resultGroup = editorGroupService.copyGroup(sourceGroup, sourceGroup, this.direction);
|
|
658
|
+
}
|
|
659
|
+
if (resultGroup) {
|
|
660
|
+
editorGroupService.activateGroup(resultGroup);
|
|
661
|
+
}
|
|
662
|
+
}
|
|
663
|
+
}
|
|
664
|
+
findTargetGroup(editorGroupService, sourceGroup) {
|
|
665
|
+
const targetNeighbours = [this.direction];
|
|
666
|
+
switch (this.direction) {
|
|
667
|
+
case 2 :
|
|
668
|
+
case 3 :
|
|
669
|
+
targetNeighbours.push(0 , 1 );
|
|
670
|
+
break;
|
|
671
|
+
case 0 :
|
|
672
|
+
case 1 :
|
|
673
|
+
targetNeighbours.push(2 , 3 );
|
|
674
|
+
break;
|
|
675
|
+
}
|
|
676
|
+
for (const targetNeighbour of targetNeighbours) {
|
|
677
|
+
const targetNeighbourGroup = editorGroupService.findGroup({ direction: targetNeighbour }, sourceGroup);
|
|
678
|
+
if (targetNeighbourGroup) {
|
|
679
|
+
return targetNeighbourGroup;
|
|
680
|
+
}
|
|
681
|
+
}
|
|
682
|
+
return undefined;
|
|
683
|
+
}
|
|
684
|
+
}
|
|
685
|
+
class AbstractMoveGroupAction extends AbstractMoveCopyGroupAction {
|
|
686
|
+
constructor(desc, direction) {
|
|
687
|
+
super(desc, direction, true);
|
|
688
|
+
}
|
|
689
|
+
}
|
|
690
|
+
class MoveGroupLeftAction extends AbstractMoveGroupAction {
|
|
691
|
+
constructor() {
|
|
692
|
+
super({
|
|
693
|
+
id: 'workbench.action.moveActiveEditorGroupLeft',
|
|
694
|
+
title: { value: ( localize('moveActiveGroupLeft', "Move Editor Group Left")), original: 'Move Editor Group Left' },
|
|
695
|
+
f1: true,
|
|
696
|
+
keybinding: {
|
|
697
|
+
weight: 200 ,
|
|
698
|
+
primary: KeyChord(2048 | 41 , 15 )
|
|
699
|
+
},
|
|
700
|
+
category: Categories.View
|
|
701
|
+
}, 2 );
|
|
702
|
+
}
|
|
703
|
+
}
|
|
704
|
+
class MoveGroupRightAction extends AbstractMoveGroupAction {
|
|
705
|
+
constructor() {
|
|
706
|
+
super({
|
|
707
|
+
id: 'workbench.action.moveActiveEditorGroupRight',
|
|
708
|
+
title: { value: ( localize('moveActiveGroupRight', "Move Editor Group Right")), original: 'Move Editor Group Right' },
|
|
709
|
+
f1: true,
|
|
710
|
+
keybinding: {
|
|
711
|
+
weight: 200 ,
|
|
712
|
+
primary: KeyChord(2048 | 41 , 17 )
|
|
713
|
+
},
|
|
714
|
+
category: Categories.View
|
|
715
|
+
}, 3 );
|
|
716
|
+
}
|
|
717
|
+
}
|
|
718
|
+
class MoveGroupUpAction extends AbstractMoveGroupAction {
|
|
719
|
+
constructor() {
|
|
720
|
+
super({
|
|
721
|
+
id: 'workbench.action.moveActiveEditorGroupUp',
|
|
722
|
+
title: { value: ( localize('moveActiveGroupUp', "Move Editor Group Up")), original: 'Move Editor Group Up' },
|
|
723
|
+
f1: true,
|
|
724
|
+
keybinding: {
|
|
725
|
+
weight: 200 ,
|
|
726
|
+
primary: KeyChord(2048 | 41 , 16 )
|
|
727
|
+
},
|
|
728
|
+
category: Categories.View
|
|
729
|
+
}, 0 );
|
|
730
|
+
}
|
|
731
|
+
}
|
|
732
|
+
class MoveGroupDownAction extends AbstractMoveGroupAction {
|
|
733
|
+
constructor() {
|
|
734
|
+
super({
|
|
735
|
+
id: 'workbench.action.moveActiveEditorGroupDown',
|
|
736
|
+
title: { value: ( localize('moveActiveGroupDown', "Move Editor Group Down")), original: 'Move Editor Group Down' },
|
|
737
|
+
f1: true,
|
|
738
|
+
keybinding: {
|
|
739
|
+
weight: 200 ,
|
|
740
|
+
primary: KeyChord(2048 | 41 , 18 )
|
|
741
|
+
},
|
|
742
|
+
category: Categories.View
|
|
743
|
+
}, 1 );
|
|
744
|
+
}
|
|
745
|
+
}
|
|
746
|
+
class AbstractDuplicateGroupAction extends AbstractMoveCopyGroupAction {
|
|
747
|
+
constructor(desc, direction) {
|
|
748
|
+
super(desc, direction, false);
|
|
749
|
+
}
|
|
750
|
+
}
|
|
751
|
+
class DuplicateGroupLeftAction extends AbstractDuplicateGroupAction {
|
|
752
|
+
constructor() {
|
|
753
|
+
super({
|
|
754
|
+
id: 'workbench.action.duplicateActiveEditorGroupLeft',
|
|
755
|
+
title: { value: ( localize('duplicateActiveGroupLeft', "Duplicate Editor Group Left")), original: 'Duplicate Editor Group Left' },
|
|
756
|
+
f1: true,
|
|
757
|
+
category: Categories.View
|
|
758
|
+
}, 2 );
|
|
759
|
+
}
|
|
760
|
+
}
|
|
761
|
+
class DuplicateGroupRightAction extends AbstractDuplicateGroupAction {
|
|
762
|
+
constructor() {
|
|
763
|
+
super({
|
|
764
|
+
id: 'workbench.action.duplicateActiveEditorGroupRight',
|
|
765
|
+
title: { value: ( localize('duplicateActiveGroupRight', "Duplicate Editor Group Right")), original: 'Duplicate Editor Group Right' },
|
|
766
|
+
f1: true,
|
|
767
|
+
category: Categories.View
|
|
768
|
+
}, 3 );
|
|
769
|
+
}
|
|
770
|
+
}
|
|
771
|
+
class DuplicateGroupUpAction extends AbstractDuplicateGroupAction {
|
|
772
|
+
constructor() {
|
|
773
|
+
super({
|
|
774
|
+
id: 'workbench.action.duplicateActiveEditorGroupUp',
|
|
775
|
+
title: { value: ( localize('duplicateActiveGroupUp', "Duplicate Editor Group Up")), original: 'Duplicate Editor Group Up' },
|
|
776
|
+
f1: true,
|
|
777
|
+
category: Categories.View
|
|
778
|
+
}, 0 );
|
|
779
|
+
}
|
|
780
|
+
}
|
|
781
|
+
class DuplicateGroupDownAction extends AbstractDuplicateGroupAction {
|
|
782
|
+
constructor() {
|
|
783
|
+
super({
|
|
784
|
+
id: 'workbench.action.duplicateActiveEditorGroupDown',
|
|
785
|
+
title: { value: ( localize('duplicateActiveGroupDown', "Duplicate Editor Group Down")), original: 'Duplicate Editor Group Down' },
|
|
786
|
+
f1: true,
|
|
787
|
+
category: Categories.View
|
|
788
|
+
}, 1 );
|
|
789
|
+
}
|
|
790
|
+
}
|
|
791
|
+
class MinimizeOtherGroupsAction extends Action2 {
|
|
792
|
+
constructor() {
|
|
793
|
+
super({
|
|
794
|
+
id: 'workbench.action.minimizeOtherEditors',
|
|
795
|
+
title: { value: ( localize('minimizeOtherEditorGroups', "Maximize Editor Group")), original: 'Maximize Editor Group' },
|
|
796
|
+
f1: true,
|
|
797
|
+
category: Categories.View
|
|
798
|
+
});
|
|
799
|
+
}
|
|
800
|
+
async run(accessor) {
|
|
801
|
+
const editorGroupService = accessor.get(IEditorGroupsService);
|
|
802
|
+
editorGroupService.arrangeGroups(0 );
|
|
803
|
+
}
|
|
804
|
+
}
|
|
805
|
+
class ResetGroupSizesAction extends Action2 {
|
|
806
|
+
constructor() {
|
|
807
|
+
super({
|
|
808
|
+
id: 'workbench.action.evenEditorWidths',
|
|
809
|
+
title: { value: ( localize('evenEditorGroups', "Reset Editor Group Sizes")), original: 'Reset Editor Group Sizes' },
|
|
810
|
+
f1: true,
|
|
811
|
+
category: Categories.View
|
|
812
|
+
});
|
|
813
|
+
}
|
|
814
|
+
async run(accessor) {
|
|
815
|
+
const editorGroupService = accessor.get(IEditorGroupsService);
|
|
816
|
+
editorGroupService.arrangeGroups(1 );
|
|
817
|
+
}
|
|
818
|
+
}
|
|
819
|
+
class ToggleGroupSizesAction extends Action2 {
|
|
820
|
+
constructor() {
|
|
821
|
+
super({
|
|
822
|
+
id: 'workbench.action.toggleEditorWidths',
|
|
823
|
+
title: { value: ( localize('toggleEditorWidths', "Toggle Editor Group Sizes")), original: 'Toggle Editor Group Sizes' },
|
|
824
|
+
f1: true,
|
|
825
|
+
category: Categories.View
|
|
826
|
+
});
|
|
827
|
+
}
|
|
828
|
+
async run(accessor) {
|
|
829
|
+
const editorGroupService = accessor.get(IEditorGroupsService);
|
|
830
|
+
editorGroupService.arrangeGroups(2 );
|
|
831
|
+
}
|
|
832
|
+
}
|
|
833
|
+
class MaximizeGroupAction extends Action2 {
|
|
834
|
+
constructor() {
|
|
835
|
+
super({
|
|
836
|
+
id: 'workbench.action.maximizeEditor',
|
|
837
|
+
title: { value: ( localize('maximizeEditor', "Maximize Editor Group and Hide Side Bars")), original: 'Maximize Editor Group and Hide Side Bars' },
|
|
838
|
+
f1: true,
|
|
839
|
+
category: Categories.View
|
|
840
|
+
});
|
|
841
|
+
}
|
|
842
|
+
async run(accessor) {
|
|
843
|
+
const layoutService = accessor.get(IWorkbenchLayoutService);
|
|
844
|
+
const editorGroupService = accessor.get(IEditorGroupsService);
|
|
845
|
+
const editorService = accessor.get(IEditorService);
|
|
846
|
+
if (editorService.activeEditor) {
|
|
847
|
+
layoutService.setPartHidden(true, "workbench.parts.sidebar" );
|
|
848
|
+
layoutService.setPartHidden(true, "workbench.parts.auxiliarybar" );
|
|
849
|
+
editorGroupService.arrangeGroups(0 );
|
|
850
|
+
}
|
|
851
|
+
}
|
|
852
|
+
}
|
|
853
|
+
class AbstractNavigateEditorAction extends Action2 {
|
|
854
|
+
async run(accessor) {
|
|
855
|
+
const editorGroupService = accessor.get(IEditorGroupsService);
|
|
856
|
+
const result = this.navigate(editorGroupService);
|
|
857
|
+
if (!result) {
|
|
858
|
+
return;
|
|
859
|
+
}
|
|
860
|
+
const { groupId, editor } = result;
|
|
861
|
+
if (!editor) {
|
|
862
|
+
return;
|
|
863
|
+
}
|
|
864
|
+
const group = editorGroupService.getGroup(groupId);
|
|
865
|
+
if (group) {
|
|
866
|
+
await group.openEditor(editor);
|
|
867
|
+
}
|
|
868
|
+
}
|
|
869
|
+
}
|
|
870
|
+
class OpenNextEditor extends AbstractNavigateEditorAction {
|
|
871
|
+
constructor() {
|
|
872
|
+
super({
|
|
873
|
+
id: 'workbench.action.nextEditor',
|
|
874
|
+
title: { value: ( localize('openNextEditor', "Open Next Editor")), original: 'Open Next Editor' },
|
|
875
|
+
f1: true,
|
|
876
|
+
keybinding: {
|
|
877
|
+
weight: 200 ,
|
|
878
|
+
primary: 2048 | 12 ,
|
|
879
|
+
mac: {
|
|
880
|
+
primary: 2048 | 512 | 17 ,
|
|
881
|
+
secondary: [2048 | 1024 | 94 ]
|
|
882
|
+
}
|
|
883
|
+
},
|
|
884
|
+
category: Categories.View
|
|
885
|
+
});
|
|
886
|
+
}
|
|
887
|
+
navigate(editorGroupService) {
|
|
888
|
+
const activeGroup = editorGroupService.activeGroup;
|
|
889
|
+
const activeGroupEditors = activeGroup.getEditors(1 );
|
|
890
|
+
const activeEditorIndex = activeGroup.activeEditor ? activeGroupEditors.indexOf(activeGroup.activeEditor) : -1;
|
|
891
|
+
if (activeEditorIndex + 1 < activeGroupEditors.length) {
|
|
892
|
+
return { editor: activeGroupEditors[activeEditorIndex + 1], groupId: activeGroup.id };
|
|
893
|
+
}
|
|
894
|
+
const handledGroups = ( new Set());
|
|
895
|
+
let currentGroup = editorGroupService.activeGroup;
|
|
896
|
+
while (currentGroup && !( handledGroups.has(currentGroup.id))) {
|
|
897
|
+
currentGroup = editorGroupService.findGroup({ location: 2 }, currentGroup, true);
|
|
898
|
+
if (currentGroup) {
|
|
899
|
+
handledGroups.add(currentGroup.id);
|
|
900
|
+
const groupEditors = currentGroup.getEditors(1 );
|
|
901
|
+
if (groupEditors.length > 0) {
|
|
902
|
+
return { editor: groupEditors[0], groupId: currentGroup.id };
|
|
903
|
+
}
|
|
904
|
+
}
|
|
905
|
+
}
|
|
906
|
+
return undefined;
|
|
907
|
+
}
|
|
908
|
+
}
|
|
909
|
+
class OpenPreviousEditor extends AbstractNavigateEditorAction {
|
|
910
|
+
constructor() {
|
|
911
|
+
super({
|
|
912
|
+
id: 'workbench.action.previousEditor',
|
|
913
|
+
title: { value: ( localize('openPreviousEditor', "Open Previous Editor")), original: 'Open Previous Editor' },
|
|
914
|
+
f1: true,
|
|
915
|
+
keybinding: {
|
|
916
|
+
weight: 200 ,
|
|
917
|
+
primary: 2048 | 11 ,
|
|
918
|
+
mac: {
|
|
919
|
+
primary: 2048 | 512 | 15 ,
|
|
920
|
+
secondary: [2048 | 1024 | 92 ]
|
|
921
|
+
}
|
|
922
|
+
},
|
|
923
|
+
category: Categories.View
|
|
924
|
+
});
|
|
925
|
+
}
|
|
926
|
+
navigate(editorGroupService) {
|
|
927
|
+
const activeGroup = editorGroupService.activeGroup;
|
|
928
|
+
const activeGroupEditors = activeGroup.getEditors(1 );
|
|
929
|
+
const activeEditorIndex = activeGroup.activeEditor ? activeGroupEditors.indexOf(activeGroup.activeEditor) : -1;
|
|
930
|
+
if (activeEditorIndex > 0) {
|
|
931
|
+
return { editor: activeGroupEditors[activeEditorIndex - 1], groupId: activeGroup.id };
|
|
932
|
+
}
|
|
933
|
+
const handledGroups = ( new Set());
|
|
934
|
+
let currentGroup = editorGroupService.activeGroup;
|
|
935
|
+
while (currentGroup && !( handledGroups.has(currentGroup.id))) {
|
|
936
|
+
currentGroup = editorGroupService.findGroup({ location: 3 }, currentGroup, true);
|
|
937
|
+
if (currentGroup) {
|
|
938
|
+
handledGroups.add(currentGroup.id);
|
|
939
|
+
const groupEditors = currentGroup.getEditors(1 );
|
|
940
|
+
if (groupEditors.length > 0) {
|
|
941
|
+
return { editor: groupEditors[groupEditors.length - 1], groupId: currentGroup.id };
|
|
942
|
+
}
|
|
943
|
+
}
|
|
944
|
+
}
|
|
945
|
+
return undefined;
|
|
946
|
+
}
|
|
947
|
+
}
|
|
948
|
+
class OpenNextEditorInGroup extends AbstractNavigateEditorAction {
|
|
949
|
+
constructor() {
|
|
950
|
+
super({
|
|
951
|
+
id: 'workbench.action.nextEditorInGroup',
|
|
952
|
+
title: { value: ( localize('nextEditorInGroup', "Open Next Editor in Group")), original: 'Open Next Editor in Group' },
|
|
953
|
+
f1: true,
|
|
954
|
+
keybinding: {
|
|
955
|
+
weight: 200 ,
|
|
956
|
+
primary: KeyChord(2048 | 41 , 2048 | 12 ),
|
|
957
|
+
mac: {
|
|
958
|
+
primary: KeyChord(2048 | 41 , 2048 | 512 | 17 )
|
|
959
|
+
}
|
|
960
|
+
},
|
|
961
|
+
category: Categories.View
|
|
962
|
+
});
|
|
963
|
+
}
|
|
964
|
+
navigate(editorGroupService) {
|
|
965
|
+
const group = editorGroupService.activeGroup;
|
|
966
|
+
const editors = group.getEditors(1 );
|
|
967
|
+
const index = group.activeEditor ? editors.indexOf(group.activeEditor) : -1;
|
|
968
|
+
return { editor: index + 1 < editors.length ? editors[index + 1] : editors[0], groupId: group.id };
|
|
969
|
+
}
|
|
970
|
+
}
|
|
971
|
+
class OpenPreviousEditorInGroup extends AbstractNavigateEditorAction {
|
|
972
|
+
constructor() {
|
|
973
|
+
super({
|
|
974
|
+
id: 'workbench.action.previousEditorInGroup',
|
|
975
|
+
title: { value: ( localize('openPreviousEditorInGroup', "Open Previous Editor in Group")), original: 'Open Previous Editor in Group' },
|
|
976
|
+
f1: true,
|
|
977
|
+
keybinding: {
|
|
978
|
+
weight: 200 ,
|
|
979
|
+
primary: KeyChord(2048 | 41 , 2048 | 11 ),
|
|
980
|
+
mac: {
|
|
981
|
+
primary: KeyChord(2048 | 41 , 2048 | 512 | 15 )
|
|
982
|
+
}
|
|
983
|
+
},
|
|
984
|
+
category: Categories.View
|
|
985
|
+
});
|
|
986
|
+
}
|
|
987
|
+
navigate(editorGroupService) {
|
|
988
|
+
const group = editorGroupService.activeGroup;
|
|
989
|
+
const editors = group.getEditors(1 );
|
|
990
|
+
const index = group.activeEditor ? editors.indexOf(group.activeEditor) : -1;
|
|
991
|
+
return { editor: index > 0 ? editors[index - 1] : editors[editors.length - 1], groupId: group.id };
|
|
992
|
+
}
|
|
993
|
+
}
|
|
994
|
+
class OpenFirstEditorInGroup extends AbstractNavigateEditorAction {
|
|
995
|
+
constructor() {
|
|
996
|
+
super({
|
|
997
|
+
id: 'workbench.action.firstEditorInGroup',
|
|
998
|
+
title: { value: ( localize('firstEditorInGroup', "Open First Editor in Group")), original: 'Open First Editor in Group' },
|
|
999
|
+
f1: true,
|
|
1000
|
+
category: Categories.View
|
|
1001
|
+
});
|
|
1002
|
+
}
|
|
1003
|
+
navigate(editorGroupService) {
|
|
1004
|
+
const group = editorGroupService.activeGroup;
|
|
1005
|
+
const editors = group.getEditors(1 );
|
|
1006
|
+
return { editor: editors[0], groupId: group.id };
|
|
1007
|
+
}
|
|
1008
|
+
}
|
|
1009
|
+
class OpenLastEditorInGroup extends AbstractNavigateEditorAction {
|
|
1010
|
+
constructor() {
|
|
1011
|
+
super({
|
|
1012
|
+
id: 'workbench.action.lastEditorInGroup',
|
|
1013
|
+
title: { value: ( localize('lastEditorInGroup', "Open Last Editor in Group")), original: 'Open Last Editor in Group' },
|
|
1014
|
+
f1: true,
|
|
1015
|
+
keybinding: {
|
|
1016
|
+
weight: 200 ,
|
|
1017
|
+
primary: 512 | 21 ,
|
|
1018
|
+
secondary: [2048 | 30 ],
|
|
1019
|
+
mac: {
|
|
1020
|
+
primary: 256 | 21 ,
|
|
1021
|
+
secondary: [2048 | 30 ]
|
|
1022
|
+
}
|
|
1023
|
+
},
|
|
1024
|
+
category: Categories.View
|
|
1025
|
+
});
|
|
1026
|
+
}
|
|
1027
|
+
navigate(editorGroupService) {
|
|
1028
|
+
const group = editorGroupService.activeGroup;
|
|
1029
|
+
const editors = group.getEditors(1 );
|
|
1030
|
+
return { editor: editors[editors.length - 1], groupId: group.id };
|
|
1031
|
+
}
|
|
1032
|
+
}
|
|
1033
|
+
class NavigateForwardAction extends Action2 {
|
|
1034
|
+
constructor() {
|
|
1035
|
+
super({
|
|
1036
|
+
id: NavigateForwardAction.ID,
|
|
1037
|
+
title: { value: ( localize('navigateForward', "Go Forward")), original: 'Go Forward', mnemonicTitle: ( localize({ key: 'miForward', comment: ['&& denotes a mnemonic'] }, "&&Forward")) },
|
|
1038
|
+
f1: true,
|
|
1039
|
+
icon: Codicon.arrowRight,
|
|
1040
|
+
precondition: ( ContextKeyExpr.has('canNavigateForward')),
|
|
1041
|
+
keybinding: {
|
|
1042
|
+
weight: 200 ,
|
|
1043
|
+
win: { primary: 512 | 17 },
|
|
1044
|
+
mac: { primary: 256 | 1024 | 88 },
|
|
1045
|
+
linux: { primary: 2048 | 1024 | 88 }
|
|
1046
|
+
},
|
|
1047
|
+
menu: [
|
|
1048
|
+
{ id: MenuId.MenubarGoMenu, group: '1_history_nav', order: 2 },
|
|
1049
|
+
{ id: MenuId.CommandCenter, order: 2 }
|
|
1050
|
+
]
|
|
1051
|
+
});
|
|
1052
|
+
}
|
|
1053
|
+
async run(accessor) {
|
|
1054
|
+
const historyService = accessor.get(IHistoryService);
|
|
1055
|
+
await historyService.goForward(0 );
|
|
1056
|
+
}
|
|
1057
|
+
}
|
|
1058
|
+
NavigateForwardAction.ID = 'workbench.action.navigateForward';
|
|
1059
|
+
NavigateForwardAction.LABEL = ( localize('navigateForward', "Go Forward"));
|
|
1060
|
+
class NavigateBackwardsAction extends Action2 {
|
|
1061
|
+
constructor() {
|
|
1062
|
+
super({
|
|
1063
|
+
id: NavigateBackwardsAction.ID,
|
|
1064
|
+
title: { value: ( localize('navigateBack', "Go Back")), original: 'Go Back', mnemonicTitle: ( localize({ key: 'miBack', comment: ['&& denotes a mnemonic'] }, "&&Back")) },
|
|
1065
|
+
f1: true,
|
|
1066
|
+
precondition: ( ContextKeyExpr.has('canNavigateBack')),
|
|
1067
|
+
icon: Codicon.arrowLeft,
|
|
1068
|
+
keybinding: {
|
|
1069
|
+
weight: 200 ,
|
|
1070
|
+
win: { primary: 512 | 15 },
|
|
1071
|
+
mac: { primary: 256 | 88 },
|
|
1072
|
+
linux: { primary: 2048 | 512 | 88 }
|
|
1073
|
+
},
|
|
1074
|
+
menu: [
|
|
1075
|
+
{ id: MenuId.MenubarGoMenu, group: '1_history_nav', order: 1 },
|
|
1076
|
+
{ id: MenuId.CommandCenter, order: 1 }
|
|
1077
|
+
]
|
|
1078
|
+
});
|
|
1079
|
+
}
|
|
1080
|
+
async run(accessor) {
|
|
1081
|
+
const historyService = accessor.get(IHistoryService);
|
|
1082
|
+
await historyService.goBack(0 );
|
|
1083
|
+
}
|
|
1084
|
+
}
|
|
1085
|
+
NavigateBackwardsAction.ID = 'workbench.action.navigateBack';
|
|
1086
|
+
NavigateBackwardsAction.LABEL = ( localize('navigateBack', "Go Back"));
|
|
1087
|
+
class NavigatePreviousAction extends Action2 {
|
|
1088
|
+
constructor() {
|
|
1089
|
+
super({
|
|
1090
|
+
id: 'workbench.action.navigateLast',
|
|
1091
|
+
title: { value: ( localize('navigatePrevious', "Go Previous")), original: 'Go Previous' },
|
|
1092
|
+
f1: true
|
|
1093
|
+
});
|
|
1094
|
+
}
|
|
1095
|
+
async run(accessor) {
|
|
1096
|
+
const historyService = accessor.get(IHistoryService);
|
|
1097
|
+
await historyService.goPrevious(0 );
|
|
1098
|
+
}
|
|
1099
|
+
}
|
|
1100
|
+
class NavigateForwardInEditsAction extends Action2 {
|
|
1101
|
+
constructor() {
|
|
1102
|
+
super({
|
|
1103
|
+
id: 'workbench.action.navigateForwardInEditLocations',
|
|
1104
|
+
title: { value: ( localize('navigateForwardInEdits', "Go Forward in Edit Locations")), original: 'Go Forward in Edit Locations' },
|
|
1105
|
+
f1: true
|
|
1106
|
+
});
|
|
1107
|
+
}
|
|
1108
|
+
async run(accessor) {
|
|
1109
|
+
const historyService = accessor.get(IHistoryService);
|
|
1110
|
+
await historyService.goForward(1 );
|
|
1111
|
+
}
|
|
1112
|
+
}
|
|
1113
|
+
class NavigateBackwardsInEditsAction extends Action2 {
|
|
1114
|
+
constructor() {
|
|
1115
|
+
super({
|
|
1116
|
+
id: 'workbench.action.navigateBackInEditLocations',
|
|
1117
|
+
title: { value: ( localize('navigateBackInEdits', "Go Back in Edit Locations")), original: 'Go Back in Edit Locations' },
|
|
1118
|
+
f1: true
|
|
1119
|
+
});
|
|
1120
|
+
}
|
|
1121
|
+
async run(accessor) {
|
|
1122
|
+
const historyService = accessor.get(IHistoryService);
|
|
1123
|
+
await historyService.goBack(1 );
|
|
1124
|
+
}
|
|
1125
|
+
}
|
|
1126
|
+
class NavigatePreviousInEditsAction extends Action2 {
|
|
1127
|
+
constructor() {
|
|
1128
|
+
super({
|
|
1129
|
+
id: 'workbench.action.navigatePreviousInEditLocations',
|
|
1130
|
+
title: { value: ( localize('navigatePreviousInEdits', "Go Previous in Edit Locations")), original: 'Go Previous in Edit Locations' },
|
|
1131
|
+
f1: true
|
|
1132
|
+
});
|
|
1133
|
+
}
|
|
1134
|
+
async run(accessor) {
|
|
1135
|
+
const historyService = accessor.get(IHistoryService);
|
|
1136
|
+
await historyService.goPrevious(1 );
|
|
1137
|
+
}
|
|
1138
|
+
}
|
|
1139
|
+
class NavigateToLastEditLocationAction extends Action2 {
|
|
1140
|
+
constructor() {
|
|
1141
|
+
super({
|
|
1142
|
+
id: 'workbench.action.navigateToLastEditLocation',
|
|
1143
|
+
title: { value: ( localize('navigateToLastEditLocation', "Go to Last Edit Location")), original: 'Go to Last Edit Location' },
|
|
1144
|
+
f1: true,
|
|
1145
|
+
keybinding: {
|
|
1146
|
+
weight: 200 ,
|
|
1147
|
+
primary: KeyChord(2048 | 41 , 2048 | 47 )
|
|
1148
|
+
}
|
|
1149
|
+
});
|
|
1150
|
+
}
|
|
1151
|
+
async run(accessor) {
|
|
1152
|
+
const historyService = accessor.get(IHistoryService);
|
|
1153
|
+
await historyService.goLast(1 );
|
|
1154
|
+
}
|
|
1155
|
+
}
|
|
1156
|
+
class NavigateForwardInNavigationsAction extends Action2 {
|
|
1157
|
+
constructor() {
|
|
1158
|
+
super({
|
|
1159
|
+
id: 'workbench.action.navigateForwardInNavigationLocations',
|
|
1160
|
+
title: { value: ( localize('navigateForwardInNavigations', "Go Forward in Navigation Locations")), original: 'Go Forward in Navigation Locations' },
|
|
1161
|
+
f1: true
|
|
1162
|
+
});
|
|
1163
|
+
}
|
|
1164
|
+
async run(accessor) {
|
|
1165
|
+
const historyService = accessor.get(IHistoryService);
|
|
1166
|
+
await historyService.goForward(2 );
|
|
1167
|
+
}
|
|
1168
|
+
}
|
|
1169
|
+
class NavigateBackwardsInNavigationsAction extends Action2 {
|
|
1170
|
+
constructor() {
|
|
1171
|
+
super({
|
|
1172
|
+
id: 'workbench.action.navigateBackInNavigationLocations',
|
|
1173
|
+
title: { value: ( localize('navigateBackInNavigations', "Go Back in Navigation Locations")), original: 'Go Back in Navigation Locations' },
|
|
1174
|
+
f1: true
|
|
1175
|
+
});
|
|
1176
|
+
}
|
|
1177
|
+
async run(accessor) {
|
|
1178
|
+
const historyService = accessor.get(IHistoryService);
|
|
1179
|
+
await historyService.goBack(2 );
|
|
1180
|
+
}
|
|
1181
|
+
}
|
|
1182
|
+
class NavigatePreviousInNavigationsAction extends Action2 {
|
|
1183
|
+
constructor() {
|
|
1184
|
+
super({
|
|
1185
|
+
id: 'workbench.action.navigatePreviousInNavigationLocations',
|
|
1186
|
+
title: { value: ( localize(
|
|
1187
|
+
'navigatePreviousInNavigationLocations',
|
|
1188
|
+
"Go Previous in Navigation Locations"
|
|
1189
|
+
)), original: 'Go Previous in Navigation Locations' },
|
|
1190
|
+
f1: true
|
|
1191
|
+
});
|
|
1192
|
+
}
|
|
1193
|
+
async run(accessor) {
|
|
1194
|
+
const historyService = accessor.get(IHistoryService);
|
|
1195
|
+
await historyService.goPrevious(2 );
|
|
1196
|
+
}
|
|
1197
|
+
}
|
|
1198
|
+
class NavigateToLastNavigationLocationAction extends Action2 {
|
|
1199
|
+
constructor() {
|
|
1200
|
+
super({
|
|
1201
|
+
id: 'workbench.action.navigateToLastNavigationLocation',
|
|
1202
|
+
title: { value: ( localize('navigateToLastNavigationLocation', "Go to Last Navigation Location")), original: 'Go to Last Navigation Location' },
|
|
1203
|
+
f1: true
|
|
1204
|
+
});
|
|
1205
|
+
}
|
|
1206
|
+
async run(accessor) {
|
|
1207
|
+
const historyService = accessor.get(IHistoryService);
|
|
1208
|
+
await historyService.goLast(2 );
|
|
1209
|
+
}
|
|
1210
|
+
}
|
|
1211
|
+
class ReopenClosedEditorAction extends Action2 {
|
|
1212
|
+
constructor() {
|
|
1213
|
+
super({
|
|
1214
|
+
id: ReopenClosedEditorAction.ID,
|
|
1215
|
+
title: { value: ( localize('reopenClosedEditor', "Reopen Closed Editor")), original: 'Reopen Closed Editor' },
|
|
1216
|
+
f1: true,
|
|
1217
|
+
keybinding: {
|
|
1218
|
+
weight: 200 ,
|
|
1219
|
+
primary: 2048 | 1024 | 50
|
|
1220
|
+
},
|
|
1221
|
+
category: Categories.View
|
|
1222
|
+
});
|
|
1223
|
+
}
|
|
1224
|
+
async run(accessor) {
|
|
1225
|
+
const historyService = accessor.get(IHistoryService);
|
|
1226
|
+
await historyService.reopenLastClosedEditor();
|
|
1227
|
+
}
|
|
1228
|
+
}
|
|
1229
|
+
ReopenClosedEditorAction.ID = 'workbench.action.reopenClosedEditor';
|
|
1230
|
+
class ClearRecentFilesAction extends Action2 {
|
|
361
1231
|
constructor() {
|
|
362
1232
|
super({
|
|
363
1233
|
id: ClearRecentFilesAction.ID,
|
|
364
1234
|
title: { value: ( localize('clearRecentFiles', "Clear Recently Opened")), original: 'Clear Recently Opened' },
|
|
365
1235
|
f1: true,
|
|
366
|
-
category: Categories.File
|
|
1236
|
+
category: Categories.File
|
|
1237
|
+
});
|
|
1238
|
+
}
|
|
1239
|
+
async run(accessor) {
|
|
1240
|
+
const dialogService = accessor.get(IDialogService);
|
|
1241
|
+
const workspacesService = accessor.get(IWorkspacesService);
|
|
1242
|
+
const historyService = accessor.get(IHistoryService);
|
|
1243
|
+
const { confirmed } = await dialogService.confirm({
|
|
1244
|
+
type: 'warning',
|
|
1245
|
+
message: ( localize(
|
|
1246
|
+
'confirmClearRecentsMessage',
|
|
1247
|
+
"Do you want to clear all recently opened files and workspaces?"
|
|
1248
|
+
)),
|
|
1249
|
+
detail: ( localize('confirmClearDetail', "This action is irreversible!")),
|
|
1250
|
+
primaryButton: ( localize({ key: 'clearButtonLabel', comment: ['&& denotes a mnemonic'] }, "&&Clear"))
|
|
1251
|
+
});
|
|
1252
|
+
if (!confirmed) {
|
|
1253
|
+
return;
|
|
1254
|
+
}
|
|
1255
|
+
workspacesService.clearRecentlyOpened();
|
|
1256
|
+
historyService.clearRecentlyOpened();
|
|
1257
|
+
}
|
|
1258
|
+
}
|
|
1259
|
+
ClearRecentFilesAction.ID = 'workbench.action.clearRecentFiles';
|
|
1260
|
+
class ShowEditorsInActiveGroupByMostRecentlyUsedAction extends Action2 {
|
|
1261
|
+
constructor() {
|
|
1262
|
+
super({
|
|
1263
|
+
id: ShowEditorsInActiveGroupByMostRecentlyUsedAction.ID,
|
|
1264
|
+
title: { value: ( localize(
|
|
1265
|
+
'showEditorsInActiveGroup',
|
|
1266
|
+
"Show Editors in Active Group By Most Recently Used"
|
|
1267
|
+
)), original: 'Show Editors in Active Group By Most Recently Used' },
|
|
1268
|
+
f1: true,
|
|
1269
|
+
category: Categories.View
|
|
1270
|
+
});
|
|
1271
|
+
}
|
|
1272
|
+
async run(accessor) {
|
|
1273
|
+
const quickInputService = accessor.get(IQuickInputService);
|
|
1274
|
+
quickInputService.quickAccess.show(ActiveGroupEditorsByMostRecentlyUsedQuickAccess.PREFIX);
|
|
1275
|
+
}
|
|
1276
|
+
}
|
|
1277
|
+
ShowEditorsInActiveGroupByMostRecentlyUsedAction.ID = 'workbench.action.showEditorsInActiveGroup';
|
|
1278
|
+
class ShowAllEditorsByAppearanceAction extends Action2 {
|
|
1279
|
+
constructor() {
|
|
1280
|
+
super({
|
|
1281
|
+
id: ShowAllEditorsByAppearanceAction.ID,
|
|
1282
|
+
title: { value: ( localize('showAllEditors', "Show All Editors By Appearance")), original: 'Show All Editors By Appearance' },
|
|
1283
|
+
f1: true,
|
|
1284
|
+
keybinding: {
|
|
1285
|
+
weight: 200 ,
|
|
1286
|
+
primary: KeyChord(2048 | 41 , 2048 | 46 ),
|
|
1287
|
+
mac: {
|
|
1288
|
+
primary: 2048 | 512 | 2
|
|
1289
|
+
}
|
|
1290
|
+
},
|
|
1291
|
+
category: Categories.File
|
|
1292
|
+
});
|
|
1293
|
+
}
|
|
1294
|
+
async run(accessor) {
|
|
1295
|
+
const quickInputService = accessor.get(IQuickInputService);
|
|
1296
|
+
quickInputService.quickAccess.show(AllEditorsByAppearanceQuickAccess.PREFIX);
|
|
1297
|
+
}
|
|
1298
|
+
}
|
|
1299
|
+
ShowAllEditorsByAppearanceAction.ID = 'workbench.action.showAllEditors';
|
|
1300
|
+
class ShowAllEditorsByMostRecentlyUsedAction extends Action2 {
|
|
1301
|
+
constructor() {
|
|
1302
|
+
super({
|
|
1303
|
+
id: ShowAllEditorsByMostRecentlyUsedAction.ID,
|
|
1304
|
+
title: { value: ( localize(
|
|
1305
|
+
'showAllEditorsByMostRecentlyUsed',
|
|
1306
|
+
"Show All Editors By Most Recently Used"
|
|
1307
|
+
)), original: 'Show All Editors By Most Recently Used' },
|
|
1308
|
+
f1: true,
|
|
1309
|
+
category: Categories.View
|
|
1310
|
+
});
|
|
1311
|
+
}
|
|
1312
|
+
async run(accessor) {
|
|
1313
|
+
const quickInputService = accessor.get(IQuickInputService);
|
|
1314
|
+
quickInputService.quickAccess.show(AllEditorsByMostRecentlyUsedQuickAccess.PREFIX);
|
|
1315
|
+
}
|
|
1316
|
+
}
|
|
1317
|
+
ShowAllEditorsByMostRecentlyUsedAction.ID = 'workbench.action.showAllEditorsByMostRecentlyUsed';
|
|
1318
|
+
class AbstractQuickAccessEditorAction extends Action2 {
|
|
1319
|
+
constructor(desc, prefix, itemActivation) {
|
|
1320
|
+
super(desc);
|
|
1321
|
+
this.prefix = prefix;
|
|
1322
|
+
this.itemActivation = itemActivation;
|
|
1323
|
+
}
|
|
1324
|
+
async run(accessor) {
|
|
1325
|
+
const keybindingService = accessor.get(IKeybindingService);
|
|
1326
|
+
const quickInputService = accessor.get(IQuickInputService);
|
|
1327
|
+
const keybindings = keybindingService.lookupKeybindings(this.desc.id);
|
|
1328
|
+
quickInputService.quickAccess.show(this.prefix, {
|
|
1329
|
+
quickNavigateConfiguration: { keybindings },
|
|
1330
|
+
itemActivation: this.itemActivation
|
|
1331
|
+
});
|
|
1332
|
+
}
|
|
1333
|
+
}
|
|
1334
|
+
class QuickAccessPreviousRecentlyUsedEditorAction extends AbstractQuickAccessEditorAction {
|
|
1335
|
+
constructor() {
|
|
1336
|
+
super({
|
|
1337
|
+
id: 'workbench.action.quickOpenPreviousRecentlyUsedEditor',
|
|
1338
|
+
title: { value: ( localize(
|
|
1339
|
+
'quickOpenPreviousRecentlyUsedEditor',
|
|
1340
|
+
"Quick Open Previous Recently Used Editor"
|
|
1341
|
+
)), original: 'Quick Open Previous Recently Used Editor' },
|
|
1342
|
+
f1: true,
|
|
1343
|
+
category: Categories.View
|
|
1344
|
+
}, AllEditorsByMostRecentlyUsedQuickAccess.PREFIX, undefined);
|
|
1345
|
+
}
|
|
1346
|
+
}
|
|
1347
|
+
class QuickAccessLeastRecentlyUsedEditorAction extends AbstractQuickAccessEditorAction {
|
|
1348
|
+
constructor() {
|
|
1349
|
+
super({
|
|
1350
|
+
id: 'workbench.action.quickOpenLeastRecentlyUsedEditor',
|
|
1351
|
+
title: { value: ( localize(
|
|
1352
|
+
'quickOpenLeastRecentlyUsedEditor',
|
|
1353
|
+
"Quick Open Least Recently Used Editor"
|
|
1354
|
+
)), original: 'Quick Open Least Recently Used Editor' },
|
|
1355
|
+
f1: true,
|
|
1356
|
+
category: Categories.View
|
|
1357
|
+
}, AllEditorsByMostRecentlyUsedQuickAccess.PREFIX, undefined);
|
|
1358
|
+
}
|
|
1359
|
+
}
|
|
1360
|
+
class QuickAccessPreviousRecentlyUsedEditorInGroupAction extends AbstractQuickAccessEditorAction {
|
|
1361
|
+
constructor() {
|
|
1362
|
+
super({
|
|
1363
|
+
id: 'workbench.action.quickOpenPreviousRecentlyUsedEditorInGroup',
|
|
1364
|
+
title: { value: ( localize(
|
|
1365
|
+
'quickOpenPreviousRecentlyUsedEditorInGroup',
|
|
1366
|
+
"Quick Open Previous Recently Used Editor in Group"
|
|
1367
|
+
)), original: 'Quick Open Previous Recently Used Editor in Group' },
|
|
1368
|
+
f1: true,
|
|
1369
|
+
keybinding: {
|
|
1370
|
+
weight: 200 ,
|
|
1371
|
+
primary: 2048 | 2 ,
|
|
1372
|
+
mac: {
|
|
1373
|
+
primary: 256 | 2
|
|
1374
|
+
}
|
|
1375
|
+
},
|
|
1376
|
+
precondition: ( ActiveEditorGroupEmptyContext.toNegated()),
|
|
1377
|
+
category: Categories.View
|
|
1378
|
+
}, ActiveGroupEditorsByMostRecentlyUsedQuickAccess.PREFIX, undefined);
|
|
1379
|
+
}
|
|
1380
|
+
}
|
|
1381
|
+
class QuickAccessLeastRecentlyUsedEditorInGroupAction extends AbstractQuickAccessEditorAction {
|
|
1382
|
+
constructor() {
|
|
1383
|
+
super({
|
|
1384
|
+
id: 'workbench.action.quickOpenLeastRecentlyUsedEditorInGroup',
|
|
1385
|
+
title: { value: ( localize(
|
|
1386
|
+
'quickOpenLeastRecentlyUsedEditorInGroup',
|
|
1387
|
+
"Quick Open Least Recently Used Editor in Group"
|
|
1388
|
+
)), original: 'Quick Open Least Recently Used Editor in Group' },
|
|
1389
|
+
f1: true,
|
|
1390
|
+
keybinding: {
|
|
1391
|
+
weight: 200 ,
|
|
1392
|
+
primary: 2048 | 1024 | 2 ,
|
|
1393
|
+
mac: {
|
|
1394
|
+
primary: 256 | 1024 | 2
|
|
1395
|
+
}
|
|
1396
|
+
},
|
|
1397
|
+
precondition: ( ActiveEditorGroupEmptyContext.toNegated()),
|
|
1398
|
+
category: Categories.View
|
|
1399
|
+
}, ActiveGroupEditorsByMostRecentlyUsedQuickAccess.PREFIX, ItemActivation.LAST);
|
|
1400
|
+
}
|
|
1401
|
+
}
|
|
1402
|
+
class QuickAccessPreviousEditorFromHistoryAction extends Action2 {
|
|
1403
|
+
constructor() {
|
|
1404
|
+
super({
|
|
1405
|
+
id: QuickAccessPreviousEditorFromHistoryAction.ID,
|
|
1406
|
+
title: { value: ( localize('navigateEditorHistoryByInput', "Quick Open Previous Editor from History")), original: 'Quick Open Previous Editor from History' },
|
|
1407
|
+
f1: true
|
|
1408
|
+
});
|
|
1409
|
+
}
|
|
1410
|
+
async run(accessor) {
|
|
1411
|
+
const keybindingService = accessor.get(IKeybindingService);
|
|
1412
|
+
const quickInputService = accessor.get(IQuickInputService);
|
|
1413
|
+
const editorGroupService = accessor.get(IEditorGroupsService);
|
|
1414
|
+
const keybindings = keybindingService.lookupKeybindings(QuickAccessPreviousEditorFromHistoryAction.ID);
|
|
1415
|
+
let itemActivation = undefined;
|
|
1416
|
+
if (editorGroupService.activeGroup.count === 0) {
|
|
1417
|
+
itemActivation = ItemActivation.FIRST;
|
|
1418
|
+
}
|
|
1419
|
+
quickInputService.quickAccess.show('', { quickNavigateConfiguration: { keybindings }, itemActivation });
|
|
1420
|
+
}
|
|
1421
|
+
}
|
|
1422
|
+
QuickAccessPreviousEditorFromHistoryAction.ID = 'workbench.action.openPreviousEditorFromHistory';
|
|
1423
|
+
class OpenNextRecentlyUsedEditorAction extends Action2 {
|
|
1424
|
+
constructor() {
|
|
1425
|
+
super({
|
|
1426
|
+
id: 'workbench.action.openNextRecentlyUsedEditor',
|
|
1427
|
+
title: { value: ( localize('openNextRecentlyUsedEditor', "Open Next Recently Used Editor")), original: 'Open Next Recently Used Editor' },
|
|
1428
|
+
f1: true,
|
|
1429
|
+
category: Categories.View
|
|
1430
|
+
});
|
|
1431
|
+
}
|
|
1432
|
+
async run(accessor) {
|
|
1433
|
+
const historyService = accessor.get(IHistoryService);
|
|
1434
|
+
historyService.openNextRecentlyUsedEditor();
|
|
1435
|
+
}
|
|
1436
|
+
}
|
|
1437
|
+
class OpenPreviousRecentlyUsedEditorAction extends Action2 {
|
|
1438
|
+
constructor() {
|
|
1439
|
+
super({
|
|
1440
|
+
id: 'workbench.action.openPreviousRecentlyUsedEditor',
|
|
1441
|
+
title: { value: ( localize('openPreviousRecentlyUsedEditor', "Open Previous Recently Used Editor")), original: 'Open Previous Recently Used Editor' },
|
|
1442
|
+
f1: true,
|
|
1443
|
+
category: Categories.View
|
|
1444
|
+
});
|
|
1445
|
+
}
|
|
1446
|
+
async run(accessor) {
|
|
1447
|
+
const historyService = accessor.get(IHistoryService);
|
|
1448
|
+
historyService.openPreviouslyUsedEditor();
|
|
1449
|
+
}
|
|
1450
|
+
}
|
|
1451
|
+
class OpenNextRecentlyUsedEditorInGroupAction extends Action2 {
|
|
1452
|
+
constructor() {
|
|
1453
|
+
super({
|
|
1454
|
+
id: 'workbench.action.openNextRecentlyUsedEditorInGroup',
|
|
1455
|
+
title: { value: ( localize(
|
|
1456
|
+
'openNextRecentlyUsedEditorInGroup',
|
|
1457
|
+
"Open Next Recently Used Editor In Group"
|
|
1458
|
+
)), original: 'Open Next Recently Used Editor In Group' },
|
|
1459
|
+
f1: true,
|
|
1460
|
+
category: Categories.View
|
|
1461
|
+
});
|
|
1462
|
+
}
|
|
1463
|
+
async run(accessor) {
|
|
1464
|
+
const historyService = accessor.get(IHistoryService);
|
|
1465
|
+
const editorGroupsService = accessor.get(IEditorGroupsService);
|
|
1466
|
+
historyService.openNextRecentlyUsedEditor(editorGroupsService.activeGroup.id);
|
|
1467
|
+
}
|
|
1468
|
+
}
|
|
1469
|
+
class OpenPreviousRecentlyUsedEditorInGroupAction extends Action2 {
|
|
1470
|
+
constructor() {
|
|
1471
|
+
super({
|
|
1472
|
+
id: 'workbench.action.openPreviousRecentlyUsedEditorInGroup',
|
|
1473
|
+
title: { value: ( localize(
|
|
1474
|
+
'openPreviousRecentlyUsedEditorInGroup',
|
|
1475
|
+
"Open Previous Recently Used Editor In Group"
|
|
1476
|
+
)), original: 'Open Previous Recently Used Editor In Group' },
|
|
1477
|
+
f1: true,
|
|
1478
|
+
category: Categories.View
|
|
1479
|
+
});
|
|
1480
|
+
}
|
|
1481
|
+
async run(accessor) {
|
|
1482
|
+
const historyService = accessor.get(IHistoryService);
|
|
1483
|
+
const editorGroupsService = accessor.get(IEditorGroupsService);
|
|
1484
|
+
historyService.openPreviouslyUsedEditor(editorGroupsService.activeGroup.id);
|
|
1485
|
+
}
|
|
1486
|
+
}
|
|
1487
|
+
class ClearEditorHistoryAction extends Action2 {
|
|
1488
|
+
constructor() {
|
|
1489
|
+
super({
|
|
1490
|
+
id: 'workbench.action.clearEditorHistory',
|
|
1491
|
+
title: { value: ( localize('clearEditorHistory', "Clear Editor History")), original: 'Clear Editor History' },
|
|
1492
|
+
f1: true
|
|
367
1493
|
});
|
|
368
1494
|
}
|
|
369
1495
|
async run(accessor) {
|
|
370
1496
|
const dialogService = accessor.get(IDialogService);
|
|
371
|
-
const workspacesService = accessor.get(IWorkspacesService);
|
|
372
1497
|
const historyService = accessor.get(IHistoryService);
|
|
373
1498
|
const { confirmed } = await dialogService.confirm({
|
|
374
1499
|
type: 'warning',
|
|
375
1500
|
message: ( localize(
|
|
376
|
-
'
|
|
377
|
-
"Do you want to clear
|
|
1501
|
+
'confirmClearEditorHistoryMessage',
|
|
1502
|
+
"Do you want to clear the history of recently opened editors?"
|
|
378
1503
|
)),
|
|
379
1504
|
detail: ( localize('confirmClearDetail', "This action is irreversible!")),
|
|
380
1505
|
primaryButton: ( localize({ key: 'clearButtonLabel', comment: ['&& denotes a mnemonic'] }, "&&Clear"))
|
|
@@ -382,90 +1507,191 @@ class ClearRecentFilesAction extends Action2 {
|
|
|
382
1507
|
if (!confirmed) {
|
|
383
1508
|
return;
|
|
384
1509
|
}
|
|
385
|
-
|
|
386
|
-
historyService.clearRecentlyOpened();
|
|
1510
|
+
historyService.clear();
|
|
387
1511
|
}
|
|
388
1512
|
}
|
|
389
|
-
|
|
390
|
-
class ShowEditorsInActiveGroupByMostRecentlyUsedAction extends Action2 {
|
|
1513
|
+
class MoveEditorLeftInGroupAction extends ExecuteCommandAction {
|
|
391
1514
|
constructor() {
|
|
392
1515
|
super({
|
|
393
|
-
id:
|
|
394
|
-
title: { value: ( localize(
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
1516
|
+
id: 'workbench.action.moveEditorLeftInGroup',
|
|
1517
|
+
title: { value: ( localize('moveEditorLeft', "Move Editor Left")), original: 'Move Editor Left' },
|
|
1518
|
+
keybinding: {
|
|
1519
|
+
weight: 200 ,
|
|
1520
|
+
primary: 2048 | 1024 | 11 ,
|
|
1521
|
+
mac: {
|
|
1522
|
+
primary: KeyChord(2048 | 41 , 2048 | 1024 | 15 )
|
|
1523
|
+
}
|
|
1524
|
+
},
|
|
398
1525
|
f1: true,
|
|
399
1526
|
category: Categories.View
|
|
400
|
-
});
|
|
1527
|
+
}, MOVE_ACTIVE_EDITOR_COMMAND_ID, { to: 'left' });
|
|
401
1528
|
}
|
|
402
|
-
|
|
403
|
-
|
|
404
|
-
|
|
1529
|
+
}
|
|
1530
|
+
class MoveEditorRightInGroupAction extends ExecuteCommandAction {
|
|
1531
|
+
constructor() {
|
|
1532
|
+
super({
|
|
1533
|
+
id: 'workbench.action.moveEditorRightInGroup',
|
|
1534
|
+
title: { value: ( localize('moveEditorRight', "Move Editor Right")), original: 'Move Editor Right' },
|
|
1535
|
+
keybinding: {
|
|
1536
|
+
weight: 200 ,
|
|
1537
|
+
primary: 2048 | 1024 | 12 ,
|
|
1538
|
+
mac: {
|
|
1539
|
+
primary: KeyChord(2048 | 41 , 2048 | 1024 | 17 )
|
|
1540
|
+
}
|
|
1541
|
+
},
|
|
1542
|
+
f1: true,
|
|
1543
|
+
category: Categories.View
|
|
1544
|
+
}, MOVE_ACTIVE_EDITOR_COMMAND_ID, { to: 'right' });
|
|
405
1545
|
}
|
|
406
1546
|
}
|
|
407
|
-
|
|
408
|
-
class ShowAllEditorsByAppearanceAction extends Action2 {
|
|
1547
|
+
class MoveEditorToPreviousGroupAction extends ExecuteCommandAction {
|
|
409
1548
|
constructor() {
|
|
410
1549
|
super({
|
|
411
|
-
id:
|
|
412
|
-
title: { value: ( localize('
|
|
1550
|
+
id: 'workbench.action.moveEditorToPreviousGroup',
|
|
1551
|
+
title: { value: ( localize('moveEditorToPreviousGroup', "Move Editor into Previous Group")), original: 'Move Editor into Previous Group' },
|
|
1552
|
+
keybinding: {
|
|
1553
|
+
weight: 200 ,
|
|
1554
|
+
primary: 2048 | 512 | 15 ,
|
|
1555
|
+
mac: {
|
|
1556
|
+
primary: 2048 | 256 | 15
|
|
1557
|
+
}
|
|
1558
|
+
},
|
|
1559
|
+
f1: true,
|
|
1560
|
+
category: Categories.View,
|
|
1561
|
+
}, MOVE_ACTIVE_EDITOR_COMMAND_ID, { to: 'previous', by: 'group' });
|
|
1562
|
+
}
|
|
1563
|
+
}
|
|
1564
|
+
class MoveEditorToNextGroupAction extends ExecuteCommandAction {
|
|
1565
|
+
constructor() {
|
|
1566
|
+
super({
|
|
1567
|
+
id: 'workbench.action.moveEditorToNextGroup',
|
|
1568
|
+
title: { value: ( localize('moveEditorToNextGroup', "Move Editor into Next Group")), original: 'Move Editor into Next Group' },
|
|
413
1569
|
f1: true,
|
|
414
1570
|
keybinding: {
|
|
415
1571
|
weight: 200 ,
|
|
416
|
-
primary:
|
|
1572
|
+
primary: 2048 | 512 | 17 ,
|
|
417
1573
|
mac: {
|
|
418
|
-
primary: 2048 |
|
|
1574
|
+
primary: 2048 | 256 | 17
|
|
419
1575
|
}
|
|
420
1576
|
},
|
|
421
|
-
category: Categories.
|
|
422
|
-
});
|
|
1577
|
+
category: Categories.View
|
|
1578
|
+
}, MOVE_ACTIVE_EDITOR_COMMAND_ID, { to: 'next', by: 'group' });
|
|
423
1579
|
}
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
|
|
1580
|
+
}
|
|
1581
|
+
class MoveEditorToAboveGroupAction extends ExecuteCommandAction {
|
|
1582
|
+
constructor() {
|
|
1583
|
+
super({
|
|
1584
|
+
id: 'workbench.action.moveEditorToAboveGroup',
|
|
1585
|
+
title: { value: ( localize('moveEditorToAboveGroup', "Move Editor into Group Above")), original: 'Move Editor into Group Above' },
|
|
1586
|
+
f1: true,
|
|
1587
|
+
category: Categories.View
|
|
1588
|
+
}, MOVE_ACTIVE_EDITOR_COMMAND_ID, { to: 'up', by: 'group' });
|
|
427
1589
|
}
|
|
428
1590
|
}
|
|
429
|
-
|
|
430
|
-
class ShowAllEditorsByMostRecentlyUsedAction extends Action2 {
|
|
1591
|
+
class MoveEditorToBelowGroupAction extends ExecuteCommandAction {
|
|
431
1592
|
constructor() {
|
|
432
1593
|
super({
|
|
433
|
-
id:
|
|
434
|
-
title: { value: ( localize(
|
|
435
|
-
'showAllEditorsByMostRecentlyUsed',
|
|
436
|
-
"Show All Editors By Most Recently Used"
|
|
437
|
-
)), original: 'Show All Editors By Most Recently Used' },
|
|
1594
|
+
id: 'workbench.action.moveEditorToBelowGroup',
|
|
1595
|
+
title: { value: ( localize('moveEditorToBelowGroup', "Move Editor into Group Below")), original: 'Move Editor into Group Below' },
|
|
438
1596
|
f1: true,
|
|
439
1597
|
category: Categories.View
|
|
440
|
-
});
|
|
1598
|
+
}, MOVE_ACTIVE_EDITOR_COMMAND_ID, { to: 'down', by: 'group' });
|
|
441
1599
|
}
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
|
|
1600
|
+
}
|
|
1601
|
+
class MoveEditorToLeftGroupAction extends ExecuteCommandAction {
|
|
1602
|
+
constructor() {
|
|
1603
|
+
super({
|
|
1604
|
+
id: 'workbench.action.moveEditorToLeftGroup',
|
|
1605
|
+
title: { value: ( localize('moveEditorToLeftGroup', "Move Editor into Left Group")), original: 'Move Editor into Left Group' },
|
|
1606
|
+
f1: true,
|
|
1607
|
+
category: Categories.View
|
|
1608
|
+
}, MOVE_ACTIVE_EDITOR_COMMAND_ID, { to: 'left', by: 'group' });
|
|
445
1609
|
}
|
|
446
1610
|
}
|
|
447
|
-
|
|
448
|
-
class QuickAccessPreviousEditorFromHistoryAction extends Action2 {
|
|
1611
|
+
class MoveEditorToRightGroupAction extends ExecuteCommandAction {
|
|
449
1612
|
constructor() {
|
|
450
1613
|
super({
|
|
451
|
-
id:
|
|
452
|
-
title: { value: ( localize('
|
|
453
|
-
f1: true
|
|
454
|
-
|
|
1614
|
+
id: 'workbench.action.moveEditorToRightGroup',
|
|
1615
|
+
title: { value: ( localize('moveEditorToRightGroup', "Move Editor into Right Group")), original: 'Move Editor into Right Group' },
|
|
1616
|
+
f1: true,
|
|
1617
|
+
category: Categories.View
|
|
1618
|
+
}, MOVE_ACTIVE_EDITOR_COMMAND_ID, { to: 'right', by: 'group' });
|
|
455
1619
|
}
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
|
|
463
|
-
|
|
464
|
-
|
|
465
|
-
|
|
1620
|
+
}
|
|
1621
|
+
class MoveEditorToFirstGroupAction extends ExecuteCommandAction {
|
|
1622
|
+
constructor() {
|
|
1623
|
+
super({
|
|
1624
|
+
id: 'workbench.action.moveEditorToFirstGroup',
|
|
1625
|
+
title: { value: ( localize('moveEditorToFirstGroup', "Move Editor into First Group")), original: 'Move Editor into First Group' },
|
|
1626
|
+
f1: true,
|
|
1627
|
+
keybinding: {
|
|
1628
|
+
weight: 200 ,
|
|
1629
|
+
primary: 1024 | 512 | 22 ,
|
|
1630
|
+
mac: {
|
|
1631
|
+
primary: 2048 | 256 | 22
|
|
1632
|
+
}
|
|
1633
|
+
},
|
|
1634
|
+
category: Categories.View
|
|
1635
|
+
}, MOVE_ACTIVE_EDITOR_COMMAND_ID, { to: 'first', by: 'group' });
|
|
1636
|
+
}
|
|
1637
|
+
}
|
|
1638
|
+
class MoveEditorToLastGroupAction extends ExecuteCommandAction {
|
|
1639
|
+
constructor() {
|
|
1640
|
+
super({
|
|
1641
|
+
id: 'workbench.action.moveEditorToLastGroup',
|
|
1642
|
+
title: { value: ( localize('moveEditorToLastGroup', "Move Editor into Last Group")), original: 'Move Editor into Last Group' },
|
|
1643
|
+
f1: true,
|
|
1644
|
+
keybinding: {
|
|
1645
|
+
weight: 200 ,
|
|
1646
|
+
primary: 1024 | 512 | 30 ,
|
|
1647
|
+
mac: {
|
|
1648
|
+
primary: 2048 | 256 | 30
|
|
1649
|
+
}
|
|
1650
|
+
},
|
|
1651
|
+
category: Categories.View
|
|
1652
|
+
}, MOVE_ACTIVE_EDITOR_COMMAND_ID, { to: 'last', by: 'group' });
|
|
1653
|
+
}
|
|
1654
|
+
}
|
|
1655
|
+
class SplitEditorToPreviousGroupAction extends ExecuteCommandAction {
|
|
1656
|
+
constructor() {
|
|
1657
|
+
super({
|
|
1658
|
+
id: 'workbench.action.splitEditorToPreviousGroup',
|
|
1659
|
+
title: { value: ( localize('splitEditorToPreviousGroup', "Split Editor into Previous Group")), original: 'Split Editor into Previous Group' },
|
|
1660
|
+
f1: true,
|
|
1661
|
+
category: Categories.View
|
|
1662
|
+
}, COPY_ACTIVE_EDITOR_COMMAND_ID, { to: 'previous', by: 'group' });
|
|
1663
|
+
}
|
|
1664
|
+
}
|
|
1665
|
+
class SplitEditorToNextGroupAction extends ExecuteCommandAction {
|
|
1666
|
+
constructor() {
|
|
1667
|
+
super({
|
|
1668
|
+
id: 'workbench.action.splitEditorToNextGroup',
|
|
1669
|
+
title: { value: ( localize('splitEditorToNextGroup', "Split Editor into Next Group")), original: 'Split Editor into Next Group' },
|
|
1670
|
+
f1: true,
|
|
1671
|
+
category: Categories.View
|
|
1672
|
+
}, COPY_ACTIVE_EDITOR_COMMAND_ID, { to: 'next', by: 'group' });
|
|
1673
|
+
}
|
|
1674
|
+
}
|
|
1675
|
+
class SplitEditorToAboveGroupAction extends ExecuteCommandAction {
|
|
1676
|
+
constructor() {
|
|
1677
|
+
super({
|
|
1678
|
+
id: 'workbench.action.splitEditorToAboveGroup',
|
|
1679
|
+
title: { value: ( localize('splitEditorToAboveGroup', "Split Editor into Group Above")), original: 'Split Editor into Group Above' },
|
|
1680
|
+
f1: true,
|
|
1681
|
+
category: Categories.View
|
|
1682
|
+
}, COPY_ACTIVE_EDITOR_COMMAND_ID, { to: 'up', by: 'group' });
|
|
1683
|
+
}
|
|
1684
|
+
}
|
|
1685
|
+
class SplitEditorToBelowGroupAction extends ExecuteCommandAction {
|
|
1686
|
+
constructor() {
|
|
1687
|
+
super({
|
|
1688
|
+
id: 'workbench.action.splitEditorToBelowGroup',
|
|
1689
|
+
title: { value: ( localize('splitEditorToBelowGroup', "Split Editor into Group Below")), original: 'Split Editor into Group Below' },
|
|
1690
|
+
f1: true,
|
|
1691
|
+
category: Categories.View
|
|
1692
|
+
}, COPY_ACTIVE_EDITOR_COMMAND_ID, { to: 'down', by: 'group' });
|
|
466
1693
|
}
|
|
467
1694
|
}
|
|
468
|
-
QuickAccessPreviousEditorFromHistoryAction.ID = 'workbench.action.openPreviousEditorFromHistory';
|
|
469
1695
|
class SplitEditorToLeftGroupAction extends ExecuteCommandAction {
|
|
470
1696
|
constructor() {
|
|
471
1697
|
super({
|
|
@@ -478,6 +1704,36 @@ class SplitEditorToLeftGroupAction extends ExecuteCommandAction {
|
|
|
478
1704
|
}
|
|
479
1705
|
SplitEditorToLeftGroupAction.ID = 'workbench.action.splitEditorToLeftGroup';
|
|
480
1706
|
SplitEditorToLeftGroupAction.LABEL = ( localize('splitEditorToLeftGroup', "Split Editor into Left Group"));
|
|
1707
|
+
class SplitEditorToRightGroupAction extends ExecuteCommandAction {
|
|
1708
|
+
constructor() {
|
|
1709
|
+
super({
|
|
1710
|
+
id: 'workbench.action.splitEditorToRightGroup',
|
|
1711
|
+
title: { value: ( localize('splitEditorToRightGroup', "Split Editor into Right Group")), original: 'Split Editor into Right Group' },
|
|
1712
|
+
f1: true,
|
|
1713
|
+
category: Categories.View
|
|
1714
|
+
}, COPY_ACTIVE_EDITOR_COMMAND_ID, { to: 'right', by: 'group' });
|
|
1715
|
+
}
|
|
1716
|
+
}
|
|
1717
|
+
class SplitEditorToFirstGroupAction extends ExecuteCommandAction {
|
|
1718
|
+
constructor() {
|
|
1719
|
+
super({
|
|
1720
|
+
id: 'workbench.action.splitEditorToFirstGroup',
|
|
1721
|
+
title: { value: ( localize('splitEditorToFirstGroup', "Split Editor into First Group")), original: 'Split Editor into First Group' },
|
|
1722
|
+
f1: true,
|
|
1723
|
+
category: Categories.View
|
|
1724
|
+
}, COPY_ACTIVE_EDITOR_COMMAND_ID, { to: 'first', by: 'group' });
|
|
1725
|
+
}
|
|
1726
|
+
}
|
|
1727
|
+
class SplitEditorToLastGroupAction extends ExecuteCommandAction {
|
|
1728
|
+
constructor() {
|
|
1729
|
+
super({
|
|
1730
|
+
id: 'workbench.action.splitEditorToLastGroup',
|
|
1731
|
+
title: { value: ( localize('splitEditorToLastGroup', "Split Editor into Last Group")), original: 'Split Editor into Last Group' },
|
|
1732
|
+
f1: true,
|
|
1733
|
+
category: Categories.View
|
|
1734
|
+
}, COPY_ACTIVE_EDITOR_COMMAND_ID, { to: 'last', by: 'group' });
|
|
1735
|
+
}
|
|
1736
|
+
}
|
|
481
1737
|
class EditorLayoutSingleAction extends ExecuteCommandAction {
|
|
482
1738
|
constructor() {
|
|
483
1739
|
super({
|
|
@@ -566,4 +1822,125 @@ class EditorLayoutTwoRowsRightAction extends ExecuteCommandAction {
|
|
|
566
1822
|
}
|
|
567
1823
|
}
|
|
568
1824
|
EditorLayoutTwoRowsRightAction.ID = 'workbench.action.editorLayoutTwoRowsRight';
|
|
569
|
-
|
|
1825
|
+
class AbstractCreateEditorGroupAction extends Action2 {
|
|
1826
|
+
constructor(desc, direction) {
|
|
1827
|
+
super(desc);
|
|
1828
|
+
this.direction = direction;
|
|
1829
|
+
}
|
|
1830
|
+
async run(accessor) {
|
|
1831
|
+
const editorGroupService = accessor.get(IEditorGroupsService);
|
|
1832
|
+
editorGroupService.addGroup(editorGroupService.activeGroup, this.direction, { activate: true });
|
|
1833
|
+
}
|
|
1834
|
+
}
|
|
1835
|
+
class NewEditorGroupLeftAction extends AbstractCreateEditorGroupAction {
|
|
1836
|
+
constructor() {
|
|
1837
|
+
super({
|
|
1838
|
+
id: 'workbench.action.newGroupLeft',
|
|
1839
|
+
title: { value: ( localize('newGroupLeft', "New Editor Group to the Left")), original: 'New Editor Group to the Left' },
|
|
1840
|
+
f1: true,
|
|
1841
|
+
category: Categories.View
|
|
1842
|
+
}, 2 );
|
|
1843
|
+
}
|
|
1844
|
+
}
|
|
1845
|
+
class NewEditorGroupRightAction extends AbstractCreateEditorGroupAction {
|
|
1846
|
+
constructor() {
|
|
1847
|
+
super({
|
|
1848
|
+
id: 'workbench.action.newGroupRight',
|
|
1849
|
+
title: { value: ( localize('newGroupRight', "New Editor Group to the Right")), original: 'New Editor Group to the Right' },
|
|
1850
|
+
f1: true,
|
|
1851
|
+
category: Categories.View
|
|
1852
|
+
}, 3 );
|
|
1853
|
+
}
|
|
1854
|
+
}
|
|
1855
|
+
class NewEditorGroupAboveAction extends AbstractCreateEditorGroupAction {
|
|
1856
|
+
constructor() {
|
|
1857
|
+
super({
|
|
1858
|
+
id: 'workbench.action.newGroupAbove',
|
|
1859
|
+
title: { value: ( localize('newGroupAbove', "New Editor Group Above")), original: 'New Editor Group Above' },
|
|
1860
|
+
f1: true,
|
|
1861
|
+
category: Categories.View
|
|
1862
|
+
}, 0 );
|
|
1863
|
+
}
|
|
1864
|
+
}
|
|
1865
|
+
class NewEditorGroupBelowAction extends AbstractCreateEditorGroupAction {
|
|
1866
|
+
constructor() {
|
|
1867
|
+
super({
|
|
1868
|
+
id: 'workbench.action.newGroupBelow',
|
|
1869
|
+
title: { value: ( localize('newGroupBelow', "New Editor Group Below")), original: 'New Editor Group Below' },
|
|
1870
|
+
f1: true,
|
|
1871
|
+
category: Categories.View
|
|
1872
|
+
}, 1 );
|
|
1873
|
+
}
|
|
1874
|
+
}
|
|
1875
|
+
class ToggleEditorTypeAction extends Action2 {
|
|
1876
|
+
constructor() {
|
|
1877
|
+
super({
|
|
1878
|
+
id: 'workbench.action.toggleEditorType',
|
|
1879
|
+
title: { value: ( localize('toggleEditorType', "Toggle Editor Type")), original: 'Toggle Editor Type' },
|
|
1880
|
+
f1: true,
|
|
1881
|
+
category: Categories.View,
|
|
1882
|
+
precondition: ActiveEditorAvailableEditorIdsContext
|
|
1883
|
+
});
|
|
1884
|
+
}
|
|
1885
|
+
async run(accessor) {
|
|
1886
|
+
const editorService = accessor.get(IEditorService);
|
|
1887
|
+
const editorResolverService = accessor.get(IEditorResolverService);
|
|
1888
|
+
const activeEditorPane = editorService.activeEditorPane;
|
|
1889
|
+
if (!activeEditorPane) {
|
|
1890
|
+
return;
|
|
1891
|
+
}
|
|
1892
|
+
const activeEditorResource = EditorResourceAccessor.getCanonicalUri(activeEditorPane.input);
|
|
1893
|
+
if (!activeEditorResource) {
|
|
1894
|
+
return;
|
|
1895
|
+
}
|
|
1896
|
+
const editorIds = ( editorResolverService.getEditors(activeEditorResource).map(editor => editor.id)).filter(id => id !== activeEditorPane.input.editorId);
|
|
1897
|
+
if (editorIds.length === 0) {
|
|
1898
|
+
return;
|
|
1899
|
+
}
|
|
1900
|
+
await editorService.replaceEditors([
|
|
1901
|
+
{
|
|
1902
|
+
editor: activeEditorPane.input,
|
|
1903
|
+
replacement: {
|
|
1904
|
+
resource: activeEditorResource,
|
|
1905
|
+
options: {
|
|
1906
|
+
override: editorIds[0]
|
|
1907
|
+
}
|
|
1908
|
+
}
|
|
1909
|
+
}
|
|
1910
|
+
], activeEditorPane.group);
|
|
1911
|
+
}
|
|
1912
|
+
}
|
|
1913
|
+
class ReOpenInTextEditorAction extends Action2 {
|
|
1914
|
+
constructor() {
|
|
1915
|
+
super({
|
|
1916
|
+
id: 'workbench.action.reopenTextEditor',
|
|
1917
|
+
title: { value: ( localize('reopenTextEditor', "Reopen Editor With Text Editor")), original: 'Reopen Editor With Text Editor' },
|
|
1918
|
+
f1: true,
|
|
1919
|
+
category: Categories.View,
|
|
1920
|
+
precondition: ActiveEditorAvailableEditorIdsContext
|
|
1921
|
+
});
|
|
1922
|
+
}
|
|
1923
|
+
async run(accessor) {
|
|
1924
|
+
const editorService = accessor.get(IEditorService);
|
|
1925
|
+
const activeEditorPane = editorService.activeEditorPane;
|
|
1926
|
+
if (!activeEditorPane) {
|
|
1927
|
+
return;
|
|
1928
|
+
}
|
|
1929
|
+
const activeEditorResource = EditorResourceAccessor.getCanonicalUri(activeEditorPane.input);
|
|
1930
|
+
if (!activeEditorResource) {
|
|
1931
|
+
return;
|
|
1932
|
+
}
|
|
1933
|
+
await editorService.replaceEditors([
|
|
1934
|
+
{
|
|
1935
|
+
editor: activeEditorPane.input,
|
|
1936
|
+
replacement: {
|
|
1937
|
+
resource: activeEditorResource,
|
|
1938
|
+
options: {
|
|
1939
|
+
override: DEFAULT_EDITOR_ASSOCIATION.id
|
|
1940
|
+
}
|
|
1941
|
+
}
|
|
1942
|
+
}
|
|
1943
|
+
], activeEditorPane.group);
|
|
1944
|
+
}
|
|
1945
|
+
}
|
|
1946
|
+
export { ClearEditorHistoryAction, ClearRecentFilesAction, CloseAllEditorGroupsAction, CloseAllEditorsAction, CloseEditorAction, CloseEditorInAllGroupsAction, CloseEditorsInOtherGroupsAction, CloseLeftEditorsInGroupAction, CloseOneEditorAction, DuplicateGroupDownAction, DuplicateGroupLeftAction, DuplicateGroupRightAction, DuplicateGroupUpAction, EditorLayoutSingleAction, EditorLayoutThreeColumnsAction, EditorLayoutThreeRowsAction, EditorLayoutTwoByTwoGridAction, EditorLayoutTwoColumnsAction, EditorLayoutTwoColumnsBottomAction, EditorLayoutTwoRowsAction, EditorLayoutTwoRowsRightAction, FocusAboveGroup, FocusActiveGroupAction, FocusBelowGroup, FocusFirstGroupAction, FocusLastGroupAction, FocusLeftGroup, FocusNextGroup, FocusPreviousGroup, FocusRightGroup, JoinAllGroupsAction, JoinTwoGroupsAction, MaximizeGroupAction, MinimizeOtherGroupsAction, MoveEditorLeftInGroupAction, MoveEditorRightInGroupAction, MoveEditorToAboveGroupAction, MoveEditorToBelowGroupAction, MoveEditorToFirstGroupAction, MoveEditorToLastGroupAction, MoveEditorToLeftGroupAction, MoveEditorToNextGroupAction, MoveEditorToPreviousGroupAction, MoveEditorToRightGroupAction, MoveGroupDownAction, MoveGroupLeftAction, MoveGroupRightAction, MoveGroupUpAction, NavigateBackwardsAction, NavigateBackwardsInEditsAction, NavigateBackwardsInNavigationsAction, NavigateBetweenGroupsAction, NavigateForwardAction, NavigateForwardInEditsAction, NavigateForwardInNavigationsAction, NavigatePreviousAction, NavigatePreviousInEditsAction, NavigatePreviousInNavigationsAction, NavigateToLastEditLocationAction, NavigateToLastNavigationLocationAction, NewEditorGroupAboveAction, NewEditorGroupBelowAction, NewEditorGroupLeftAction, NewEditorGroupRightAction, OpenFirstEditorInGroup, OpenLastEditorInGroup, OpenNextEditor, OpenNextEditorInGroup, OpenNextRecentlyUsedEditorAction, OpenNextRecentlyUsedEditorInGroupAction, OpenPreviousEditor, OpenPreviousEditorInGroup, OpenPreviousRecentlyUsedEditorAction, OpenPreviousRecentlyUsedEditorInGroupAction, QuickAccessLeastRecentlyUsedEditorAction, QuickAccessLeastRecentlyUsedEditorInGroupAction, QuickAccessPreviousEditorFromHistoryAction, QuickAccessPreviousRecentlyUsedEditorAction, QuickAccessPreviousRecentlyUsedEditorInGroupAction, ReOpenInTextEditorAction, ReopenClosedEditorAction, ResetGroupSizesAction, RevertAndCloseEditorAction, ShowAllEditorsByAppearanceAction, ShowAllEditorsByMostRecentlyUsedAction, ShowEditorsInActiveGroupByMostRecentlyUsedAction, SplitEditorAction, SplitEditorDownAction, SplitEditorLeftAction, SplitEditorOrthogonalAction, SplitEditorRightAction, SplitEditorToAboveGroupAction, SplitEditorToBelowGroupAction, SplitEditorToFirstGroupAction, SplitEditorToLastGroupAction, SplitEditorToLeftGroupAction, SplitEditorToNextGroupAction, SplitEditorToPreviousGroupAction, SplitEditorToRightGroupAction, SplitEditorUpAction, ToggleEditorTypeAction, ToggleGroupSizesAction, UnpinEditorAction };
|