From 697df8917889d7d3a16d66ecf85411f90a24c602 Mon Sep 17 00:00:00 2001 From: Jarek Kobus Date: Tue, 19 Jul 2022 16:17:08 +0200 Subject: [PATCH] ProgressManager: Avoid using sender() Change-Id: Ifb28b5b3d95e99c29e2a9b76a5fd73279a96f92f Reviewed-by: Eike Ziller Reviewed-by: --- .../progressmanager/progressmanager.cpp | 15 +++++---------- .../progressmanager/progressmanager_p.h | 1 - 2 files changed, 5 insertions(+), 11 deletions(-) diff --git a/src/plugins/coreplugin/progressmanager/progressmanager.cpp b/src/plugins/coreplugin/progressmanager/progressmanager.cpp index cac1b2bc427..0bf4ac62298 100644 --- a/src/plugins/coreplugin/progressmanager/progressmanager.cpp +++ b/src/plugins/coreplugin/progressmanager/progressmanager.cpp @@ -439,7 +439,11 @@ FutureProgress *ProgressManagerPrivate::doAddTask(const QFuture &future, c progress->setKeepOnFinish(FutureProgress::HideOnFinish); connect(progress, &FutureProgress::hasErrorChanged, this, &ProgressManagerPrivate::updateSummaryProgressBar); - connect(progress, &FutureProgress::removeMe, this, &ProgressManagerPrivate::slotRemoveTask); + connect(progress, &FutureProgress::removeMe, this, [this, progress] { + const Id type = progress->type(); + removeTask(progress); + removeOldTasks(type, true); + }); connect(progress, &FutureProgress::fadeStarted, this, &ProgressManagerPrivate::updateSummaryProgressBar); connect(progress, &FutureProgress::statusBarWidgetChanged, @@ -548,15 +552,6 @@ bool ProgressManagerPrivate::isLastFading() const return true; } -void ProgressManagerPrivate::slotRemoveTask() -{ - auto progress = qobject_cast(sender()); - QTC_ASSERT(progress, return); - Id type = progress->type(); - removeTask(progress); - removeOldTasks(type, true); -} - void ProgressManagerPrivate::removeOldTasks(const Id type, bool keepOne) { bool firstFound = !keepOne; // start with false if we want to keep one diff --git a/src/plugins/coreplugin/progressmanager/progressmanager_p.h b/src/plugins/coreplugin/progressmanager/progressmanager_p.h index b28ad4f711d..f7483283d16 100644 --- a/src/plugins/coreplugin/progressmanager/progressmanager_p.h +++ b/src/plugins/coreplugin/progressmanager/progressmanager_p.h @@ -81,7 +81,6 @@ private: void updateVisibilityWithDelay(); void updateStatusDetailsWidget(); - void slotRemoveTask(); void readSettings(); void initInternal(); void stopFadeOfSummaryProgress();