Android: add refresh button for AVD list

* Added refresh button
* Moved startUpdateAvd() from updateUI() to AndroidSettingsWidget()
to avoid long load of AVD Manager UI.

Task-number: QTCREATORBUG-23284
Change-Id: I5128184f90437527d0a4a877bd277de1e6dbfad7
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
This commit is contained in:
Assam Boudjelthia
2019-12-20 16:41:25 +02:00
parent 69bcf7ca60
commit 50a3dae4dd
2 changed files with 12 additions and 4 deletions

View File

@@ -286,6 +286,8 @@ AndroidSettingsWidget::AndroidSettingsWidget()
connect(&m_virtualDevicesWatcher, &QFutureWatcherBase::finished,
this, &AndroidSettingsWidget::updateAvds);
connect(m_ui->AVDRefreshPushButton, &QAbstractButton::clicked,
this, &AndroidSettingsWidget::startUpdateAvd);
connect(&m_futureWatcher, &QFutureWatcherBase::finished,
this, &AndroidSettingsWidget::avdAdded);
connect(m_ui->NDKLocationPathChooser, &Utils::PathChooser::rawPathChanged,
@@ -324,6 +326,8 @@ AndroidSettingsWidget::AndroidSettingsWidget()
// Reloading SDK packages is still synchronous. Use zero timer to let settings dialog open
// first.
QTimer::singleShot(0, std::bind(&AndroidSdkManager::reloadPackages, m_sdkManager.get(), false));
startUpdateAvd();
}
AndroidSettingsWidget::~AndroidSettingsWidget()
@@ -548,7 +552,6 @@ void AndroidSettingsWidget::updateUI()
Utils::DetailsWidget::Expanded);
m_ui->androidDetailsWidget->setState(androidSetupOk ? Utils::DetailsWidget::Collapsed :
Utils::DetailsWidget::Expanded);
startUpdateAvd();
}
void AndroidSettingsWidget::manageAVD()

View File

@@ -304,6 +304,13 @@
</property>
</widget>
</item>
<item>
<widget class="QPushButton" name="AVDRefreshPushButton">
<property name="text">
<string>Refresh List</string>
</property>
</widget>
</item>
<item>
<spacer name="verticalSpacer">
<property name="orientation">
@@ -351,8 +358,6 @@
<container>1</container>
</customwidget>
</customwidgets>
<resources>
<include location="android.qrc"/>
</resources>
<resources/>
<connections/>
</ui>