diff --git a/src/plugins/clearcase/clearcaseplugin.cpp b/src/plugins/clearcase/clearcaseplugin.cpp index 31932af280da1fbc77d79ff0b0e62adda91a8c88..1a474a7f637a436b67af4d29684707e65913d9bb 100644 --- a/src/plugins/clearcase/clearcaseplugin.cpp +++ b/src/plugins/clearcase/clearcaseplugin.cpp @@ -1530,7 +1530,6 @@ IEditor *ClearCasePlugin::showOutputInEditor(const QString& title, const QString e->setSource(source); if (codec) e->setCodec(codec); - EditorManager::activateEditor(editor); return editor; } diff --git a/src/plugins/coreplugin/editormanager/editormanager.cpp b/src/plugins/coreplugin/editormanager/editormanager.cpp index 20c853e39bfaccd6a73816f80e7c46f19713e2c5..51cec16c322506efeb72353e3758ed4f0655172e 100644 --- a/src/plugins/coreplugin/editormanager/editormanager.cpp +++ b/src/plugins/coreplugin/editormanager/editormanager.cpp @@ -1657,11 +1657,15 @@ QStringList EditorManager::getOpenFileNames() IEditor *EditorManager::openEditorWithContents(const Id &editorId, QString *titlePattern, - const QByteArray &contents) + const QByteArray &contents, + OpenEditorFlags flags) { if (debugEditorManager) qDebug() << Q_FUNC_INFO << editorId.name() << titlePattern << contents; + if (flags & EditorManager::OpenInOtherSplit) + m_instance->gotoOtherSplit(); + QApplication::setOverrideCursor(QCursor(Qt::WaitCursor)); QString title; @@ -1712,6 +1716,7 @@ IEditor *EditorManager::openEditorWithContents(const Id &editorId, m_instance->addEditor(edt); QApplication::restoreOverrideCursor(); + activateEditor(edt, flags); return edt; } diff --git a/src/plugins/coreplugin/editormanager/editormanager.h b/src/plugins/coreplugin/editormanager/editormanager.h index 3c5ab171e8ae103f42b62e0984dfcc493b3e41c6..d84f4caa2ea27bd3bacea096358a8d76a627da0c 100644 --- a/src/plugins/coreplugin/editormanager/editormanager.h +++ b/src/plugins/coreplugin/editormanager/editormanager.h @@ -113,8 +113,9 @@ public: static IEditor *openEditorAt(const QString &fileName, int line, int column = 0, const Id &editorId = Id(), OpenEditorFlags flags = NoFlags, bool *newEditor = 0); - static IEditor *openEditorWithContents(const Id &editorId, - QString *titlePattern = 0, const QByteArray &contents = QByteArray()); + static IEditor *openEditorWithContents(const Id &editorId, QString *titlePattern = 0, + const QByteArray &contents = QByteArray(), + OpenEditorFlags flags = NoFlags); static bool openExternalEditor(const QString &fileName, const Id &editorId); diff --git a/src/plugins/cvs/cvsplugin.cpp b/src/plugins/cvs/cvsplugin.cpp index fcca910b39de005d631760b20d1cf4c095cdb324..9e7bb2fe472b426ae9c94a1736c0eaf96eb9d048 100644 --- a/src/plugins/cvs/cvsplugin.cpp +++ b/src/plugins/cvs/cvsplugin.cpp @@ -1182,7 +1182,6 @@ IEditor *CvsPlugin::showOutputInEditor(const QString& title, const QString &outp e->setSource(source); if (codec) e->setCodec(codec); - EditorManager::activateEditor(editor); return editor; } diff --git a/src/plugins/debugger/debuggerplugin.cpp b/src/plugins/debugger/debuggerplugin.cpp index 2ea8a67fa574b2210dc575b4a532f66d87b69eb6..b4160c83759919fa91e9c06d51f5691f8300774a 100644 --- a/src/plugins/debugger/debuggerplugin.cpp +++ b/src/plugins/debugger/debuggerplugin.cpp @@ -2542,9 +2542,9 @@ void DebuggerPluginPrivate::openTextEditor(const QString &titlePattern0, return; QString titlePattern = titlePattern0; IEditor *editor = EditorManager::openEditorWithContents( - CC::K_DEFAULT_TEXT_EDITOR_ID, &titlePattern, contents.toUtf8()); + CC::K_DEFAULT_TEXT_EDITOR_ID, &titlePattern, contents.toUtf8(), + EditorManager::IgnoreNavigationHistory); QTC_ASSERT(editor, return); - EditorManager::activateEditor(editor, EditorManager::IgnoreNavigationHistory); } void DebuggerPluginPrivate::showMessage(const QString &msg, int channel, int timeout) diff --git a/src/plugins/debugger/disassembleragent.cpp b/src/plugins/debugger/disassembleragent.cpp index 2fec3926871de9851ef42dba6951aec9e1597606..974c5abb86fc14e6f64e35ce476b338cb45242fe 100644 --- a/src/plugins/debugger/disassembleragent.cpp +++ b/src/plugins/debugger/disassembleragent.cpp @@ -316,10 +316,10 @@ void DisassemblerAgent::setContentsToEditor(const DisassemblerLines &contents) qobject_cast<BaseTextEditorWidget *>(d->editor->widget()); if (baseTextEdit) baseTextEdit->setRequestMarkEnabled(true); + } else { + EditorManager::activateEditor(d->editor); } - EditorManager::activateEditor(d->editor); - QPlainTextEdit *plainTextEdit = qobject_cast<QPlainTextEdit *>(d->editor->widget()); QTC_ASSERT(plainTextEdit, return); diff --git a/src/plugins/debugger/memoryagent.cpp b/src/plugins/debugger/memoryagent.cpp index 8f8d14a1d61752e50daf3a723932c92e42293167..4dc53de8256a50a2ed3392d107efcd77e19101b1 100644 --- a/src/plugins/debugger/memoryagent.cpp +++ b/src/plugins/debugger/memoryagent.cpp @@ -188,7 +188,6 @@ bool MemoryAgent::doCreateBinEditor(quint64 addr, unsigned flags, MemoryView::setBinEditorRange(editorBinEditor, addr, MemoryAgent::DataRange, MemoryAgent::BinBlockSize); MemoryView::setBinEditorMarkup(editorBinEditor, ml); m_editors << editor; - EditorManager::activateEditor(editor); return true; } diff --git a/src/plugins/debugger/sourceagent.cpp b/src/plugins/debugger/sourceagent.cpp index ddcd76e1322242f5d4724963549160e220c2bc5f..bade9f6961990f36a6e656b56ed5cee8f4fd1370 100644 --- a/src/plugins/debugger/sourceagent.cpp +++ b/src/plugins/debugger/sourceagent.cpp @@ -120,10 +120,10 @@ void SourceAgent::setContent(const QString &filePath, const QString &content) qobject_cast<BaseTextEditorWidget *>(d->editor->widget()); if (baseTextEdit) baseTextEdit->setRequestMarkEnabled(true); + } else { + EditorManager::activateEditor(d->editor); } - EditorManager::activateEditor(d->editor); - QPlainTextEdit *plainTextEdit = qobject_cast<QPlainTextEdit *>(d->editor->widget()); QTC_ASSERT(plainTextEdit, return); diff --git a/src/plugins/diffeditor/diffeditorplugin.cpp b/src/plugins/diffeditor/diffeditorplugin.cpp index afe74fbd98f7fda31fe9d98e186613f09ffb7002..f87d3851996d98e13c7e21160eb491f9b9c7fe16 100644 --- a/src/plugins/diffeditor/diffeditorplugin.cpp +++ b/src/plugins/diffeditor/diffeditorplugin.cpp @@ -107,8 +107,6 @@ void DiffEditorPlugin::diff() if (!editor) return; - Core::EditorManager::activateEditor(editor); - const QString text1 = getFileContents(fileName1); const QString text2 = getFileContents(fileName2); diff --git a/src/plugins/git/gitclient.cpp b/src/plugins/git/gitclient.cpp index 1de0b04c41f37ca2c01c2f41e7f1ee54f94d5cf6..b2a9081d9d3e615f9c8e7dfdd5709366b3cf1eab 100644 --- a/src/plugins/git/gitclient.cpp +++ b/src/plugins/git/gitclient.cpp @@ -1140,7 +1140,6 @@ VcsBase::VcsBaseEditorWidget *GitClient::createVcsEditor( } rc->setForceReadOnly(true); - Core::EditorManager::activateEditor(outputEditor); if (configWidget) rc->setConfigurationWidget(configWidget); diff --git a/src/plugins/perforce/perforceplugin.cpp b/src/plugins/perforce/perforceplugin.cpp index f54712ec5e03f603aadd9345eea5ab6e909893e4..aea4f4b6b603016150f5b74f311238fd494363e7 100644 --- a/src/plugins/perforce/perforceplugin.cpp +++ b/src/plugins/perforce/perforceplugin.cpp @@ -1194,7 +1194,6 @@ Core::IEditor *PerforcePlugin::showOutputInEditor(const QString &title, const QS e->baseTextDocument()->setSuggestedFileName(s); if (codec) e->setCodec(codec); - Core::EditorManager::activateEditor(editor); return editor; } diff --git a/src/plugins/subversion/subversionplugin.cpp b/src/plugins/subversion/subversionplugin.cpp index cd8de10eb4cb881de162db98e7741af1f2313d41..8a80326adc6f8ce145f02a12de7aa4b401633205 100644 --- a/src/plugins/subversion/subversionplugin.cpp +++ b/src/plugins/subversion/subversionplugin.cpp @@ -1036,7 +1036,6 @@ Core::IEditor *SubversionPlugin::showOutputInEditor(const QString &title, const e->setSource(source); if (codec) e->setCodec(codec); - Core::EditorManager::activateEditor(editor); return editor; } diff --git a/src/plugins/vcsbase/vcsbaseclient.cpp b/src/plugins/vcsbase/vcsbaseclient.cpp index b4ff6833d89872c619ea93722245cc764265ed0c..21ef4dd5efb360ad47c2d6000079a1956ce3aaad 100644 --- a/src/plugins/vcsbase/vcsbaseclient.cpp +++ b/src/plugins/vcsbase/vcsbaseclient.cpp @@ -574,6 +574,7 @@ VcsBase::VcsBaseEditorWidget *VcsBaseClient::createVcsEditor(Core::Id kind, QStr outputEditor->document()->setContents(progressMsg.toUtf8()); baseEditor = VcsBase::VcsBaseEditorWidget::getVcsBaseEditor(outputEditor); QTC_ASSERT(baseEditor, return 0); + Core::EditorManager::activateEditor(outputEditor); } else { outputEditor = Core::EditorManager::openEditorWithContents(kind, &title, progressMsg.toUtf8()); outputEditor->document()->setProperty(registerDynamicProperty, dynamicPropertyValue); @@ -587,7 +588,6 @@ VcsBase::VcsBaseEditorWidget *VcsBaseClient::createVcsEditor(Core::Id kind, QStr } baseEditor->setForceReadOnly(true); - Core::EditorManager::activateEditor(outputEditor); return baseEditor; }