diff --git a/src/plugins/coreplugin/progressmanager/progressmanager.cpp b/src/plugins/coreplugin/progressmanager/progressmanager.cpp index b356f26faa4..0e66a958d58 100644 --- a/src/plugins/coreplugin/progressmanager/progressmanager.cpp +++ b/src/plugins/coreplugin/progressmanager/progressmanager.cpp @@ -299,7 +299,11 @@ FutureProgress *ProgressManagerPrivate::addTask(const QFuture &future, con m_runningTasks.insert(watcher, type); connect(watcher, SIGNAL(finished()), this, SLOT(taskFinished())); if (flags & ShowInApplicationIcon) { + if (m_applicationTask) + disconnectApplicationTask(); m_applicationTask = watcher; + setApplicationProgressRange(future.progressMinimum(), future.progressMaximum()); + setApplicationProgressValue(future.progressValue()); connect(m_applicationTask, SIGNAL(progressRangeChanged(int,int)), this, SLOT(setApplicationProgressRange(int,int))); connect(m_applicationTask, SIGNAL(progressValueChanged(int)),