Immediately return the default device if is found

Task-number: QTCREATORBUG-15422
Change-Id: I7be44fbe43c320c171ffb724ffd25414e184fd9a
Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>
This commit is contained in:
BogDan Vatra
2015-12-04 10:03:45 +02:00
parent 255611f3e7
commit 957c0af570
5 changed files with 45 additions and 75 deletions

View File

@@ -688,7 +688,7 @@ bool AndroidConfig::removeAVD(const QString &name) const
return !proc.exitCode();
}
QFuture<QVector<AndroidDeviceInfo>> AndroidConfig::androidVirtualDevicesFuture()
QFuture<QVector<AndroidDeviceInfo>> AndroidConfig::androidVirtualDevicesFuture() const
{
return QtConcurrent::run(&AndroidConfig::androidVirtualDevices, androidToolPath().toString(), androidToolEnvironment());
}
@@ -1177,17 +1177,14 @@ AndroidDeviceInfo AndroidConfigurations::showDeviceDialog(Project *project,
{
QString serialNumber = defaultDevice(project, abi);
AndroidDeviceDialog dialog(apiLevel, abi, options, serialNumber, Core::ICore::mainWindow());
if (dialog.exec() == QDialog::Accepted) {
AndroidDeviceInfo info = dialog.device();
if (dialog.saveDeviceSelection()) {
const QString serialNumber = info.type == AndroidDeviceInfo::Hardware ?
info.serialNumber : info.avdname;
if (!serialNumber.isEmpty())
AndroidConfigurations::setDefaultDevice(project, abi, serialNumber);
}
return info;
AndroidDeviceInfo info = dialog.device();
if (dialog.saveDeviceSelection() && info.isValid()) {
const QString serialNumber = info.type == AndroidDeviceInfo::Hardware ?
info.serialNumber : info.avdname;
if (!serialNumber.isEmpty())
AndroidConfigurations::setDefaultDevice(project, abi, serialNumber);
}
return AndroidDeviceInfo();
return info;
}
void AndroidConfigurations::clearDefaultDevices(Project *project)