diff --git a/java/idea-ui/src/com/intellij/ide/util/projectWizard/ProjectJdkListRenderer.java b/java/idea-ui/src/com/intellij/ide/util/projectWizard/ProjectJdkListRenderer.java index cffad248b6bf..20468c311971 100644 --- a/java/idea-ui/src/com/intellij/ide/util/projectWizard/ProjectJdkListRenderer.java +++ b/java/idea-ui/src/com/intellij/ide/util/projectWizard/ProjectJdkListRenderer.java @@ -29,7 +29,7 @@ import javax.swing.*; public class ProjectJdkListRenderer extends ColoredListCellRenderer { protected void customizeCellRenderer(JList list, Object value, int index, boolean selected, boolean hasFocus) { if (value == null || value instanceof Sdk) { - OrderEntryCellAppearanceUtils.forJdk((Sdk)value, false, selected).customize(this); + OrderEntryCellAppearanceUtils.forJdk((Sdk)value, false, selected, index != -1).customize(this); } else { final String str = value.toString(); diff --git a/java/idea-ui/src/com/intellij/openapi/roots/ui/configuration/JdkComboBox.java b/java/idea-ui/src/com/intellij/openapi/roots/ui/configuration/JdkComboBox.java index 9737f780ab29..4526bc1b0fa0 100644 --- a/java/idea-ui/src/com/intellij/openapi/roots/ui/configuration/JdkComboBox.java +++ b/java/idea-ui/src/com/intellij/openapi/roots/ui/configuration/JdkComboBox.java @@ -24,6 +24,7 @@ import com.intellij.openapi.project.ProjectBundle; import com.intellij.openapi.projectRoots.Sdk; import com.intellij.openapi.roots.ui.configuration.projectRoot.JdkListConfigurable; import com.intellij.openapi.roots.ui.configuration.projectRoot.ProjectSdksModel; +import com.intellij.openapi.ui.ComboBoxWithWidePopup; import com.intellij.openapi.ui.popup.JBPopupFactory; import com.intellij.openapi.util.Computable; import com.intellij.openapi.util.Condition; @@ -44,7 +45,7 @@ import java.util.Comparator; * @author Eugene Zhuravlev * Date: May 18, 2005 */ -class JdkComboBox extends JComboBox{ +class JdkComboBox extends ComboBoxWithWidePopup { private final JButton myEditButton = new JButton(ApplicationBundle.message("button.edit")); public JdkComboBox(final ProjectSdksModel jdksModel) { diff --git a/platform/lang-api/src/com/intellij/openapi/roots/ui/util/OrderEntryCellAppearanceUtils.java b/platform/lang-api/src/com/intellij/openapi/roots/ui/util/OrderEntryCellAppearanceUtils.java index 81febd8d4b1c..a59c95fe9b36 100644 --- a/platform/lang-api/src/com/intellij/openapi/roots/ui/util/OrderEntryCellAppearanceUtils.java +++ b/platform/lang-api/src/com/intellij/openapi/roots/ui/util/OrderEntryCellAppearanceUtils.java @@ -100,7 +100,7 @@ public class OrderEntryCellAppearanceUtils { return testSource ? Icons.TEST_SOURCE_FOLDER : Icons.SOURCE_FOLDERS_ICON; } - public static CellAppearance forJdk(Sdk jdk, boolean isInComboBox, final boolean selected) { + public static CellAppearance forJdk(Sdk jdk, boolean isInComboBox, final boolean selected, final boolean showVersion) { if (jdk == null) { return SimpleTextCellAppearance.invalid(NO_JDK, CellAppearanceUtils.INVALID_ICON); } @@ -112,14 +112,20 @@ public class OrderEntryCellAppearanceUtils { homeDirectory != null && homeDirectory.isValid() ? CellAppearanceUtils.createSimpleCellAttributes(selected) : SimpleTextAttributes.ERROR_ATTRIBUTES; CompositeAppearance.DequeEnd ending = appearance.getEnding(); ending.addText(name, attributes); - String versionString = jdk.getVersionString(); - if (versionString != null && !versionString.equals(name)) { - SimpleTextAttributes textAttributes = isInComboBox ? SimpleTextAttributes.SYNTHETIC_ATTRIBUTES : SimpleTextAttributes.GRAY_ATTRIBUTES; - ending.addComment(versionString, textAttributes); + if (showVersion) { + String versionString = jdk.getVersionString(); + if (versionString != null && !versionString.equals(name)) { + SimpleTextAttributes textAttributes = isInComboBox ? SimpleTextAttributes.SYNTHETIC_ATTRIBUTES : SimpleTextAttributes.GRAY_ATTRIBUTES; + ending.addComment(versionString, textAttributes); + } } return ending.getAppearance(); } + public static CellAppearance forJdk(Sdk jdk, boolean isInComboBox, final boolean selected) { + return forJdk(jdk, isInComboBox, selected, true); + } + public static SimpleTextCellAppearance forSourceFolder(SourceFolder folder) { return formatRelativePath(folder, Icons.FOLDER_ICON); }