Add openwith entry for search editor. Fixes 119185 (#120198)

This commit is contained in:
Logan Ramos 2021-03-31 09:40:24 -04:00 committed by GitHub
parent eece236bbd
commit a851a2612f
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -4,7 +4,7 @@
*--------------------------------------------------------------------------------------------*/
import { KeyCode, KeyMod } from 'vs/base/common/keyCodes';
import { extname } from 'vs/base/common/resources';
import { extname, isEqual } from 'vs/base/common/resources';
import { URI } from 'vs/base/common/uri';
import { ServicesAccessor } from 'vs/editor/browser/editorExtensions';
import { Range } from 'vs/editor/common/core/range';
@ -19,7 +19,7 @@ import { KeybindingWeight } from 'vs/platform/keybinding/common/keybindingsRegis
import { LifecyclePhase } from 'vs/workbench/services/lifecycle/common/lifecycle';
import { Registry } from 'vs/platform/registry/common/platform';
import { ITelemetryService } from 'vs/platform/telemetry/common/telemetry';
import { EditorDescriptor, Extensions as EditorExtensions, IEditorRegistry } from 'vs/workbench/browser/editor';
import { DEFAULT_EDITOR_ASSOCIATION, EditorDescriptor, Extensions as EditorExtensions, IEditorRegistry } from 'vs/workbench/browser/editor';
import { Extensions as WorkbenchExtensions, IWorkbenchContribution, IWorkbenchContributionsRegistry } from 'vs/workbench/common/contributions';
import { ActiveEditorContext, Extensions as EditorInputExtensions, IEditorInputSerializer, IEditorInputFactoryRegistry } from 'vs/workbench/common/editor';
import { IViewsService } from 'vs/workbench/common/views';
@ -75,6 +75,14 @@ class SearchEditorContribution implements IWorkbenchContribution {
) {
this.editorService.overrideOpenEditor({
getEditorOverrides: (resource: URI) => {
return extname(resource) === SEARCH_EDITOR_EXT ? [{
id: SearchEditorInput.ID,
label: localize('promptOpenWith.searchEditor.displayName', "Search Editor"),
detail: DEFAULT_EDITOR_ASSOCIATION.providerDisplayName,
active: isEqual(this.editorService.activeEditor?.resource, resource) && this.editorService.activeEditor instanceof SearchEditorInput
}] : [];
},
open: (editor, options, group) => {
const resource = editor.resource;
if (!resource) { return undefined; }