From 8a8c49eb2ebfbb4fc94207b304f8b785c28cf510 Mon Sep 17 00:00:00 2001 From: hjk Date: Fri, 28 Feb 2020 15:54:54 +0100 Subject: [PATCH] ProjectExplorer: Simplify update logic after active target change Change-Id: Ia1d9366b1f2ff2b7ae02604bc43b38ca4b914c17 Reviewed-by: Christian Kandeler --- src/plugins/projectexplorer/project.cpp | 1 + .../projectexplorer/projectexplorer.cpp | 41 ------------------- 2 files changed, 1 insertion(+), 41 deletions(-) diff --git a/src/plugins/projectexplorer/project.cpp b/src/plugins/projectexplorer/project.cpp index af07fa7e5d6..5aa448b03b9 100644 --- a/src/plugins/projectexplorer/project.cpp +++ b/src/plugins/projectexplorer/project.cpp @@ -340,6 +340,7 @@ void Project::setActiveTarget(Target *target) (target && Utils::contains(d->m_targets, target))) { d->m_activeTarget = target; emit activeTargetChanged(d->m_activeTarget); + ProjectExplorerPlugin::updateActions(); } } diff --git a/src/plugins/projectexplorer/projectexplorer.cpp b/src/plugins/projectexplorer/projectexplorer.cpp index 9e21e88fb6d..862ea2864a5 100644 --- a/src/plugins/projectexplorer/projectexplorer.cpp +++ b/src/plugins/projectexplorer/projectexplorer.cpp @@ -448,8 +448,6 @@ public: void projectAdded(ProjectExplorer::Project *pro); void projectRemoved(ProjectExplorer::Project *pro); void projectDisplayNameChanged(ProjectExplorer::Project *pro); - void startupProjectChanged(); // Calls updateRunAction - void activeTargetChanged(); void doUpdateRunActions(); @@ -727,8 +725,6 @@ bool ProjectExplorerPlugin::initialize(const QStringList &arguments, QString *er dd, &ProjectExplorerPluginPrivate::projectAdded); connect(sessionManager, &SessionManager::projectRemoved, dd, &ProjectExplorerPluginPrivate::projectRemoved); - connect(sessionManager, &SessionManager::startupProjectChanged, - dd, &ProjectExplorerPluginPrivate::startupProjectChanged); connect(sessionManager, &SessionManager::projectDisplayNameChanged, dd, &ProjectExplorerPluginPrivate::projectDisplayNameChanged); connect(sessionManager, &SessionManager::dependencyChanged, @@ -2922,43 +2918,6 @@ void ProjectExplorerPluginPrivate::projectDisplayNameChanged(Project *pro) updateActions(); } -void ProjectExplorerPluginPrivate::startupProjectChanged() -{ - static QPointer previousStartupProject = nullptr; - Project *project = SessionManager::startupProject(); - if (project == previousStartupProject) - return; - - if (previousStartupProject) { - disconnect(previousStartupProject.data(), &Project::activeTargetChanged, - this, &ProjectExplorerPluginPrivate::activeTargetChanged); - } - - previousStartupProject = project; - - if (project) { - connect(project, &Project::activeTargetChanged, - this, &ProjectExplorerPluginPrivate::activeTargetChanged); - } - - activeTargetChanged(); - updateActions(); -} - -void ProjectExplorerPluginPrivate::activeTargetChanged() -{ - static QPointer previousTarget = nullptr; - Target *target = nullptr; - Project *startupProject = SessionManager::startupProject(); - if (startupProject) - target = startupProject->activeTarget(); - if (target == previousTarget) - return; - - previousTarget = target; - updateActions(); -} - void ProjectExplorerPluginPrivate::updateDeployActions() { Project *project = SessionManager::startupProject();