diff --git a/src/vs/workbench/browser/parts/editor/sideBySideEditor.ts b/src/vs/workbench/browser/parts/editor/sideBySideEditor.ts index c3d7a0cce9da..35846e76c3bb 100644 --- a/src/vs/workbench/browser/parts/editor/sideBySideEditor.ts +++ b/src/vs/workbench/browser/parts/editor/sideBySideEditor.ts @@ -32,6 +32,7 @@ import { IEditorService } from 'vs/workbench/services/editor/common/editorServic import { isEqual } from 'vs/base/common/resources'; import { URI } from 'vs/base/common/uri'; import { IBoundarySashes } from 'vs/base/browser/ui/sash/sash'; +import { coalesce } from 'vs/base/common/arrays'; interface ISideBySideEditorViewState { primary: object; @@ -455,6 +456,10 @@ export class SideBySideEditor extends AbstractEditorWithViewState { const visibleTextEditorControls: Array = []; for (const visibleEditorPane of this.visibleEditorPanes) { - const control = visibleEditorPane.getControl(); - if (isCodeEditor(control) || isDiffEditor(control)) { - visibleTextEditorControls.push(control); + const controls: (IEditorControl | undefined)[] = visibleEditorPane.getControls ? visibleEditorPane.getControls() : [visibleEditorPane.getControl()]; + for (const control of controls) { + if (isCodeEditor(control) || isDiffEditor(control)) { + visibleTextEditorControls.push(control); + } } }