diff options
-rw-r--r-- | sdkmanager/libs/sdkuilib/src/com/android/sdkuilib/internal/widgets/AvdStartDialog.java | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/sdkmanager/libs/sdkuilib/src/com/android/sdkuilib/internal/widgets/AvdStartDialog.java b/sdkmanager/libs/sdkuilib/src/com/android/sdkuilib/internal/widgets/AvdStartDialog.java index 75ec1c9..f444c52 100644 --- a/sdkmanager/libs/sdkuilib/src/com/android/sdkuilib/internal/widgets/AvdStartDialog.java +++ b/sdkmanager/libs/sdkuilib/src/com/android/sdkuilib/internal/widgets/AvdStartDialog.java @@ -34,6 +34,7 @@ import org.eclipse.swt.layout.GridData; import org.eclipse.swt.layout.GridLayout; import org.eclipse.swt.widgets.Button; import org.eclipse.swt.widgets.Composite; +import org.eclipse.swt.widgets.Control; import org.eclipse.swt.widgets.Group; import org.eclipse.swt.widgets.Label; import org.eclipse.swt.widgets.Shell; @@ -202,13 +203,13 @@ final class AvdStartDialog extends GridDialog { } }); - scaleGroup.setEnabled(defaultState); + enableGroup(scaleGroup, defaultState); mScaleButton.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent event) { boolean enabled = mScaleButton.getSelection(); - scaleGroup.setEnabled(enabled); + enableGroup(scaleGroup, enabled); if (enabled) { onScaleChange(); } else { @@ -239,6 +240,14 @@ final class AvdStartDialog extends GridDialog { } } + /** On Windows we need to manually enable/disable the children of a group */ + private void enableGroup(final Group group, boolean enabled) { + group.setEnabled(enabled); + for (Control c : group.getChildren()) { + c.setEnabled(enabled); + } + } + @Override protected void configureShell(Shell newShell) { super.configureShell(newShell); |