diff --git a/java/java-impl/src/com/intellij/refactoring/introduceParameter/InplaceIntroduceParameterPopup.java b/java/java-impl/src/com/intellij/refactoring/introduceParameter/InplaceIntroduceParameterPopup.java index 4aa71d3722b4..4611ac51912a 100644 --- a/java/java-impl/src/com/intellij/refactoring/introduceParameter/InplaceIntroduceParameterPopup.java +++ b/java/java-impl/src/com/intellij/refactoring/introduceParameter/InplaceIntroduceParameterPopup.java @@ -251,7 +251,7 @@ class InplaceIntroduceParameterPopup extends IntroduceParameterSettingsUI { processor.setPrepareSuccessfulSwingThreadCallback(new Runnable() { @Override public void run() { - conflictsFound[0] = false; + conflictsFound[0] = processor.hasConflicts(); } }); processor.run(); diff --git a/java/java-impl/src/com/intellij/refactoring/introduceParameter/IntroduceParameterProcessor.java b/java/java-impl/src/com/intellij/refactoring/introduceParameter/IntroduceParameterProcessor.java index 607c3dc0e26d..eec99efac200 100644 --- a/java/java-impl/src/com/intellij/refactoring/introduceParameter/IntroduceParameterProcessor.java +++ b/java/java-impl/src/com/intellij/refactoring/introduceParameter/IntroduceParameterProcessor.java @@ -79,6 +79,7 @@ public class IntroduceParameterProcessor extends BaseRefactoringProcessor implem private final TIntArrayList myParametersToRemove; private final PsiManager myManager; private JavaExpressionWrapper myInitializerWrapper; + private boolean myHasConflicts; /** * if expressionToSearch is null, search for localVariable @@ -199,6 +200,10 @@ public class IntroduceParameterProcessor extends BaseRefactoringProcessor implem return occurenceManager.getOccurences(); } + public boolean hasConflicts() { + return myHasConflicts; + } + private static class ReferencedElementsCollector extends JavaRecursiveElementWalkingVisitor { private final Set myResult = new HashSet(); @@ -250,6 +255,7 @@ public class IntroduceParameterProcessor extends BaseRefactoringProcessor implem processor.findConflicts(this, refUsages.get(), conflicts); } + myHasConflicts = !conflicts.isEmpty(); return showConflicts(conflicts, usagesIn); }