From 87faa62fa0606ac09de949cb3e5e4621f1a3b51d Mon Sep 17 00:00:00 2001 From: Tobias Hunger Date: Mon, 12 Jan 2015 14:04:27 +0100 Subject: [PATCH] QmlJsTools: Use the startup project for context in the code model ProjectTree::currentProject is not the right project to track. Change-Id: Ia9da32a24e73565c4b9a3739c4000c13b803375f Reviewed-by: Fawzi Mohamed --- src/plugins/projectexplorer/currentprojectfilter.cpp | 2 ++ src/plugins/projectexplorer/currentprojectfind.cpp | 2 ++ src/plugins/qmljstools/qmljsmodelmanager.cpp | 8 ++++---- 3 files changed, 8 insertions(+), 4 deletions(-) diff --git a/src/plugins/projectexplorer/currentprojectfilter.cpp b/src/plugins/projectexplorer/currentprojectfilter.cpp index 8956f7f036a..066b74b9c99 100644 --- a/src/plugins/projectexplorer/currentprojectfilter.cpp +++ b/src/plugins/projectexplorer/currentprojectfilter.cpp @@ -51,6 +51,8 @@ CurrentProjectFilter::CurrentProjectFilter() connect(ProjectTree::instance(), &ProjectTree::currentProjectChanged, this, &CurrentProjectFilter::currentProjectChanged); + connect(SessionManager::instance(), &SessionManager::startupProjectChanged, + this, &CurrentProjectFilter::currentProjectChanged); } void CurrentProjectFilter::markFilesAsOutOfDate() diff --git a/src/plugins/projectexplorer/currentprojectfind.cpp b/src/plugins/projectexplorer/currentprojectfind.cpp index 235f5e7ef25..03aa5b726fa 100644 --- a/src/plugins/projectexplorer/currentprojectfind.cpp +++ b/src/plugins/projectexplorer/currentprojectfind.cpp @@ -48,6 +48,8 @@ CurrentProjectFind::CurrentProjectFind() { connect(ProjectTree::instance(), &ProjectTree::currentProjectChanged, this, &CurrentProjectFind::handleProjectChanged); + connect(SessionManager::instance(), &SessionManager::startupProjectChanged, + this, &CurrentProjectFind::handleProjectChanged); connect(SessionManager::instance(), SIGNAL(projectRemoved(ProjectExplorer::Project*)), this, SLOT(handleProjectChanged())); connect(SessionManager::instance(), SIGNAL(projectAdded(ProjectExplorer::Project*)), diff --git a/src/plugins/qmljstools/qmljsmodelmanager.cpp b/src/plugins/qmljstools/qmljsmodelmanager.cpp index bb765cbf939..57cf26440e8 100644 --- a/src/plugins/qmljstools/qmljsmodelmanager.cpp +++ b/src/plugins/qmljstools/qmljsmodelmanager.cpp @@ -223,9 +223,9 @@ void ModelManager::delayedInitialization() this, SLOT(maybeQueueCppQmlTypeUpdate(CPlusPlus::Document::Ptr)), Qt::DirectConnection); } - connect(ProjectExplorer::SessionManager::instance(), SIGNAL(projectRemoved(ProjectExplorer::Project*)), - this, SLOT(removeProjectInfo(ProjectExplorer::Project*))); - connect(ProjectExplorer::ProjectTree::instance(), &ProjectExplorer::ProjectTree::currentProjectChanged, + connect(ProjectExplorer::SessionManager::instance(), &ProjectExplorer::SessionManager::projectRemoved, + this, &ModelManager::removeProjectInfo); + connect(ProjectExplorer::SessionManager::instance(), &ProjectExplorer::SessionManager::startupProjectChanged, this, &ModelManager::updateDefaultProjectInfo); QmlJS::ViewerContext qbsVContext; @@ -265,7 +265,7 @@ ModelManagerInterface::WorkingCopy ModelManager::workingCopyInternal() const void ModelManager::updateDefaultProjectInfo() { // needs to be performed in the ui thread - ProjectExplorer::Project *currentProject = ProjectExplorer::ProjectTree::currentProject(); + ProjectExplorer::Project *currentProject = ProjectExplorer::SessionManager::startupProject(); ProjectInfo newDefaultProjectInfo = projectInfo(currentProject, defaultProjectInfoForProject(currentProject)); setDefaultProject(projectInfo(currentProject,newDefaultProjectInfo), currentProject);