Android: Reuse withCancel()

Simplify the recipe by reusing withCancel() helper.

Change-Id: I79c583fa3f0bedc7a3c0c3cfa99f5c506f07336b
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
This commit is contained in:
Jarek Kobus
2024-04-25 12:02:37 +02:00
parent 947ce1659b
commit 7bd8d963ab

View File

@@ -204,24 +204,17 @@ GroupItem downloadSdkRecipe()
androidConfig().setTemporarySdkToolsPath(
storage->sdkFileName->parentDir().pathAppended(Constants::cmdlineToolsName));
};
const auto onCanceled = [storage](Barrier &barrier) {
// Avoid deleting progress dialog from its signal handler.
QObject::connect(storage->progressDialog.get(), &QProgressDialog::canceled,
&barrier, &Barrier::advance, Qt::QueuedConnection);
};
const auto onCancelSetup = [storage] { return std::make_pair(storage->progressDialog.get(),
&QProgressDialog::canceled); };
return Group {
storage,
parallel,
stopOnSuccessOrError,
Group {
onGroupSetup(onSetup),
NetworkQueryTask(onQuerySetup, onQueryDone),
AsyncTask<void>(onValidationSetup, onValidationDone),
UnarchiverTask(onUnarchiveSetup, onUnarchiverDone)
},
BarrierTask(onCanceled, [] { return DoneResult::Error; })
}.withCancel(onCancelSetup)
};
}