From 5f566e509625045c0052286af69d4e46d300f801 Mon Sep 17 00:00:00 2001 From: Joe Baker-Malone Date: Tue, 15 Mar 2022 17:30:11 -0700 Subject: Fix several problems with first run wizard - The system image checkbox was uncheckable, since the requested image was unavailable. - There was an infinite refresh loop on the jdk setup step. - The "Available disk space" label wasn't shown. - The space used label wasn't updated when the selection was modified. Fixes: 216490728 Test: There aren't any existing tests for this code, so not adding them. Change-Id: I2cf8826076008204a1fc3d1205c33be29cdf833e --- .../tools/idea/welcome/install/AndroidVirtualDevice.kt | 13 ++++++++++--- .../tools/idea/welcome/wizard/deprecated/JdkSetupStep.java | 4 +++- .../idea/welcome/wizard/deprecated/SdkComponentsStep.java | 3 ++- 3 files changed, 15 insertions(+), 5 deletions(-) (limited to 'android') diff --git a/android/src/com/android/tools/idea/welcome/install/AndroidVirtualDevice.kt b/android/src/com/android/tools/idea/welcome/install/AndroidVirtualDevice.kt index a733cfb24ca..68fbad6a562 100755 --- a/android/src/com/android/tools/idea/welcome/install/AndroidVirtualDevice.kt +++ b/android/src/com/android/tools/idea/welcome/install/AndroidVirtualDevice.kt @@ -63,6 +63,8 @@ class AndroidVirtualDevice constructor(remotePackages: Map SdkConstants.ABI_ARM64_V8A + (myLatestVersion?.compareTo(MAX_X86_API_LEVEL, null) ?: -1) > 0 -> SdkConstants.ABI_INTEL_ATOM64 + else -> SdkConstants.ABI_INTEL_ATOM + } ) + } override val requiredSdkPackages: Collection get() { diff --git a/android/src/com/android/tools/idea/welcome/wizard/deprecated/JdkSetupStep.java b/android/src/com/android/tools/idea/welcome/wizard/deprecated/JdkSetupStep.java index b27b277a18e..7053c03b1c2 100644 --- a/android/src/com/android/tools/idea/welcome/wizard/deprecated/JdkSetupStep.java +++ b/android/src/com/android/tools/idea/welcome/wizard/deprecated/JdkSetupStep.java @@ -140,7 +140,9 @@ public class JdkSetupStep extends FirstRunWizardStep { private Path validateJdkPath(@NotNull Path file) { Path possiblePath = IdeSdks.getInstance().validateJdkPath(file); if (possiblePath != null) { - setJdkLocationComboBox(possiblePath); + if (!possiblePath.equals(file)) { + setJdkLocationComboBox(possiblePath); + } return possiblePath; } return null; diff --git a/android/src/com/android/tools/idea/welcome/wizard/deprecated/SdkComponentsStep.java b/android/src/com/android/tools/idea/welcome/wizard/deprecated/SdkComponentsStep.java index b79f23ca086..d0de82d80e0 100755 --- a/android/src/com/android/tools/idea/welcome/wizard/deprecated/SdkComponentsStep.java +++ b/android/src/com/android/tools/idea/welcome/wizard/deprecated/SdkComponentsStep.java @@ -201,7 +201,7 @@ public class SdkComponentsStep extends FirstRunWizardStep implements Disposable public void deriveValues(Set modified) { super.deriveValues(modified); String path = myState.get(mySdkDownloadPathKey); - myAvailableSpace.setText(getDiskSpace(path)); + myAvailableSpace.setText("Available disk space: " + getDiskSpace(path)); long selected = getComponentsSize(); myNeededSpace.setText(String.format("Total download size: %s", WelcomeUiUtils.getSizeLabel(selected))); } @@ -297,6 +297,7 @@ public class SdkComponentsStep extends FirstRunWizardStep implements Disposable // accessibility, so we need to call "setValueAt" manually. myTableModel.setValueAt(myCheckBox.isSelected(), myCheckBox.getRow(), 0); } + invokeUpdate(null); }); } -- cgit v1.2.3