Fix closing document when split and two documents are open.

If one had two documents open, but the same document visible in both
split views, closing the document would lead to an empty view and
strange behavior of the close button while in that state.

Task-number: QTCREATORBUG-7361
Change-Id: I3c0673a82b9d11700326a946a04984a2d6d58fe8
Reviewed-by: Jarek Kobus <jaroslaw.kobus@nokia.com>
This commit is contained in:
Eike Ziller
2012-05-15 17:57:01 +02:00
parent a788bf97f8
commit f1c77a8349

View File

@@ -883,8 +883,10 @@ bool EditorManager::closeEditors(const QList<IEditor*> &editorsToClose, bool ask
return false;
// add duplicates
QList<IEditor *> duplicates;
foreach(IEditor *editor, acceptedEditors)
acceptedEditors += d->m_editorModel->duplicatesFor(editor);
duplicates += d->m_editorModel->duplicatesFor(editor);
acceptedEditors += duplicates;
QList<EditorView*> closedViews;
@@ -914,8 +916,13 @@ bool EditorManager::closeEditors(const QList<IEditor*> &editorsToClose, bool ask
activateEditor(view, newCurrent, NoActivate);
} else {
QModelIndex idx = d->m_editorModel->firstRestoredEditor();
if (idx.isValid())
if (idx.isValid()) {
activateEditorForIndex(view, idx, NoActivate);
} else {
const QList<IEditor *> editors = d->m_editorModel->editors();
if (!editors.isEmpty())
activateEditor(view, editors.last(), NoActivate);
}
}
}