src/vs/workbench/browser/parts/editor/editorPanes.ts/EditorPanes/doOpenEditor
class EditorPanes:	private async doOpenEditor(descriptor: IEditorPaneDescriptor, editor: EditorInput, options: IEditorOptions | undefined, context: IEditorOpenContext = Object.create(null)): Promise<IOpenEditorResult> {

		// Editor pane
		const pane = this.doShowEditorPane(descriptor);

		// Apply input to pane
		const { changed, cancelled } = await this.doSetInput(pane, editor, options, context);

		// Focus unless cancelled
		if (!cancelled) {
			const focus = !options || !options.preserveFocus;
			if (focus) {
				pane.focus();
			}
		}

		return { pane, changed, cancelled };
	}