forked from qt-creator/qt-creator
onResultReady: Provide a context object for all usages
Remove overloads for onResultReady() and onFinished() that don't take context object. Change-Id: Iaec538bcccd29e22791ec65cc95b4b87640708c3 Reviewed-by: Eike Ziller <eike.ziller@qt.io> Reviewed-by: <github-actions-qt-creator@cristianadam.eu> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
This commit is contained in:
@@ -61,10 +61,10 @@ CreateSimulatorDialog::CreateSimulatorDialog(QWidget *parent)
|
||||
});
|
||||
|
||||
m_futureSync.setCancelOnWait(true);
|
||||
m_futureSync.addFuture(Utils::onResultReady(SimulatorControl::updateDeviceTypes(), this,
|
||||
m_futureSync.addFuture(Utils::onResultReady(SimulatorControl::updateDeviceTypes(this), this,
|
||||
&CreateSimulatorDialog::populateDeviceTypes));
|
||||
|
||||
QFuture<QList<RuntimeInfo>> runtimesfuture = SimulatorControl::updateRuntimes();
|
||||
QFuture<QList<RuntimeInfo>> runtimesfuture = SimulatorControl::updateRuntimes(this);
|
||||
Utils::onResultReady(runtimesfuture, this, [this](const QList<RuntimeInfo> &runtimes) {
|
||||
m_runtimes = runtimes;
|
||||
});
|
||||
|
||||
@@ -404,7 +404,7 @@ void IosConfigurations::updateSimulators()
|
||||
dev = IDevice::ConstPtr(new IosSimulator(devId));
|
||||
devManager->addDevice(dev);
|
||||
}
|
||||
SimulatorControl::updateAvailableSimulators();
|
||||
SimulatorControl::updateAvailableSimulators(this);
|
||||
}
|
||||
|
||||
void IosConfigurations::setDeveloperPath(const FilePath &devPath)
|
||||
|
||||
@@ -175,7 +175,7 @@ void IosSettingsWidget::onStart()
|
||||
Utils::StdErrFormat);
|
||||
} else {
|
||||
futureList << QFuture<void>(Utils::onResultReady(
|
||||
SimulatorControl::startSimulator(info.identifier),
|
||||
SimulatorControl::startSimulator(info.identifier), this,
|
||||
std::bind(onSimOperation, info, statusDialog, Tr::tr("simulator start"), _1)));
|
||||
}
|
||||
}
|
||||
@@ -207,11 +207,9 @@ void IosSettingsWidget::onCreate()
|
||||
|
||||
CreateSimulatorDialog createDialog(this);
|
||||
if (createDialog.exec() == QDialog::Accepted) {
|
||||
QFuture<void> f = QFuture<void>(
|
||||
Utils::onResultReady(SimulatorControl::createSimulator(createDialog.name(),
|
||||
createDialog.deviceType(),
|
||||
createDialog.runtime()),
|
||||
std::bind(onSimulatorCreate, createDialog.name(), _1)));
|
||||
QFuture<void> f = QFuture<void>(Utils::onResultReady(SimulatorControl::createSimulator(
|
||||
createDialog.name(), createDialog.deviceType(), createDialog.runtime()),
|
||||
this, std::bind(onSimulatorCreate, createDialog.name(), _1)));
|
||||
statusDialog->addFutures({ f });
|
||||
statusDialog->exec(); // Modal dialog returns only when all the operations are done or cancelled.
|
||||
}
|
||||
@@ -242,7 +240,7 @@ void IosSettingsWidget::onReset()
|
||||
QList<QFuture<void>> futureList;
|
||||
for (const SimulatorInfo &info : simulatorInfoList) {
|
||||
futureList << QFuture<void>(Utils::onResultReady(
|
||||
SimulatorControl::resetSimulator(info.identifier),
|
||||
SimulatorControl::resetSimulator(info.identifier), this,
|
||||
std::bind(onSimOperation, info, statusDialog, Tr::tr("simulator reset"), _1)));
|
||||
}
|
||||
|
||||
@@ -270,7 +268,7 @@ void IosSettingsWidget::onRename()
|
||||
statusDialog->setAttribute(Qt::WA_DeleteOnClose);
|
||||
statusDialog->addMessage(Tr::tr("Renaming simulator device..."), Utils::NormalMessageFormat);
|
||||
QFuture<void> f = QFuture<void>(Utils::onResultReady(
|
||||
SimulatorControl::renameSimulator(simInfo.identifier, newName),
|
||||
SimulatorControl::renameSimulator(simInfo.identifier, newName), this,
|
||||
std::bind(onSimOperation, simInfo, statusDialog, Tr::tr("simulator rename"), _1)));
|
||||
statusDialog->addFutures({f});
|
||||
statusDialog->exec(); // Modal dialog returns only when all the operations are done or cancelled.
|
||||
@@ -300,7 +298,7 @@ void IosSettingsWidget::onDelete()
|
||||
QList<QFuture<void>> futureList;
|
||||
for (const SimulatorInfo &info : simulatorInfoList) {
|
||||
futureList << QFuture<void>(Utils::onResultReady(
|
||||
SimulatorControl::deleteSimulator(info.identifier),
|
||||
SimulatorControl::deleteSimulator(info.identifier), this,
|
||||
std::bind(onSimOperation, info, statusDialog, Tr::tr("simulator delete"), _1)));
|
||||
}
|
||||
|
||||
@@ -331,7 +329,7 @@ void IosSettingsWidget::onScreenshot()
|
||||
QList<QFuture<void>> futureList;
|
||||
for (const SimulatorInfo &info : simulatorInfoList) {
|
||||
futureList << QFuture<void>(Utils::onResultReady(
|
||||
SimulatorControl::takeSceenshot(info.identifier, generatePath(info)),
|
||||
SimulatorControl::takeSceenshot(info.identifier, generatePath(info)), this,
|
||||
std::bind(onSimOperation, info, statusDialog, Tr::tr("simulator screenshot"), _1)));
|
||||
}
|
||||
|
||||
|
||||
@@ -815,8 +815,8 @@ void IosSimulatorToolHandlerPrivate::requestTransferApp(const QString &appBundle
|
||||
if (SimulatorControl::isSimulatorRunning(m_deviceId))
|
||||
installAppOnSimulator();
|
||||
else
|
||||
futureSynchronizer.addFuture(
|
||||
Utils::onResultReady(SimulatorControl::startSimulator(m_deviceId), onSimulatorStart));
|
||||
futureSynchronizer.addFuture(Utils::onResultReady(
|
||||
SimulatorControl::startSimulator(m_deviceId), q, onSimulatorStart));
|
||||
}
|
||||
|
||||
void IosSimulatorToolHandlerPrivate::requestRunApp(const QString &appBundlePath,
|
||||
@@ -852,8 +852,8 @@ void IosSimulatorToolHandlerPrivate::requestRunApp(const QString &appBundlePath,
|
||||
if (SimulatorControl::isSimulatorRunning(m_deviceId))
|
||||
launchAppOnSimulator(extraArgs);
|
||||
else
|
||||
futureSynchronizer.addFuture(
|
||||
Utils::onResultReady(SimulatorControl::startSimulator(m_deviceId), onSimulatorStart));
|
||||
futureSynchronizer.addFuture(Utils::onResultReady(
|
||||
SimulatorControl::startSimulator(m_deviceId), q, onSimulatorStart));
|
||||
}
|
||||
|
||||
void IosSimulatorToolHandlerPrivate::requestDeviceInfo(const QString &deviceId, int timeout)
|
||||
@@ -905,7 +905,7 @@ void IosSimulatorToolHandlerPrivate::installAppOnSimulator()
|
||||
isTransferringApp(m_bundlePath, m_deviceId, 20, 100, "");
|
||||
auto installFuture = SimulatorControl::installApp(m_deviceId,
|
||||
Utils::FilePath::fromString(m_bundlePath));
|
||||
futureSynchronizer.addFuture(Utils::onResultReady(installFuture, onResponseAppInstall));
|
||||
futureSynchronizer.addFuture(Utils::onResultReady(installFuture, q, onResponseAppInstall));
|
||||
}
|
||||
|
||||
void IosSimulatorToolHandlerPrivate::launchAppOnSimulator(const QStringList &extraArgs)
|
||||
@@ -968,16 +968,11 @@ void IosSimulatorToolHandlerPrivate::launchAppOnSimulator(const QStringList &ext
|
||||
}
|
||||
};
|
||||
|
||||
futureSynchronizer.addFuture(
|
||||
Utils::onResultReady(SimulatorControl::launchApp(m_deviceId,
|
||||
bundleId,
|
||||
debugRun,
|
||||
extraArgs,
|
||||
captureConsole ? stdoutFile->fileName()
|
||||
: QString(),
|
||||
captureConsole ? stderrFile->fileName()
|
||||
: QString()),
|
||||
onResponseAppLaunch));
|
||||
futureSynchronizer.addFuture(Utils::onResultReady(SimulatorControl::launchApp(
|
||||
m_deviceId, bundleId, debugRun, extraArgs,
|
||||
captureConsole ? stdoutFile->fileName() : QString(),
|
||||
captureConsole ? stderrFile->fileName() : QString()),
|
||||
q, onResponseAppLaunch));
|
||||
}
|
||||
|
||||
bool IosSimulatorToolHandlerPrivate::isResponseValid(const SimulatorControl::ResponseData &responseData)
|
||||
|
||||
@@ -235,10 +235,10 @@ static QList<SimulatorInfo> getAvailableSimulators()
|
||||
return availableDevices;
|
||||
}
|
||||
|
||||
QFuture<QList<DeviceTypeInfo>> SimulatorControl::updateDeviceTypes()
|
||||
QFuture<QList<DeviceTypeInfo>> SimulatorControl::updateDeviceTypes(QObject *context)
|
||||
{
|
||||
QFuture<QList<DeviceTypeInfo>> future = Utils::asyncRun(getAvailableDeviceTypes);
|
||||
Utils::onResultReady(future, [](const QList<DeviceTypeInfo> &deviceTypes) {
|
||||
Utils::onResultReady(future, context, [](const QList<DeviceTypeInfo> &deviceTypes) {
|
||||
s_availableDeviceTypes = deviceTypes;
|
||||
});
|
||||
return future;
|
||||
@@ -249,20 +249,21 @@ QList<RuntimeInfo> SimulatorControl::availableRuntimes()
|
||||
return s_availableRuntimes;
|
||||
}
|
||||
|
||||
QFuture<QList<RuntimeInfo>> SimulatorControl::updateRuntimes()
|
||||
QFuture<QList<RuntimeInfo>> SimulatorControl::updateRuntimes(QObject *context)
|
||||
{
|
||||
QFuture<QList<RuntimeInfo>> future = Utils::asyncRun(getAvailableRuntimes);
|
||||
Utils::onResultReady(future, [](const QList<RuntimeInfo> &runtimes) {
|
||||
Utils::onResultReady(future, context, [](const QList<RuntimeInfo> &runtimes) {
|
||||
s_availableRuntimes = runtimes;
|
||||
});
|
||||
return future;
|
||||
}
|
||||
|
||||
QFuture<QList<SimulatorInfo>> SimulatorControl::updateAvailableSimulators()
|
||||
QFuture<QList<SimulatorInfo>> SimulatorControl::updateAvailableSimulators(QObject *context)
|
||||
{
|
||||
QFuture<QList<SimulatorInfo>> future = Utils::asyncRun(getAvailableSimulators);
|
||||
Utils::onResultReady(future,
|
||||
[](const QList<SimulatorInfo> &devices) { s_availableDevices = devices; });
|
||||
Utils::onResultReady(future, context, [](const QList<SimulatorInfo> &devices) {
|
||||
s_availableDevices = devices;
|
||||
});
|
||||
return future;
|
||||
}
|
||||
|
||||
|
||||
@@ -65,11 +65,11 @@ public:
|
||||
|
||||
public:
|
||||
static QList<DeviceTypeInfo> availableDeviceTypes();
|
||||
static QFuture<QList<DeviceTypeInfo>> updateDeviceTypes();
|
||||
static QFuture<QList<DeviceTypeInfo>> updateDeviceTypes(QObject *context);
|
||||
static QList<RuntimeInfo> availableRuntimes();
|
||||
static QFuture<QList<RuntimeInfo>> updateRuntimes();
|
||||
static QFuture<QList<RuntimeInfo>> updateRuntimes(QObject *context);
|
||||
static QList<SimulatorInfo> availableSimulators();
|
||||
static QFuture<QList<SimulatorInfo>> updateAvailableSimulators();
|
||||
static QFuture<QList<SimulatorInfo>> updateAvailableSimulators(QObject *context);
|
||||
static bool isSimulatorRunning(const QString &simUdid);
|
||||
static QString bundleIdentifier(const Utils::FilePath &bundlePath);
|
||||
static QString bundleExecutable(const Utils::FilePath &bundlePath);
|
||||
|
||||
@@ -109,7 +109,7 @@ void SimulatorInfoModel::requestSimulatorInfo()
|
||||
if (!m_fetchFuture.isEmpty())
|
||||
return; // Ignore the request if the last request is still pending.
|
||||
|
||||
m_fetchFuture.addFuture(Utils::onResultReady(SimulatorControl::updateAvailableSimulators(),
|
||||
m_fetchFuture.addFuture(Utils::onResultReady(SimulatorControl::updateAvailableSimulators(this),
|
||||
this, &SimulatorInfoModel::populateSimulators));
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user