protected void ReplaceDockAreaPane(View dockArea, EditorWindow originalPane, EditorWindow newPane) { if (dockArea.HasField("m_Panes")) { var dockedPanes = dockArea.GetFieldValue <List <EditorWindow> >("m_Panes"); var dockIndex = dockedPanes.IndexOf(originalPane); dockedPanes[dockIndex] = newPane; } }