From b090401b787aa1c5b462628f8bb89a396c26682a Mon Sep 17 00:00:00 2001 From: Jarek Kobus Date: Thu, 2 May 2024 14:11:14 +0200 Subject: [PATCH] Android: Inline some redirections Get rid of onLicenseCheckResult() and runPendingCommand(). Gather all the continuations inside the packageFutureFinished(). This clears up the picture of what is happening. Change-Id: I7d63fa7a628a0bdefb26677f04df97a0491668ab Reviewed-by: Alessandro Portale --- .../android/androidsdkmanagerwidget.cpp | 37 +++++++------------ src/plugins/android/androidsdkmanagerwidget.h | 2 - 2 files changed, 14 insertions(+), 25 deletions(-) diff --git a/src/plugins/android/androidsdkmanagerwidget.cpp b/src/plugins/android/androidsdkmanagerwidget.cpp index bffe2d4515a..3dd2c1f0a7f 100644 --- a/src/plugins/android/androidsdkmanagerwidget.cpp +++ b/src/plugins/android/androidsdkmanagerwidget.cpp @@ -393,17 +393,6 @@ void AndroidSdkManagerWidget::onOperationResult(int index) m_outputEdit->ensureCursorVisible(); } -void AndroidSdkManagerWidget::onLicenseCheckResult(const AndroidSdkManager::OperationOutput& output) -{ - if (output.success) { - // No assertion was found. Looks like all license are accepted. Go Ahead. - runPendingCommand(); - } else { - // Run license workflow. - licenseWorkflow(); - } -} - void AndroidSdkManagerWidget::addPackageFuture(const QFuture &future) { @@ -493,12 +482,24 @@ void AndroidSdkManagerWidget::packageFutureFinished() m_currentOperation = nullptr; switch (type) { case AndroidSdkManager::LicenseCheck: - onLicenseCheckResult(output); + if (output.success) { + // No assertion was found. Looks like all license are accepted. Go Ahead. + if (m_pendingCommand == AndroidSdkManager::UpdatePackages) + updatePackages(); // License workflow can only start when updating packages. + else if (m_pendingCommand == AndroidSdkManager::UpdateInstalled) + updateInstalled(); + } else { + // Run license workflow. + licenseWorkflow(); + } break; case AndroidSdkManager::LicenseWorkflow: m_sdkLicenseButtonBox->hide(); m_sdkLicenseLabel->hide(); - runPendingCommand(); + if (m_pendingCommand == AndroidSdkManager::UpdatePackages) + updatePackages(); // License workflow can only start when updating packages. + else if (m_pendingCommand == AndroidSdkManager::UpdateInstalled) + updateInstalled(); break; case AndroidSdkManager::UpdateInstalled: case AndroidSdkManager::UpdatePackages: @@ -542,16 +543,6 @@ void AndroidSdkManagerWidget::switchView(AndroidSdkManagerWidget::View view) m_viewStack->setCurrentWidget(m_currentView == PackageListing ? m_packagesStack : m_outputStack); } -void AndroidSdkManagerWidget::runPendingCommand() -{ - if (m_pendingCommand == AndroidSdkManager::UpdatePackages) - updatePackages(); // License workflow can only start when updating packages. - else if (m_pendingCommand == AndroidSdkManager::UpdateInstalled) - updateInstalled(); - else - QTC_ASSERT(false, qCDebug(androidSdkMgrUiLog) << "Unexpected state: No pending command."); -} - void AndroidSdkManagerWidget::onSdkManagerOptions() { OptionsDialog dlg(m_sdkManager, androidConfig().sdkManagerToolArgs(), this); diff --git a/src/plugins/android/androidsdkmanagerwidget.h b/src/plugins/android/androidsdkmanagerwidget.h index e1d27a7611e..71b5a284cb7 100644 --- a/src/plugins/android/androidsdkmanagerwidget.h +++ b/src/plugins/android/androidsdkmanagerwidget.h @@ -78,7 +78,6 @@ private: void onUpdateInstalled(); void onCancel(); void onOperationResult(int index); - void onLicenseCheckResult(const AndroidSdkManager::OperationOutput &output); void onSdkManagerOptions(); void addPackageFuture(const QFuture &future); void licenseCheck(); @@ -89,7 +88,6 @@ private: void packageFutureFinished(); void cancelPendingOperations(); void switchView(View view); - void runPendingCommand(); AndroidSdkManager::CommandType m_pendingCommand = AndroidSdkManager::None; View m_currentView = PackageListing;