OSDN Git Service

Don't switch away from debug mode when jumping to line via locator
authorcon <qtc-committer@nokia.com>
Wed, 1 Dec 2010 14:08:43 +0000 (15:08 +0100)
committercon <qtc-committer@nokia.com>
Wed, 1 Dec 2010 14:09:09 +0000 (15:09 +0100)
Task-number: QTCREATORBUG-3192

src/plugins/coreplugin/editormanager/editormanager.cpp
src/plugins/coreplugin/modemanager.cpp
src/plugins/texteditor/linenumberfilter.cpp

index 65b8c9a..098ba06 100644 (file)
@@ -1272,9 +1272,7 @@ void EditorManager::switchToPreferedMode()
     if (preferedMode.isEmpty())
         preferedMode = Constants::MODE_EDIT_TYPE;
 
-    if (m_d->m_core->modeManager()->currentMode()->type() != preferedMode) {
-        m_d->m_core->modeManager()->activateModeType(preferedMode);
-    }
+    m_d->m_core->modeManager()->activateModeType(preferedMode);
 }
 
 IEditor *EditorManager::openEditorWithContents(const QString &editorId,
index bffafcb..bd1814b 100644 (file)
@@ -151,6 +151,8 @@ IMode *ModeManager::mode(const QString &id) const
 
 void ModeManager::activateModeType(const QString &type)
 {
+    if (currentMode() && currentMode()->type() == type)
+        return;
     int index = -1;
     for (int i = 0; i < d->m_modes.count(); ++i) {
         if (d->m_modes.at(i)->type() == type) {
index 710b5ce..c8554dc 100644 (file)
@@ -66,7 +66,7 @@ void LineNumberFilter::accept(FilterEntry selection) const
         editorManager->addCurrentPositionToNavigationHistory();
         editor->gotoLine(selection.internalData.toInt());
         editor->widget()->setFocus();
-        Core::ModeManager::instance()->activateMode(Core::Constants::MODE_EDIT);
+        Core::ModeManager::instance()->activateModeType(Core::Constants::MODE_EDIT_TYPE);
     }
 }