diff --git a/java/java-impl/src/com/intellij/refactoring/introduceVariable/IntroduceVariableBase.java b/java/java-impl/src/com/intellij/refactoring/introduceVariable/IntroduceVariableBase.java index 2801ef9574c3..bbed1f676aa0 100644 --- a/java/java-impl/src/com/intellij/refactoring/introduceVariable/IntroduceVariableBase.java +++ b/java/java-impl/src/com/intellij/refactoring/introduceVariable/IntroduceVariableBase.java @@ -480,8 +480,9 @@ public abstract class IntroduceVariableBase extends IntroduceHandlerBase impleme final VariableInplaceRenamer renamer = new VariableInplaceRenamer(elementToRename, editor){ @Override protected void addAdditionalVariables(TemplateBuilderImpl builder) { - builder.replaceElement(elementToRename.getTypeElement(), "Variable_Type", ReassignVariableUtil - .createExpression(typeSelectorManager), false, true); + final PsiTypeElement typeElement = elementToRename.getTypeElement(); + builder.replaceElement(typeElement, "Variable_Type", ReassignVariableUtil + .createExpression(typeSelectorManager, typeElement.getText()), false, true); } }; renamer.setAdvertisementText( diff --git a/java/java-impl/src/com/intellij/refactoring/introduceVariable/ReassignVariableUtil.java b/java/java-impl/src/com/intellij/refactoring/introduceVariable/ReassignVariableUtil.java index 2eec696a185d..e0d2aa29f2e7 100644 --- a/java/java-impl/src/com/intellij/refactoring/introduceVariable/ReassignVariableUtil.java +++ b/java/java-impl/src/com/intellij/refactoring/introduceVariable/ReassignVariableUtil.java @@ -150,24 +150,24 @@ public class ReassignVariableUtil { } } - static Expression createExpression(final TypeSelectorManagerImpl typeSelectorManager) { + static Expression createExpression(final TypeSelectorManagerImpl typeSelectorManager, final String defaultText) { final PsiType[] types = typeSelectorManager.getTypesForAll(); return new Expression() { @Override public com.intellij.codeInsight.template.Result calculateResult(ExpressionContext context) { - return new TextResult(typeSelectorManager.getDefaultType().getPresentableText()); + return new TextResult(defaultText); } @Override public com.intellij.codeInsight.template.Result calculateQuickResult(ExpressionContext context) { - return new TextResult(typeSelectorManager.getDefaultType().getPresentableText()); + return new TextResult(defaultText); } @Override public LookupElement[] calculateLookupItems(ExpressionContext context) { LookupElement[] result = new LookupElement[types.length]; for (int i = 0, typesLength = types.length; i < typesLength; i++) { - result[i] = LookupElementBuilder.create(types[i].getPresentableText()); + result[i] = LookupElementBuilder.create(types[i], types[i].getPresentableText()); } return result; }