From 52009270a2c38ab73f77196d423cdaca8d00993a Mon Sep 17 00:00:00 2001 From: anna Date: Thu, 18 Nov 2010 15:45:58 +0300 Subject: [PATCH] introduce: suggest boxed type if applicable (IDEA-24049) --- .../refactoring/ui/TypeSelectorManagerImpl.java | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/java/java-impl/src/com/intellij/refactoring/ui/TypeSelectorManagerImpl.java b/java/java-impl/src/com/intellij/refactoring/ui/TypeSelectorManagerImpl.java index 8137af5677ad..8b6356ca7556 100644 --- a/java/java-impl/src/com/intellij/refactoring/ui/TypeSelectorManagerImpl.java +++ b/java/java-impl/src/com/intellij/refactoring/ui/TypeSelectorManagerImpl.java @@ -244,20 +244,29 @@ public class TypeSelectorManagerImpl implements TypeSelectorManager { visitor.visitType(psiType); } + final PsiType defaultType = getDefaultType(); for (int index = 0; index < result.size(); index++) { PsiType psiType = result.get(index); - if (psiType.equals(getDefaultType())) { + if (psiType.equals(defaultType)) { result.remove(index); break; } } - final PsiPrimitiveType unboxedType = PsiPrimitiveType.getUnboxedType(getDefaultType()); + final PsiPrimitiveType unboxedType = PsiPrimitiveType.getUnboxedType(defaultType); if (unboxedType != null) { result.remove(unboxedType); result.add(0, unboxedType); } - result.add(0, getDefaultType()); + + if (defaultType instanceof PsiPrimitiveType && myMainOccurence != null) { + final PsiClassType boxedType = ((PsiPrimitiveType)defaultType).getBoxedType(myMainOccurence); + if (boxedType != null) { + result.remove(boxedType); + result.add(0, boxedType); + } + } + result.add(0, defaultType); return result; }