diff --git a/src/plugins/projectexplorer/projectexplorer.cpp b/src/plugins/projectexplorer/projectexplorer.cpp
index e685ff962b4dbef5780fcc9d13850ce2ed8c92b5..4d16d44c43cf1d977504151cae55d149417e96f7 100644
--- a/src/plugins/projectexplorer/projectexplorer.cpp
+++ b/src/plugins/projectexplorer/projectexplorer.cpp
@@ -239,6 +239,7 @@ struct ProjectExplorerPluginPrivate {
     Core::IMode *m_projectsMode;
 
     ToolChainManager *m_toolChainManager;
+    TaskHub *m_taskHub;
 };
 
 ProjectExplorerPluginPrivate::ProjectExplorerPluginPrivate() :
@@ -328,7 +329,8 @@ bool ProjectExplorerPlugin::initialize(const QStringList &arguments, QString *er
 
     addAutoReleasedObject(new Internal::ToolChainOptionsPage);
 
-    addAutoReleasedObject(new TaskHub);
+    d->m_taskHub = new TaskHub;
+    addAutoReleasedObject(d->m_taskHub);
 
     Core::ActionManager *am = Core::ICore::actionManager();
     connect(Core::ICore::instance(), SIGNAL(newItemsDialogRequested()), this, SLOT(loadCustomWizards()));
@@ -1553,6 +1555,11 @@ BuildManager *ProjectExplorerPlugin::buildManager() const
     return d->m_buildManager;
 }
 
+TaskHub *ProjectExplorerPlugin::taskHub() const
+{
+    return d->m_taskHub;
+}
+
 void ProjectExplorerPlugin::buildStateChanged(Project * pro)
 {
     if (debug) {
diff --git a/src/plugins/projectexplorer/projectexplorer.h b/src/plugins/projectexplorer/projectexplorer.h
index d84b6b5ed84ad505aba177a5a52db91af9dab137..fc6bdb8b2ec76ea1385b4e2b4d254b14f383c6b6 100644
--- a/src/plugins/projectexplorer/projectexplorer.h
+++ b/src/plugins/projectexplorer/projectexplorer.h
@@ -60,6 +60,7 @@ class Project;
 class Node;
 class BuildConfiguration;
 class ProjectNode;
+class TaskHub;
 
 namespace Internal {
 struct ProjectExplorerSettings;
@@ -93,6 +94,7 @@ public:
     Project *startupProject() const;
 
     BuildManager *buildManager() const;
+    TaskHub *taskHub() const;
 
     bool saveModifiedFiles();