diff --git a/src/plugins/coreplugin/editormanager/editorview.cpp b/src/plugins/coreplugin/editormanager/editorview.cpp index 48363270cce734e8673f32f72e0b7e9a6bade459..d9d07a2b7ce249272f85ffa2f40a1aa7181e8208 100644 --- a/src/plugins/coreplugin/editormanager/editorview.cpp +++ b/src/plugins/coreplugin/editormanager/editorview.cpp @@ -165,9 +165,9 @@ EditorView::~EditorView() void EditorView::closeView() { EditorManager *em = CoreImpl::instance()->editorManager(); - if (IEditor *editor = currentEditor()) { - em->closeDuplicate(editor); - } + IEditor *editor = currentEditor(); + if (editor) + em->closeEditor(editor); } void EditorView::showEditorInfoBar(const QString &id, const QString &infoText, @@ -705,7 +705,9 @@ void SplitterOrView::split(Qt::Orientation orientation) SplitterOrView *otherView = 0; if (e) { - m_view->removeEditor(e); + foreach(IEditor *editor, m_view->editors()) + m_view->removeEditor(editor); + m_splitter->addWidget((view = new SplitterOrView(e))); if (e->duplicateSupported()) { Core::IEditor *duplicate = em->duplicateEditor(e); diff --git a/src/plugins/coreplugin/editortoolbar.cpp b/src/plugins/coreplugin/editortoolbar.cpp index 68b03c0a5d48f3df6384af1a58b7abd659abb469..3223e828e70813597266ca99274773a370edc07e 100644 --- a/src/plugins/coreplugin/editortoolbar.cpp +++ b/src/plugins/coreplugin/editortoolbar.cpp @@ -177,7 +177,6 @@ void EditorToolBar::closeView() if (m_isStandalone) { EditorManager *em = ICore::instance()->editorManager(); if (IEditor *editor = currentEditor()) { - //em->closeDuplicate(editor); em->closeEditor(editor); } }